最近几天开始写自己的第一个web项目,虽然是模仿着黑马的案例写,不过还是总结了很多,最近几个月学到的东西总算可以在实战项目中用得上了,下面就分享一下自己做这个项目时候的过程与经验。
首先声明一下,本人还是很弱的水平。正在努力的摸索以后的学习路径,还没有完整的接触过设计模式,以及更加深入的东西,写这个项目就是为了逼自己一把,所以里面会有很多问题,还希望各位大佬多多发言,帮我纠正一下里面的各种弱智问题。
首先声明一下,本人还是很弱的水平。正在努力的摸索以后的学习路径,还没有完整的接触过设计模式,以及更加深入的东西,写这个项目就是为了逼自己一把,所以里面会有很多问题,还希望各位大佬多多发言,帮我纠正一下里面的各种弱智问题。
先谈一下设计模式,这个项目采用的是MVC设计模式,目前的主流Web框架大多也是基于MVC设计模式所编写的。在此先科普一下Java MVC设计模式。
所谓MVC,即Model-View-Controller。
(1)Model层:Model指模型部分,一般在应用中Model层包括业务处理层和数据访问层。数据访问层主要是对数据库的一些操作的封装。业务处理层应用JavaBean构建, JavaBean主要是用作将从View层获取的数据和数据库的数据进行桥接。除却JavaBean以外,若想构建分布式应用系统,可以应用EJB组件进行业务逻辑层的构建。
(2)Controller层:Controller指控制部分,一般是对View层提交的请求为其设置对应的Servlet进行特定功能的处理,这里的进行特定功能的处理一般是编写在Model中的业务处理层中的。Controller一般只是在Web应用中充当一个中介者的作用。
(3)View层:View指视图部分,这一部分的内容是展示给用户实际进行交互的,通常使用JSP和HTML进行构建
综上来说,一个小型完整的基于MVC设计模式的Web应用程序的处理流程应该如下:

由上面的图中我们可以看出,用户在客户端(Web应用的客户端即为浏览器)中发出请求的时候,请求首先由View层的JSP/HTML将HTTP请求传给控制器中对应的Servlet,然后由Servlet负责调用Model层中的业务逻辑处理部分进行要求的处理,处理期间如果设计数据库的操作,则与数据库进行操作,最后全部操作结束之后,由业务逻辑层将结果发给控制层,控制层以HTTP响应的形式将结果发送回客户端。
先说一下JavaWeb技术的 MVC设计思路,首先是View层的编写,View层主要是由jsp、HTML编写而成;然后是Controller层的编写,Controller层主要编写接受View层请求的Servlet。接下来是Model层的编写,Model层在具体的编写中包括dao层和bean层还有service层,bean层中编写数据模型类,dao层负责与数据库进行交互,service层负责编写具体的业务逻辑。
关于设计模式,就先说这么多,以后会跟着项目进一步说明。