当前位置:七道奇文章资讯编程技术Java编程
日期:2011-03-22 16:14:00  来源:本站整理

MVC框架的困惑[Java编程]

赞助商链接



  本文“MVC框架的困惑[Java编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:

目前许很多多的初学者和程序员,都在趋之若鹜地学习Web开辟的宝典级框架:Struts2,Spring,Hibernate.仿佛这些框架成为了一个人能否精通Java,能否会写J2EE程序的唯一事实尺度和找工作的必备底子.

但是,假如在面试的时刻问这些程序员,你们为什么要学习这些框架?这些框架的本质毕竟是什么?仿佛很少很少有人可以给我非常称心的答复.因为他们都在为了学习而学习,为了工作而学习,而不是在真正去深化理解一个框架.其实全部的人都应当考虑这样的问题:为什么要学习框架?框架到底给我带来了什么?接下来,我们以登录作为一个最简单的例子,来看看差别的年代,我们是怎么写Web程序的.

在很多年前,我们这么写程序的

很多年前,那是一个贫苦的年代,假如我们要利用Java在网页上做一些动态的交互功效.很多人会奉告你一个技术,叫做JSP.在我还对Java非常困惑的时刻,就有人奉告我,JSP是个好东西,它可以在HTML代码里面写Java代码来完成逻辑.

Html代码

<%
     String name = request.getParameter("name");
     String password = request.getParameter("password");

     UserHandler userHandler = new UserHandler();
     if(userHandler.authenticate(name, password)) {
%>
<p>恭喜你,登录成功</p>
<%
      } else {
%>
<p>对不起,登录失利</p>
<%
      }
%>

作为一张JSP,它可以接纳从别的JSP发送过来的登录恳求,并举行处理.这样,我们不需求任何额外的配置文件,也不需求任何框架的帮忙,就可以完成逻辑.

后来,我们放弃了在页面上写逻辑

后来,程序写得越来越多,我们发现,这种在HTML代码中编写Java代码来完成逻辑的方法存在着不少问题:

1.Java代码由于稠浊在一个HTML环境中而显得混乱不堪,可读性非常差.一个JSP文件有时刻会变成几十K,乃至上百K.要找一段逻辑,常常无法定位.

2.编写代码时非常困惑,不知道代码到底应当写在那边,也不知作别人是不是已经曾经实现过近似的功效,到那边去引用.

3.忽然之间,某个需求发生了改变.于是,每个人蒙头开始全程替换,还要当心翼翼的,恐怕把别人的逻辑改了.

4.逻辑处理程序需求自己来保护生命周期,关于近似数据库事件、日记等众多模块无法统一支持.

在这个时刻,假若有一个产品,它可以将页面上的那些Java代码抽取出来,让页面上尽大概少呈现Java代码,该有多好.于是很多人开始利用servlet来处理那些业务逻辑.

Java代码

public class LoginServlet extends HttpServlet {

    /* (non-Javadoc)
     * @see javax.servlet.http.HttpServlet#doPost(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse)
     */
    @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        String message = null;
        RequestDispatcher dispatcher = req.getRequestDispatcher("/result.jsp");
        String name = req.getParameter("name");
        String password = req.getParameter("password");
        
        UserHandler userHandler = new UserHandler();
        if(userHandler.authenticate(name, password)) {
            message = "恭喜你,登录成功";
        } else {
            message = "对不起,登录失利";
        }
        
        req.setAttribute("message", message);
        dispatcher.forward(req, resp);
    }
}


  以上是“MVC框架的困惑[Java编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:

  • 关于Struts和Spring两种MVC框架的比较
  • MVC框架的困惑
  • 理解PHP中的MVC框架编程
  • 本文地址: 与您的QQ/BBS好友分享!
    • 好的评价 如果您觉得此文章好,就请您
        0%(0)
    • 差的评价 如果您觉得此文章差,就请您
        0%(0)

    文章评论评论内容只代表网友观点,与本站立场无关!

       评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论
    Copyright © 2020-2022 www.xiamiku.com. All Rights Reserved .