springboot⽀持jsp并传参
springboot本⾝并不⽀持jsp,官⽅建议不使⽤jsp,⽽是将资源模板或静态⽂件放在resource下的static和template的⽂件夹下;
故要使⽤jsp,就需要引⼊⼀些包,使⽤tomcat来⽀持jsp;
1、l
先修改打包⽅式为war包,默认的是jar包
导⼊以下⼏个jar包,
<!-- ⽀持jsp -->
<dependency>
<groupId>at.embed</groupId>
<artifactId>tomcat-embed-jasper</artifactId>
<!-- <scope>provided</scope>-->
</dependency>
<!-- JSTL (JSP standard Tag Library) JSP 标准标签库 -->
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
</dependency>
<dependency>
<groupId>jstl</groupId>
<artifactId>jstl</artifactId>
<version>1.2</version>
</dependency>
有的资料上说还要导⼊⼀个包,但是我没有导⼊这个jar也是成功的,你可以看你情况,若失败就可以导⼊这个jar包
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
<scope>provided</scope>
</dependency>
2、导包完成后,修改你的配置⽂件,我的是yml格式的,
#⽀持jsp
spring:
mvc:
view:
prefix: /WEB-INF/
suffix: .jsp
prefix确定jsp的⽂件路径,你可以改到你的路径下;
suffix 是指定jsp⽂件的后缀;
3、开发你的jsp⽂件,并放到你配置⽂件配置的⽬录下,这是我的⽬录结构,在main⽂件下(java同级⽬录),新建你指定的路径,我的是 webapp---》WEB-INF---》editor.jsp,若上⼀步你的是/WEB-INF/jsp/ ,那这⾥就是 webapp---》WEB-INF---》jsp---》editor.jsp 了。
4、开发你的controller(我⽤controller开发,若你⽤servlet,可以参考其他资料,但是之前的配置是不变的)
@Controller
public class TestController {
@RequestMapping("/test")
public String test(HttpServletRequest request, HttpServletResponse response) {
return "editor";
}
}
这⾥划重点了,记住注解要是@Controller ⽽不是常⽤的@RestController,因为后者会默认返回json数据,RestController = Controller + responseBody
⾄此这样配置完成后,重启你的项⽬就可以了。直接启动application类就可以了。
以下是给jsp页⾯传值,我采⽤的是 Request.setAttribute(name, value);
springboot结构controller在返回的时候返回 字符串就可以了;
若你像使⽤其他⽅式,例如ModelAndView,请参考
这⾥写的很详细了,⼤⽜。。。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论