一般来说,我们对Java web的理解为,我的前台通过Ajax发出一个请求(requset)数据到Servlet,然后在Servlet进行一系列的处理之后传入到DAO层,与数据库内的数据进行匹配等一系列操作,然后对传来的数据返回一个响应(response)到Servlet然后在通过Ajax获取相应的结果。
这个时候,是不是有个疑问,Servlet的作用只是为了接受请求和返回响应的请求,那么在书写的时候,把大堆的业务逻辑写在Servlet中,这就显得特别的繁琐,而且代码的可读性较差,所以就引入另一个东西叫做Service(服务),这个时候,我们我们就把写在Servlet中处理的业务逻辑的代码写到service中,使Servlet只是接收和响应请求的一个东西。那么具体该怎么做呢?
1、dao方法中先去定义一个接口(书写所有的dao方法),这样是为了使代码更加清晰,逻辑层次更加明了,代码的可读性也大大提高。
2、Servlet只负责接受请求和返回响应
3、Service把业务逻辑都放到service中去实现
4、Service层的书写规范:先定义一个接口,然后去实现这个接口的实现类
5、书写步骤:
(1)、定义接口,在接口中书写该接口中提供的方法
(2)、实现该接口的实现类,alt +enter(接口名上面)提示声明实现类
(3)、类名声明为接口名+impl 说明是DAO方法的实现类
包名 会放在DAO下面的一个impl中

具体代码示例奉上:
首先大概看一下目录结构:

UserDAO:

UserDaoimp:

UserServlet:

UserService接口:

UserServiceimpl代码:

分析一套源代码的代码规范和风格并讨论如何改进优化代码
原文:https://www.cnblogs.com/zhuchunxi/p/11668554.html