项目所需要的包 |
|||
序号 |
包名 |
描述 |
所属层次 |
1 |
me.tao.domain |
存放系统的JavaBean类(只包含简单的属性以及属性对应的get和set方法,不包含具体的业务处理方法),提供给【数据访问层】、【业务处理层】、【Web层】来使用 |
domain(域模型)层 |
2 |
me.tao.dao |
存放访问数据库的操作接口类 |
数据访问层 |
3 |
me.tao.dao.impl |
存放访问数据库的操作接口的实现类 |
|
4 |
me.tao.service |
存放处理系统业务接口类 |
业务处理层 |
5 |
me.tao.service.impl |
存放处理系统业务接口的实现类 |
|
6 |
me.tao.web.controller |
存放作为系统控制器的Servlet |
Web层(表现层) |
7 |
me.tao.web.UI |
存放为用户提供用户界面的servlet(UI指的是user interface) |
|
8 |
me.tao.web.filter |
存放系统的用到的过滤器(Filter) |
|
9 |
me.tao.web.listener |
存放系统的用到的监听器(Listener) |
|
10 |
me.tao.util |
存放系统的通用工具类,提供给【数据访问层】、【业务处理层】、【Web层】来使用 |
|
11 |
junit.test |
存放系统的测试类 |
|
一个良好的JavaWeb项目架构应该具有以上的11个包,这样显得层次分明,各个层之间的职责也很清晰明了,搭建JavaWeb项目架构时,就按照上面的1~11的序号顺序创建包:domain→dao→dao.impl→service→service.impl→web.controller→web.UI→web.filter→web.listener→util→junit.test,包的层次创建好了,项目的架构也就定下来了,当然,在实际的项目开发中,也不一定是完完全全按照上面说的来创建包的层次结构,而是根据项目的实际情况,可能还需要创建其他的包,这个得根据项目的需要来定了
在src目录(类目录)下面,创建用于保存用户数据的xml文件(DB.xml)
在WEB-INF目录下创建一个pages目录,pages目录存放系统的一些受保护(不允许用户直接通过URL地址访问)的jsp页面,用户要想访问这些受保护的jsp页面,那么只能通过me.tao.web.UI这个包里面的Servlet
分层架构的代码也是按照【域模型层(domain)】→【数据访问层(dao、dao.impl)】→【业务处理层(service、service.impl)】→【表现层(web.controller、web.UI、web.filter、web.listener)】→【工具类(util)】→【测试类(junit.test)】的顺序进行编写的。
相关推荐
介绍Spring MVC框架以及使用套路
目前网上的MVC的教程或者很少,或者套路的泛泛概述,而好的项目源码也不多,初学者不易入手,所以一篇系统的项目开发案例教程就很必要了。微软的原版为英文,这个是中文的,学习MVC的不可不珍惜。
一步步搭建框架,经过15个版本迭代,让你摸清框架的核心套路.
jsp\servlet\jdbc\oracle四者的整合套路,增删查改(CRUD)的具体逻辑业务
Light Security是一个基于jwt的权限控制框架,支持与Spring Boot配合使用,支持Spring MVC与WebFlux;开箱即用,轻量级,代码精简,不到500行代码;功能实用,市面上安全框架常见能力与套路均已具备:支持 RESTful ...
12-唯有套路得人心:谈谈JavaEE的那些模式.mp3 13-特别放送:选择比努力更重要.mp3 14-别有洞天:从后端到前端.mp3 15-重剑无锋,大巧不工: JavaScript面向对象.mp3 16-百花齐放,百家争鸣:前端MVC框架.mp3 17-不...
经过近多年的开发经验和技术积累,苹果CMS程序已逐步走向成熟,在易用性和功能上已经成为同行中的佼佼者。 程序体积小->优化程序代码,运行速度快->高效的缓存处理,只要...两套苹果CMS付费模板免费分享没有任何套路。
最近准备接手改进一个别人用Codeigniter写的项目,虽然之前也有用过CI,但是是完全按着自己的意思写的,没按CI的一些套路。用在公众的项目,最好还是按框架规范来,所以还是总结一下,免得以后别人再接手的时候...
具有数据绑定,MVW,MVVM,MVC,依赖注入的声明式模板和出色的可测试性都是用纯客户端JavaScript来实现的!AngularJS是一个创建富客户端应用的JavaScriptMVC框架,它组织良好,经过严格测试,多功能,强大并且十分灵活。你...
将这些招式合理地纵组合起来,就形成套路(框架),框架是一种半成品. 8.C++和C定义结构的分别是什么。 C language 的结构仅仅是数据的结合 C plus plus的struct 和 class 其实具备几乎一样的功能,只是默认的访问属性...