1. 程式人生 > >spring-boot 新增JSP頁面功能

spring-boot 新增JSP頁面功能

一、什麼是Spring-Boot:

隨著Spring 4新版本的釋出,Spring Boot這個新的子專案得到了廣泛的關注,因為不管是Spring 4官方釋出的新聞稿還是針對首席架構師Adrian Colyer的專訪,都對這個子專案所帶來的生產率提升讚譽有加。


Spring Boot充分利用了JavaConfig的配置模式以及“約定優於配置”的理念,能夠極大的簡化基於Spring MVC的Web應用和REST服務開發。


Spring 4倡導微服務的架構,針對這一理念,近來在微博上也有一些有價值的討論,如這裡和這裡。微服務架構倡導將功能拆分到離散的服務中,獨立地進行部署,Spring Boot能夠很方便地將應用打包成獨立可執行的JAR包,因此在開發模式上很契合這一理念。目前,Spring Boot依然是0.5.0的里程碑版本,因此相關的文件尚不完善,本文將會以一個簡單的樣例來介紹基於這個專案的開發過程。

二、新增Spring-Boot 支援jsp 和rest的POM

<?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>

<parent>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-samples</artifactId>

<version>1.2.0.BUILD-SNAPSHOT</version>

</parent>

<artifactId>Activity</artifactId>

<packaging>war</packaging>

<name>Activity</name>

<description>Activity</description>

<url>http://projects.spring.io/spring-boot/</url>

<organization>

<name>Pivotal Software, Inc.</name>

<url>http://www.spring.io</url>

</organization>

<properties>

<start-class>com.activity.SampleWebJspApplication</start-class>

</properties>

<dependencies>

<dependency>

  <groupId>dom4j</groupId>

  <artifactId>dom4j</artifactId>

  <version>1.6.1</version>

</dependency>

<dependency>

<groupId>net.sf.json-lib</groupId>

<artifactId>json-lib</artifactId>

<version>2.4</version>

<classifier>jdk15</classifier>

</dependency>

<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>

<dependency>

<groupId>org.apache.tomcat.embed</groupId>

<artifactId>tomcat-embed-jasper</artifactId>

<scope>provided</scope>

</dependency>

<dependency>

<groupId>javax.servlet</groupId>

<artifactId>jstl</artifactId>

</dependency>

<dependency>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-starter-test</artifactId>

<scope>test</scope>

</dependency>

</dependencies>

<build>

<plugins>

<plugin>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-maven-plugin</artifactId>

</plugin>

<plugin>

<groupId>org.apache.maven.plugins</groupId>

<artifactId>maven-surefire-plugin</artifactId>

<configuration>

<useSystemClassLoader>false</useSystemClassLoader>

</configuration>

</plugin>

</plugins>

</build>

</project>

三、新建Maven專案--webapp(略過)

四、新增配置Main類

package com.activity;

import org.springframework.boot.SpringApplication;

import org.springframework.boot.autoconfigure.EnableAutoConfiguration;

import org.springframework.boot.builder.SpringApplicationBuilder;

import org.springframework.boot.context.web.SpringBootServletInitializer;

import org.springframework.context.annotation.ComponentScan;

import org.springframework.context.annotation.Configuration;

@Configuration

@EnableAutoConfiguration    //本人表示,一定要有這個標籤(不然,你會吃虧的)

@ComponentScan

public class SampleWebJspApplication extends SpringBootServletInitializer {

@Override

protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {

return application.sources(SampleWebJspApplication.class);

}

public static void main(String[] args) throws Exception {

SpringApplication.run(SampleWebJspApplication.class, args);

}

}

五,加入application.properties到src/main/resources   (這裡映射了jsp路徑和定義一些訊息)

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

spring.view.suffix: .jsp

application.message: Hello Phil

這樣基本就可以了。接下來測試RestControl和Control  

@Resetcontrol 用於返回物件,會自動格式化為JSON

@Control會返回jsp頁面

六,定義返回JSON資料

package com.activity.action;

import java.util.Date;

import org.springframework.web.bind.annotation.RequestMapping;

import org.springframework.web.bind.annotation.RequestMethod;

import org.springframework.web.bind.annotation.RequestParam;

import org.springframework.web.bind.annotation.RestController;

import com.activity.model.bean;

import com.activity.model.tasker;

@RestController

public class demo {

@RequestMapping(value="/greeting")

public tasker test(@RequestParam String id) {

tasker e = new tasker();

e.setTaskerId(id);

e.setBegin_time(new Date());

e.setEnd_time(new Date());

e.setTargetUrl("baidu.com");

e.setType("123123");

e.setOperation("1,2,3,4,5,6");

return e;

}

@RequestMapping(value="/account")

public bean test_two() {

bean b = new bean();

b.setId("111");

b.setMobiPhone("shaoyongyang");

b.setPassWord("helloworld");

b.setUserName("bianbian");

return b;

}

@RequestMapping(value="/admin",method=RequestMethod.GET)

public String doView () {

return "index.jsp";

}

}

七,返回jsp物件

package com.activity.action;

import java.util.Date;

import java.util.Map;

import javax.servlet.http.HttpServletRequest;

import org.springframework.beans.factory.annotation.Value;

import org.springframework.stereotype.Controller;

import org.springframework.web.bind.annotation.RequestMapping;

import org.springframework.web.bind.annotation.RequestMethod;

import org.springframework.web.servlet.ModelAndView;

import com.activity.service.infoService;

@Controller

public class InfoController {

private HttpServletRequest request ;

private infoService infoService ;

public infoService getInfoService() {

return infoService;

}

public void setInfoService(infoService infoService) {

this.infoService = infoService;

}

/***

 * @author shaoyongyang 

 * @since 2014年10月9日  13:29:21

 * 主頁

 * **/

@Value("${application.message:Hello World}")

private String message = "Hello World";

@RequestMapping("/index")

public String index(Map<String, Object> model) {

model.put("time", new Date());

model.put("message", this.message);

return "index";

/***當返回index字串,會自動去WEB-INF JSP路徑尋找index.jsp*/

}

/***

 * @author shaoyongyang

 * @since 2014-10-13 13:47:46

 * 例子流程

 * **/

@RequestMapping(value="example")

public ModelAndView example(HttpServletRequest request) {

return new ModelAndView("index.jsp");

}

}

至此。OVER!!!

上傳幾張圖片吧。

主要配置檔案。

啟動成功顯示:

瀏覽器:

相關推薦

spring-boot 新增JSP頁面功能

一、什麼是Spring-Boot: 隨著Spring 4新版本的釋出,Spring Boot這個新的子專案得到了廣泛的關注,因為不管是Spring 4官方釋出的新聞稿還是針對首席架構師Adrian Colyer的專訪,都對這個子專案所帶來的生產率提升讚譽有加。 Sp

在IDEA中配置spring bootjsp頁面的支援

現在前後的分離的,一般springboot 就用來做後臺restful 介面,那麼如果要前後端合併在springboot呢?可以通過下面幾個簡單的步驟,增加對jsp的支援。 (1)pom增加依賴: <!--springboot tomcat jsp 支援開啟--&g

(19)Spring Boot 新增JSP支援【從零開始學Spring Boot

【來也匆匆,去也匆匆,在此留下您的腳印吧,轉發點贊評論;       您的認可是我最大的動力,感謝您的支援】 看完本文章您可能會有些疑問,可以檢視之後的一篇部落格: ----------------------------------------------------

Spring Boot新增jsp的支援

1、在pom.xml新增如下內容: <dependency> <groupId>org.apache.tomcat.embed</groupId> <artifactId>tomcat-

spring Boot   .yml頁面

springbootserver: port: 80 //配置端口 不要寫8080端口 context-path: / //配置根路徑,不需要寫項目名spring: datasource: driver-class-name: com.mysql.jdbc.D

Spring boot整合jsp

jstl標簽庫 中學 encoding 正常 group lan 名稱 free vax   這幾天在集中學習Spring boot+Shiro框架,因為之前view層用jsp比較多,所以想在spring boot中配置jsp,但是spring boot官方不推薦使用jsp

spring boot 跳轉頁面和熱加載的坑

star end 模版 pre devtools work ram 生產環境 false 跳轉頁面需要加上模版依賴:<!--thymeleaf--><dependency> <groupId>org.springframework.b

spring bootjsp解析c標籤方法

pro.xml中新增jstl標籤 <dependency><groupId>javax.servlet</groupId><artifactId>jstl</artifactId><version>1.2</version>

spring-boot使用JSP的Demo

注意要點: 1  使用idea的時候,Pom引入tomcat-embed-jasper的時候不能有<scope>provided</scope> 2  @RestController是Controller和Response

Spring Boot 整合 JSP 示例

原文地址:https://renguangli.com/articles/spring-boot-jsp JSP 全名為Java Server Pages,中文名叫 Java伺服器頁面,其根本是一個簡化的 Servlet 設計,它是由 Sun Microsystems公司倡導,許多公

Spring Boot新增DB2驅動

其實就是maven新增DB2驅動。只是要求db2jcc4。 db2jcc4 mvn install:install-file "-DgroupId=com.ibm.db2" "-DartifactId=db2jcc4" "-Dversion=11.1" "-Dpackaging=jar" "

改進spring boot新增監控

伺服器端 在啟動類上新增 @EnableAdminServer @SpringBootApplication 在pom.xml上新增 <dependency> <groupId>

spring boot訪問html頁面

首先,需要在pom.xml中增加 thymeleaf 的依賴 <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://

Spring Boot -03- Spring Boot 整合 JSP

如果您還尚未接觸過 Spring Boot ,請先檢視上一篇文章: Spring Boot -01- 快速入門篇(圖文教程) Spring Boot -03- Spring Boot 整合 JSP 上面已經完成了 Spring Boot 專案的簡單搭建,我們僅僅需要進行一些簡單的

spring boot使用freemarker頁面獲取系統路徑最簡配置

1、配置application.properties(最後一句起作用,前面湊數的) spring.freemarker.template-loader-path=classpath:/templates/ spring.freemarker.suffix=.ftl spring.fr

spring-boot 配置jsp

sring-boot 整合  jsp   spring-boot預設使用的頁面展示並不是jsp,若想要在專案中使用jsp還需要配置一番。   雖然spring-boot中也預設配置了InternalResourceViewResolver,但是這個檢視解析器並沒有解析jsp的功能,它只是把解析工

Spring BootJsp

  Spring Boot與Jsp   關於Spring Boot 與Jsp, 儘管本人已經很厭惡Jsp了。但是好多人在用,以後寫程式碼也需要,最近新學了SpringBoot框架,發現其與jsp結合不是太完美,現在把走過的坑說一下。 典型的spring

Spring Boot實現檔案下載功能

我們只需要建立一個控制器(Controler)檔案,即Controller目錄下的File_Download.java,其完整目錄如下: @Controller public class File_Download { //實現Spring Boot 的檔案下載功能,對映網址為/download

Spring boot 整合Jsp

前言 上一篇介紹了Spring Boot中使用如何使用durid,這篇文章將介紹如何整合jsp進行web開發 專案結構 首先在src/main 下新建目錄:webapp/WEB-INF/view 用於存放jsp檔案,專案的靜態資源統一放在resources的st

Spring-Boot新增MyBatis:手動新增程式碼方式

建立了一個MySQL資料庫,並添加了一張表: 新增MyBatis後,有兩種使用方式: 註解方式。簡單快速,適合規模較小的資料庫。 xml配置方式。支援動態生成SQL,調整SQL更方便,適合大型資料庫。 無論哪種方式,都需要共同執行的前期工作: 在pom.xml中新