文章目录
首先分析项目需求
1.你要做一个什么东西?
在做项目的时候,我们常常不知道自己第一步该做什么。问题的原因就在于你不知道自己想要做一个什么东西出来。
用户模块
1编写用户模块的数据库表
用户所包含的属性,从而创建对应的表
2编写用户模块的javabean
通常和数据库中的表所对应,就是设计一个用户对象
3编写DAO
也就是对数据库的操作,增删查改
4编写用户service
服务于用户模块,例如用户登录操作、注册操作、以及验证信息
图书模块
1编写图书模块的数据库表
分析图书对象所拥有的属性,构成数据库中的一个元组
2编写图书模块的javabean
通常和数据库中的表所对应,设计成一个java类
3编写图书模块的Dao和测试Dao
设计成操作方法(主要是对数据库的操作),包含增删查改的操作,这个Dao的含义代表着实现数据持久化,将数据保存到数据库当中
一般先设计一个接口(作为规范),再设计其实现类
4编写图书模块的Service和测试Service
Service主要是为了让Servlet程序处理请求时,所进行调用的类
5图书分页
- 需求
在一些页面中,我们常常会看到一些网页中要显示的信息很多,但是一个页面下,全部显示出来,显得很拥挤和不美观,因此需要做分页功能。
2. 实现步骤
- page类,属性需要包括当前页面、条目数、每一页显示的数量等。
- 实现低层DAO层 和 Service层,最后实现web层
购物车模块
1分析购物车功能
- 搜先需要分析购物车模块包含哪些内容以及哪些功能
- 是否需要与数据库进行交流,需要的话,那么就需要设计DAO层(持久层)
本文设计的购物车模块并没有与数据库之间有交互,因此不必设计DAO层和Service层。
本文的技术要点在于利用浏览器的Session对象,来保存购物车里面的内容。
过滤器(Filter)
限制用户的访问
JavaWeb有三大组件,分别为:servlet、listern(监听器)和filter(过滤器)。
过滤器的作用有许多,可以理解为对访问检测权限,如果满足权限,那么接着访问用户指定目标资源,否则执行其他操作。
理解doFilter()方法
8 事务管理
在实际项目中,例如订单生成和订单项这两个任务,其实是一个事务,也就是一个整体。当订单生成的时候,订单项也要生成。要达到这样的目的,那么就需要利用sql中的事务,手动提交事务。
利用difilter()来对所有事务都进行判断,try catch。
小知识点:在处理异常的时候,如果当前位置处理了,那么下一个位置就接收不到该异常。因此,若想要其他位置也能够接收到该异常,就需要将异常抛出去(thorw new RunrimeExcption())
9 ajax请求和i18n国际化
同时还需要用到json对象,常用的对象、数组、map对象都可以转化为json对象。
从我学习和实践的角度来看,该请求可以理解为局部请求,同时局部更新,不需要跳转页面。
i18n国际化指对于不同国家,需要用到不同的语言,那么就需要对页面进行转换。这个技术知道就可以了!!
学习指南
- 首先分析模块的功能,以及是否需要与数据库进行交互
- 编写对象实体
- 如果需要与数据库交互,则创建表,同时编写DAO层实现增删查改的操作。
- 编写Service层,服务于当前模块,实现功能,方便servlet调用
- 与web页面进行交互,编写servlet程序,完成业务功能。