eclipejsp与java跳转_springboot跳转jsp页面

springboot支持jsp页面跳转

官方不推荐jsp的支持(jar包不支持jsp,jsp需要运行在servletContext中,war包需要运行在server服务器中如tomcat)官方推荐使用thymeleaf,freemarker等模版引擎

1.创建maven project项目

4.0.0

com.woms.www

springboot

0.0.1-SNAPSHOT

jar

org.springframework.boot

spring-boot-starter-parent

1.3.5.RELEASE

org.springframework.boot

spring-boot-starter-web

org.springframework.boot

spring-boot-starter-tomcat

provided

org.apache.tomcat.embed

tomcat-embed-jasper

provided

javax.servlet

jstl

org.apache.maven.plugins

maven-compiler-plugin

1.8

1.8

utf-8

org.springframework.boot

spring-boot-maven-plugin

这里要注意的主要是引入tomcat支持和jstl标签库

2.application.properties配置文件

#springmvc

spring.mvc.view.prefix:/WEB-INF/jsp/

spring.mvc.view.suffix:.jsp

3.创建启动类和controller测试

packagecom.woms;importorg.springframework.boot.SpringApplication;importorg.springframework.boot.autoconfigure.SpringBootApplication;//该@SpringBootApplication注解等价于以默认属性使用@Configuration,@EnableAutoConfiguration和@ComponentScan。

@SpringBootApplicationpublic classStringbootApplication {public static voidmain(String[] args) {//TODO Auto-generated method stub

SpringApplication.run(StringbootApplication.class, args);

}

}

packagecom.woms.controller;importorg.springframework.stereotype.Controller;importorg.springframework.ui.Model;importorg.springframework.web.bind.annotation.RequestMapping;importorg.springframework.web.bind.annotation.RestController;//@RestController

@Controller

@RequestMapping("/login")public classUserController {//@RestController相当于@Controller+@ResponseBody(每一个方法上默认返回的是json串)@RequestMapping("/initLogin")publicString initLogin(Model model){

model.addAttribute("model", "model:你被支持吗?");return "hello";

}

@RequestMapping("/")publicString 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.打包插件

org.springframework.boot

spring-boot-maven-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修改启动入口

packagecom.woms;importorg.springframework.boot.autoconfigure.SpringBootApplication;importorg.springframework.boot.builder.SpringApplicationBuilder;importorg.springframework.boot.context.web.SpringBootServletInitializer;//该@SpringBootApplication注解等价于以默认属性使用@Configuration,@EnableAutoConfiguration和@ComponentScan。

@SpringBootApplicationpublic class MyApplication extendsSpringBootServletInitializer {

@OverrideprotectedSpringApplicationBuilder configure(SpringApplicationBuilder builder) {//TODO Auto-generated method stub

return builder.sources(MyApplication.class);

}

}

2.2修改pom.xml文件

org.springframework.boot

spring-boot-starter-web

org.springframework.boot

spring-boot-starter-tomcat

将内嵌的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入口

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值