JaveBean+Jsp+Servlet的MVC项目模板

2016-05-15· 4272 次浏览
## MVC介绍 MVC是一种设计模式,是JavaWeb开发中常用的一种解决方案, 所谓模式就是针对一个问题的固定解决方案,或者说是一种固定的套路, 把一个项目分为三层来开发,分别是: * Model(模型层) * View(视图层) * Controller(控制层) M:负责把业务实体数据封装成java对象,方便我们在程序中使用。 V:负责将已有数据展示给用户看,无论什么数据,只负责显示,不涉及流程。 C:负责接收请求,增删改查数据,核心业务运算,控制程序流程。 MVC是一种设计思想,一种理念,它不是一项具体的技术,它可以有许多种实现方式, ## 项目分层情况 我们这个DEMO是一个标准的MVC实现,也是一种很基础的实现,适合开发中小型项目。 下面是我们这个DEMO中的分层情况: Model:使用JavaBean实现,代表实体数据。 View:使用JSP来充当模型层,jsp页面只负责已有数据的显示, 至于流程的控制,数据的处理都与jsp无关。 Controller:使用Servlet实现,所有关于数据增删改查,关于页面走向的问题,都由servlet进行控制。 即,我们的项目是使用JavaBean+Jsp+Servlet实现的MVC项目。 ## 关于DAO 在MVC的基础上,为了更方便的对实体对象进行操作,我们还需要DAO, DAO全称DataAccessObject,意为数据访问对象, DAO是一种设计模式,专门用于处理基本的增删改查, DAO不属于MVC任意一层,MVC是做web的方案,不代表项目中只能有MVC。 当前项目中并存的模式:MVC、DAO、单例、工厂 ## 关于JavaBean 由于不少同学对JavaBean的理解有偏差,这里专门介绍一下: JavaBean其实就是我们常说的实体类,如Student/Book/Hero/Person等, 特殊的地方是,JavaBean是一种模型设计模式,这种模式中规定: * 类中所有属性必须私有 * 必须提供get/set方法 * 必须要有无参构造方法 符合以上描述的实体类就是一个合格的JavaBean。 ## 模型视图 如果我们的模型中有上百个属性,而我们本次jsp页面只想取其中的5项去显示, 正常查询定会白白消耗许多资源,这个时候我们就可以创建一个辅助jsp展示的简化模型, 比如我们有个类Hero中有100项属性,我们再建一个HeroView,其中只有5项属性, 接下来为这个HeroView专门写个查询,这样问题就解决了, HeroView从数据角度讲也可以被称为视图,主要用于查看,因而被称为模型的视图,也可以叫做View,但它其实属于MVC中的模型层,这个和我们MVC中的View完全不是一个概念,注意区分。 ## 项目说明 项目使用MySQL数据库 1.导入SQL脚本,位置是项目下的doc目录下的HERO.sql文件 2.导入项目后第一件事就是选中整个项目修改编码为UTF-8 3.然后修改demo.mvc.util.JDBCUtil类中的jdbc连接属性 4.部署项目,访问index.jsp或/hero/list,(index.jsp会自动跳转到/hero/list) 注意: MVC项目中如果想查询,不要直接访问jsp,而是访问servlet, 让servlet把数据准备好,因为它是控制层,然后转发到jsp中进行显示, jsp页面专门负责各种样式的编写,servlet负责动态数据的流转。 ## 相关链接 作者:夏增明 日期:2015年7月23日18:52:41 网址: [http://baike.xsoftlab.net/view/810.html](http://baike.xsoftlab.net/view/810.html) [http://zhenzhigu.com/read.php?tid=756&fid=6](http://zhenzhigu.com/read.php?tid=756&fid=6) 链接:[http://pan.baidu.com/s/1qXQDDCS](http://pan.baidu.com/s/1qXQDDCS) 密码:se1i