spring boot学习三:基于jsp的spring mvc示例
2017-12-03 21:10
423 查看
虽然Spring Boot推荐使用Thymeleaf作为模板引擎,但考虑到依然有老项目使用jsp等技术,所以本章先介绍基于jsp的spring mvc搭建。
1、首先,按照第一章的步骤,搭建一个Spring Boot的项目,区别是Packaging选项,选择War,如下图所示
2、默认生成的项目结构中,是没有webapp目录的,因为我们采用的是jsp技术,所以,得手动添加webapp/WEB-INF/jsp目录,并将相应的jsp文件放入该目录中,如下图所示
3、pom.xml文件中,我们需要手动加上jstl和tomcat-embed-jasper的依赖,其中,jstl是由于jsp页面用到了jstl标签库,tomcat-embed-jasper是使内置的tomcat支持解析jsp,pom文件代码如下所示,spring-boot-starter-tomcat是项目生成时自动加好的,注意此处的scope是provided,目的是解决项目导出的war包如果直接在外部Tomcat的部署报错的问题
4、剩下的就很简单,和传统开发spring mvc一样,编写controller,jsp,controller代码如下所示
jsp代码如下所示
6、启动项目,intellij中Run------->Edit Configuration,点击+号,选择maven
添加运行名称,执行这个命令的项目和命令,这个命令是spring-boot:run,点击OK即可
7、配置完成后,选中刚刚设置的命令,点击运行即可
8、启动完成后效果如下所示
1、首先,按照第一章的步骤,搭建一个Spring Boot的项目,区别是Packaging选项,选择War,如下图所示
2、默认生成的项目结构中,是没有webapp目录的,因为我们采用的是jsp技术,所以,得手动添加webapp/WEB-INF/jsp目录,并将相应的jsp文件放入该目录中,如下图所示
3、pom.xml文件中,我们需要手动加上jstl和tomcat-embed-jasper的依赖,其中,jstl是由于jsp页面用到了jstl标签库,tomcat-embed-jasper是使内置的tomcat支持解析jsp,pom文件代码如下所示,spring-boot-starter-tomcat是项目生成时自动加好的,注意此处的scope是provided,目的是解决项目导出的war包如果直接在外部Tomcat的部署报错的问题
<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.flagship</groupId> <artifactId>ch3_1</artifactId> <version>0.0.1-SNAPSHOT</version> <packaging>war</packaging> <name>ch3_1</name> <description>Spring mvc based on Spring Boot</description> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>1.5.9.RELEASE</version> <relativePath/> <!-- lookup parent from repository --> </parent> <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> <java.version>1.7</java.version> </properties> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-tomcat</artifactId> <scope>provided</scope> </dependency> <!--jsp页面使用jstl标签--> <dependency> <groupId>javax.servlet</groupId> <artifactId>jstl</artifactId> </dependency> <!--用于编译jsp--> <dependency> <groupId>org.apache.tomcat.embed</groupId> <artifactId>tomcat-embed-jasper</artifactId> <scope>provided</scope> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency> </dependencies> <build> <finalName>ch3_1</finalName> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> </plugins> </build> </project>
4、剩下的就很简单,和传统开发spring mvc一样,编写controller,jsp,controller代码如下所示
package com.flagship.ch3_1.controller; import com.flagship.ch3_1.bean.DataBean; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.servlet.ModelAndView; import java.util.ArrayList; import java.util.List; @Controller public class IndexController { @RequestMapping("/index") public ModelAndView index(){ List<DataBean> dataLst =new ArrayList<DataBean>(); DataBean data1 = new DataBean("员工人数","0.011","70"); DataBean data2 = new DataBean("当天气温","0.031","80"); DataBean data3 = new DataBean("降雨量","0.051","90"); dataLst.add(data1); dataLst.add(data2); dataLst.add(data3); ModelAndView modelAndView = new ModelAndView("/index"); modelAndView.addObject("dataLst", dataLst); return modelAndView; } }
jsp代码如下所示
<!DOCTYPE html> <%@ page contentType="text/html; charset=UTF-8" %> <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%> <html> <head> <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"/> <meta charset="utf-8"/> <title>Spring mvc example</title> <meta name="description" content="platForm Frameset"/> <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0"/> </head> <body> <div> <div> <div></div> <table> <tr> <td>影响因素</td> <td>相关系数</td> <td>样本数目</td> </tr> <c:forEach var="data" items="${dataLst}"> <tr class="text-info"> <td>${data.factor}</td> <td>${data.coefficient}</td> <td>${data.number}</td> </td> </tr> </c:forEach> </table> </div> </div> </body> </html>5、可以在application.properties中设置项目相关运行信息,如下所示,注意,需要指定返回文件类型为jsp,且路径是在/WEB-INF/jsp/下,运行的tomcat端口是8080,context路径是ch3_1
server.port=8080 server.contextPath=/ch3_1 spring.mvc.view.prefix=/WEB-INF/jsp/ spring.mvc.view.suffix=.jsp
6、启动项目,intellij中Run------->Edit Configuration,点击+号,选择maven
添加运行名称,执行这个命令的项目和命令,这个命令是spring-boot:run,点击OK即可
7、配置完成后,选中刚刚设置的命令,点击运行即可
8、启动完成后效果如下所示
相关文章推荐
- 基于Spring Boot和Spring Cloud实现微服务架构学习(六)-Docker应用
- 基于Spring Boot和Spring Cloud实现微服务架构学习(二)-Spring Boot总结
- 廖师兄springboot学习笔记二(增加IDEA单模块jsp和多模块jsp引入)
- 基于Maven的Springboot项目搭建学习笔记
- 基于Spring Boot和Spring Cloud实现微服务架构学习
- 基于Spring Boot和Spring Cloud实现微服务架构学习(一)-Spring框架介绍
- SpringBoot入门之集成JSP的示例代码
- 基于Spring Boot和Spring Cloud实现微服务架构学习(四)-Spring Cloud总结
- 基于Spring Boot和Spring Cloud实现微服务架构学习(二)-Spring Boot总结
- springboot学习笔记【2】spring boot jsp
- 基于Spring Boot和Spring Cloud实现微服务架构学习(二)-Spring Boot总结
- spring boot 学习笔记(二) 构建web支持jsp
- 基于Spring Boot和Spring Cloud实现微服务架构学习(三)-Spring Boot应用
- springboot学习(二)springboot项目整合前端,添加jsp的访问
- 基于Spring Boot和Spring Cloud实现微服务架构学习
- 基于Spring Boot和Spring Cloud实现微服务架构学习(一)-Spring框架介绍
- 基于Spring Boot和Spring Cloud实现微服务架构学习(三)-Spring Boot应用
- Spring MVC 学习笔记(一) 基于spring2.5的纯xml配置
- 基于Spring Boot和Spring Cloud实现微服务架构学习(五)-Docker总结
- Shiro 学习(一)基于SpringBoot的Apache Shiro环境快速搭建与配置