整合Servlet、Filter、Listener
servlet
1 | //@WebServlet(name = "HelloServlet",urlPatterns = "/helloservlet") |
启动器:
1 |
|
运行可以直接在浏览器访问
Filter
1 | //@WebFilter |
Listener
1 | //@WebListener |
运行后直接在控制台显示HelloListener..init…..
访问静态资源和上传
注意目录名称必须是 static,在 src/main/webapp 目录名称必须要 webapp
html放在static中
1 |
|
1 | //表示该类下的方法的返回值会自动做 json 格式的转换 |
启动访问index.html
上传成功
数据访问
@RestController
默认类中的方法都会以json的格式返回。
自定义Property,配置在application.properties中。
1 | com.hu.title=QQQ |
自定义配置类@Component
1 | public class NeoProperties { |
整合视图层
jsp
在maven项目main文件夹下创建webapp/WEB-INF/jsp,添加user.jsp文件:
1 | <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %> |
IDEA中设置
控制器
1 |
|
application.properties配置文件
1 | spring.mvc.view.prefix=/WEB-INF/jsp/ |
POM.xml
1 |
|
启动器:
1 | // 启动器存放的位置。启动器可以和 controller 位于同一个包下,或者位于 controller 的上一级包中; |
注意:There was an unexpected error (type=Not Found, status=404).
/WEB-INF/jsp/user.jsp问题:
解决方式:
freemarker
application.properties配置,这里基本是默认配置,可以不写也可以运行成功。
1 | spring.freemarker.template-loader-path=classpath:/templates/ |
加入依赖:
1 | <!-- freemarker 依赖 --> |
创建文件:src\main\resources\templates\userhtml.ftl
1 | <html> |
控制器:
1 |
|
Thymeleaf
主要代码如下:
1 | <!-- thymeleaf 依赖 --> |
模板:templates/userthy.html
1 | <html> |
控制器:
1 |
|