Servlet:MVC
MVC框架模式
MVC:model view controller 模型-视图-控制器
M:模型层,javabean,负责业务处理,数据库访问
V:视图层,JSP技术,负责显示数据
C:控制器层,Servlet技术,中间调度
- 接收用户请求
- 调用后台模型层实现业务逻辑和数据加载
- 页面导航,指定一个JSP页面向用户发送响应
实现M层的开发
- 创建工程并导入相应的jar文件
webroot->web-inf->lib直接放到这里就可以了。
- 编写工具类
ConnUtil.java + jdbc.properties
- 编写实体类
- 编写数据访问对象
- 编写业务处理对象
实现V层的开发
reg.jsp页面
<form action="reg.do" method="post">
用户名:<input name="userName" ><br>
密码:<input name="userPass"><br>
地址:<input name="userAddress"><br>
手机:<input name="userPhone"><br>
<input type="submit" value="注册"><br>
</form>
实现C层的开发
在MVC模式中Controller控制器的作用三个:
- 接收用户请求
- 调用业务逻辑
- 页面导航
第一步:完成Servlet的创建和配置
@WebServlet("/reg.do")
public class RegController extends HttpServlet {
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doPost(request, response);
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
}
}
第二步:接收用户发送的请求信息
request.setCharacterEncoding("utf-8"); //设置请求的中文编码
String userName = request.getParameter("userName");
String userPass = request.getParameter("userPass");
String userAddress = request.getParameter("userAddress");
String userPhone = request.getParameter("userPhone");
第三步:调用后台业务类,实现业务处理
Users users = new Users(userName,userPass,userAddress,userPhone);
UsersService usersService = new UsersService();
boolean bool = usersService.save(users);
第四步:页面导航
客户端重定向
response.sendRedirect("index.jsp");
服务器端转发
request.getRequestDispatcher("index.jsp").forward(request, response);
总结
pojo:实体类,包中的类是必须和数据库相对应的;
dao:data access object,数据访问对象层,主要负责处理数据库操作,增删改查等方法;
service:业务逻辑层,负责整个应用程序的相关业务流程,并用代码实现出来;
utils:工具辅助层,一组通用的代码集合;
web:即是前台网页处理的后台代码,负责把从数据库中处理过的数据,通过web层处理之后,显示成html代码的部分