Servlet | Struts2 | Spring MVC |
处理用户提交的数据 |
基于MVC设计模式的Web应用程序 是一个框架 |
是MVC框架 |
导入servlet包,配置web.xml文件 ![]() <?xml version="1.0" encoding="UTF-8"?> <web-app> <servlet> <servlet-name>HelloServlet</servlet-name> <servlet-class>HelloServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>HelloServlet</servlet-name> <url-pattern>/hello</url-pattern> </servlet-mapping> </web-app> |
||
service() xxServlet类继承了HttpServlet类; 也继承了方法service( HttpServletRequest,HttpServletResponse); 在执行doGet()或者doPost()之前, 都会先执行service(); |
||
获取参数 ![]() //获取浏览器提交的request请求中的参数, /即前端form表单中提交的数据 String name = request.getParameter("name"); String password = request.getParameter("password"); |
||
返回响应 | ||
调用流程 | ||
提交数据到Action | ||
显示数据到JSP | ||
视图定位 | ||
接受表单数据 | ||
中文问题 | 中文问题 | 中文问题 |
生命周期 | ||
客户端跳转 ![]() //在Servlet中进行客户端跳转 //浏览器地址变化,即请求路径变化。但还是在同一个session中 response.sendRedirect("xx.jsp/请求路径"); |
客户端跳转 | 客户端跳转 |
客户端跳转传参 | ||
服务端跳转 ![]() //请求路径不变, request.getRequestDispatcher("xx.jsp").forward(request, response); |
||
自启动 | ||
日志输出 | ||
request常见方法 (获取参数)(获取头信息) (服务端传参) setAttribute和getAttribute 可以用来在进行服务端跳转的时候, 在不同的Servlet之间进行数据共享 |
request | |
response用法 | response | |
上传文件 (上传页面upload.html) ![]() //method必须是post的,get不能上传文件 //enctype="multipart/form-data" 表示提交的数据是二进制文件 <form action="uploadPhoto" method="post" enctype="multipart/form-data"> </form> //提供type="file" 的字段进行上传 <input type="file" name="filepath" /> (上传功能开发UploadPhotoServlet) 导入commons-io-1.4.jar、 commons-fileupload-1.2.2.jar; |
上传文件 | 上传文件 |
上传文件最大值 | ||
session | session | |
CRUD (查询、增加、删除、编辑、更新) |
||
JSON(提交数据) | ||
JSON(获取一个对象) | ||
JSON(获取多个对象) | ||
标签(form、iterator、check、 radio、select、多重迭代) |
||
调试 | ||
通配符匹配 | ||
拦截器filter | 拦截器Interceptor | |
表单验证 | ||
xml表单验证 | ||
Action是多实例的 | ||
注解方式 | 注解方式 | |