springboot支持jsp页面
来源:互联网 发布:火烧赤壁的网络意思 编辑:程序博客网 时间:2024/05/14 12:33
springboot支持jsp页面跳转
官方不推荐jsp的支持(jar包不支持jsp,jsp需要运行在servletContext中,war包需要运行在server服务器中如tomcat)官方推荐使用thymeleaf,freemarker等模版引擎
1.创建maven project项目
<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.woms.www</groupId> <artifactId>springboot</artifactId> <version>0.0.1-SNAPSHOT</version> <packaging>jar</packaging> <parent> <groupId> org.springframework.boot</groupId> <artifactId> spring-boot-starter-parent</artifactId> <version>1.3.5.RELEASE</version> </parent> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <!-- tomcat支持 --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-tomcat</artifactId> <scope>provided</scope> </dependency> <dependency> <groupId>org.apache.tomcat.embed</groupId> <artifactId>tomcat-embed-jasper</artifactId> <scope>provided</scope> </dependency> <!-- jsp标签库 --> <dependency> <groupId>javax.servlet</groupId> <artifactId>jstl</artifactId> </dependency> </dependencies> <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <configuration> <source>1.8</source> <target>1.8</target> <encoding>utf-8</encoding> </configuration> </plugin> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> </plugins> </build></project>
这里要注意的主要是引入tomcat支持和jstl标签库
2.application.properties配置文件
#springmvcspring.mvc.view.prefix:/WEB-INF/jsp/spring.mvc.view.suffix:.jsp
3.创建启动类和controller测试
package com.woms;import org.springframework.boot.SpringApplication;import org.springframework.boot.autoconfigure.SpringBootApplication;//该@SpringBootApplication注解等价于以默认属性使用@Configuration,@EnableAutoConfiguration和@ComponentScan。@SpringBootApplicationpublic class StringbootApplication { public static void main(String[] args) { // TODO Auto-generated method stub SpringApplication.run(StringbootApplication.class, args); }}
package com.woms.controller;import org.springframework.stereotype.Controller;import org.springframework.ui.Model;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.RestController;//@RestController@Controller@RequestMapping("/login")public class UserController { // @RestController相当于@Controller+@ResponseBody(每一个方法上默认返回的是json串) @RequestMapping("/initLogin") public String initLogin(Model model){ model.addAttribute("model", "model:你被支持吗?"); return "hello"; } @RequestMapping("/") public String welcome(){ return "index"; }}
参考官方有个sample,地址是:
https://github.com/spring-projects/spring-boot/tree/v1.1.5.RELEASE
里面有个spring-boot\spring-boot-samples\spring-boot-sample-web-jsp自己跑一下。
springboot打包在linux服务器中运行
如果项目是应用服务,可以将项目设置成jar项目,打包成jar包直接运行
如果项目是web服务,将项目设置成war项目,打包成war包在tomcat环境下运行
1.打包插件
<plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId></plugin>
在eclipse可以用maven命令package直接打包,打包成jar包或者war包
jar包可以直接运行:java -jar xxx.jar war包需要放在tomcat下运行
用上面的方式启动springboot的web项目可以像启动应用项目一样通过main方法启动并访问jsp页面(适合开发),但是在linux中要打包成war包放在tomcat中运行
2.打包成war项目在tomcat中运行
2.1修改启动入口
package com.woms;import org.springframework.boot.autoconfigure.SpringBootApplication;import org.springframework.boot.builder.SpringApplicationBuilder;import org.springframework.boot.context.web.SpringBootServletInitializer;//该@SpringBootApplication注解等价于以默认属性使用@Configuration,@EnableAutoConfiguration和@ComponentScan。@SpringBootApplicationpublic class MyApplication extends SpringBootServletInitializer { @Override protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) { // TODO Auto-generated method stub return builder.sources(MyApplication.class); } }
2.2修改pom.xml文件
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> <exclusions> <exclusion> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-tomcat</artifactId> </exclusion> </exclusions></dependency>
将内嵌的tomcat移除
如果是开发阶段的话,没有wen.xml是没法加入到tomcat服务器中的
需要注意一下几点:
1.jar包中的打包方式根据自己的需要进行修改
2.若打包成war包,则需要继承 org.springframework.boot.context.web.SpringBootServletInitializer类,覆盖其config(SpringApplicationBuilder)方法
3.打包成war的话,如果打包之后的文件中没有web.xml文件的话自己可以加进去一个最简单的web.xml(只有根节点的定义,而没有子元素),防止因缺乏web.xml文件而部署失败
总结:
1.web项目用maven创建war项目应用项目用maven创建jar项目
2.打包如果是war项目就打包成war包,放在tomcat下运行,如果是jar项目就打包成jar包 java -jar xxx.jar运行(用打包插件打包)
3.在开发阶段,jar项目可以通过main方法直接运行,war项目也可以通过main方法直接运行,需要修改pom.xml文件和springboot入口
- springboot支持jsp页面
- SpringBoot支持JSP页面跳转(基于Gradle)
- SpringBoot JSP 支持
- springboot返回jsp页面
- springboot访问jsp页面
- springboot访问jsp页面
- SpringBoot学习:添加JSP支持
- SPringBoot 中 使用JSP页面
- springboot(九)添加jsp支持
- springboot 整合web项目支持jsp
- SpringBoot-08对JSP的支持
- springboot 支持jar包运行jsp文件
- springboot发布成jar并支持jsp
- springboot笔记(2)springboot-添加对jsp支持
- SpringBoot项目如何访问jsp页面
- SpringBoot项目如何访问jsp页面
- SpringBoot Web应用返回JSP页面配置
- SpringBoot访问JSP页面的完整代码
- 面向对象的java,一切对象的起源Object
- SpringMVC学习记录(七)--拦截器的使用
- python基础学习(4)—数据类型
- js-浅析this指向
- 最大连续子序列之和
- springboot支持jsp页面
- cnpm不是内部命令的解决方案:配置环境变量
- 第四次小组讨论 (代码规范)
- 大数据环境搭建
- PyQt5学习笔记6_QTableView中嵌入按钮
- Hello World!
- hdu5319 Painter(模拟题)
- 省选专练ZJOI2004书架
- redis的安装及jedis的jar包下载地址