日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > javascript >内容正文

javascript

Spring Boot(二)应用实例

發布時間:2024/4/30 javascript 55 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Spring Boot(二)应用实例 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Spring Boot(二)

一 、 Spring Boot Web 應用實例

  • 這是一個Spring Boot web應用程序示例,使用嵌入式Tomcat + JSP模板,并將包作為可執行文件WAR文件發布。
  • 使用到的技術如下:
  • Spring Boot 1.4.2.RELEASE
  • Spring 4.3.4.RELEASE
  • Tomcat Embed 8.5.6
  • Maven 3
  • Java 8
  • 項目目錄
  • 在這個示例中,是使用 Eclipse 來創建一個 Maven 項目,打開 Eclipse ,按照以下步驟:File -> New -> Other… 如下所示:
  • 最終創建以下文件夾目錄結構如下所示:
  • 項目依賴

  • 在POM.xml文件中有相應的注釋

    <?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.0http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><artifactId>spring-boot-web-jsp</artifactId><packaging>war</packaging><name>Spring Boot Web JSP Example</name><description>Spring Boot Web JSP Example</description><url>http://www.yiibai.com</url><version>1.0</version><parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>1.4.2.RELEASE</version></parent><properties><java.version>1.8</java.version></properties><dependencies><!-- This is a web application --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><!-- Tomcat embedded container--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-tomcat</artifactId><scope>provided</scope></dependency><!-- JSTL for JSP --><dependency><groupId>javax.servlet</groupId><artifactId>jstl</artifactId></dependency><!-- Need this to compile JSP --><dependency><groupId>org.apache.tomcat.embed</groupId><artifactId>tomcat-embed-jasper</artifactId><scope>provided</scope></dependency><!-- Need this to compile JSP,tomcat-embed-jasper version is not working, no idea why --><dependency><groupId>org.eclipse.jdt.core.compiler</groupId><artifactId>ecj</artifactId><version>4.6.1</version><scope>provided</scope></dependency><!-- Optional, test for static content, bootstrap CSS--><dependency><groupId>org.webjars</groupId><artifactId>bootstrap</artifactId><version>3.3.7</version></dependency></dependencies><build><plugins><!-- Package as an executable jar/war --><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId></plugin></plugins></build> </project>
  • 執行后 , 顯示項目依賴關系:

    F:\worksp\springboot\springboot-jsp> mvn dependency:tree[INFO] Scanning for projects... [INFO] [INFO] ------------------------------------------------------------------------ [INFO] Building Spring Boot Web JSP Example 1.0 [INFO] ------------------------------------------------------------------------ [INFO] [INFO] --- maven-dependency-plugin:2.10:tree (default-cli) @ spring-boot-web-jsp --- [INFO] org.springframework.boot:spring-boot-web-jsp:war:1.0 [INFO] +- org.springframework.boot:spring-boot-starter-web:jar:1.4.2.RELEASE:compile [INFO] | +- org.springframework.boot:spring-boot-starter:jar:1.4.2.RELEASE:compile [INFO] | | +- org.springframework.boot:spring-boot:jar:1.4.2.RELEASE:compile [INFO] | | +- org.springframework.boot:spring-boot-autoconfigure:jar:1.4.2.RELEASE:compile [INFO] | | +- org.springframework.boot:spring-boot-starter-logging:jar:1.4.2.RELEASE:compile [INFO] | | | +- ch.qos.logback:logback-classic:jar:1.1.7:compile [INFO] | | | | +- ch.qos.logback:logback-core:jar:1.1.7:compile [INFO] | | | | \- org.slf4j:slf4j-api:jar:1.7.21:compile [INFO] | | | +- org.slf4j:jcl-over-slf4j:jar:1.7.21:compile [INFO] | | | +- org.slf4j:jul-to-slf4j:jar:1.7.21:compile [INFO] | | | \- org.slf4j:log4j-over-slf4j:jar:1.7.21:compile [INFO] | | +- org.springframework:spring-core:jar:4.3.4.RELEASE:compile [INFO] | | \- org.yaml:snakeyaml:jar:1.17:runtime [INFO] | +- org.hibernate:hibernate-validator:jar:5.2.4.Final:compile [INFO] | | +- javax.validation:validation-api:jar:1.1.0.Final:compile [INFO] | | +- org.jboss.logging:jboss-logging:jar:3.3.0.Final:compile [INFO] | | \- com.fasterxml:classmate:jar:1.3.3:compile [INFO] | +- com.fasterxml.jackson.core:jackson-databind:jar:2.8.4:compile [INFO] | | +- com.fasterxml.jackson.core:jackson-annotations:jar:2.8.4:compile [INFO] | | \- com.fasterxml.jackson.core:jackson-core:jar:2.8.4:compile [INFO] | +- org.springframework:spring-web:jar:4.3.4.RELEASE:compile [INFO] | | +- org.springframework:spring-aop:jar:4.3.4.RELEASE:compile [INFO] | | +- org.springframework:spring-beans:jar:4.3.4.RELEASE:compile [INFO] | | \- org.springframework:spring-context:jar:4.3.4.RELEASE:compile [INFO] | \- org.springframework:spring-webmvc:jar:4.3.4.RELEASE:compile [INFO] | \- org.springframework:spring-expression:jar:4.3.4.RELEASE:compile [INFO] +- org.springframework.boot:spring-boot-starter-tomcat:jar:1.4.2.RELEASE:provided [INFO] | +- org.apache.tomcat.embed:tomcat-embed-core:jar:8.5.6:provided [INFO] | +- org.apache.tomcat.embed:tomcat-embed-el:jar:8.5.6:provided [INFO] | \- org.apache.tomcat.embed:tomcat-embed-websocket:jar:8.5.6:provided [INFO] +- javax.servlet:jstl:jar:1.2:compile [INFO] +- org.apache.tomcat.embed:tomcat-embed-jasper:jar:8.5.6:provided [INFO] +- org.eclipse.jdt.core.compiler:ecj:jar:4.6.1:provided [INFO] \- org.webjars:bootstrap:jar:3.3.7:compile [INFO] \- org.webjars:jquery:jar:1.11.1:compile [INFO] ------------------------------------------------------------------------ [INFO] BUILD SUCCESS [INFO] ------------------------------------------------------------------------ [INFO] Total time: 1.327 s [INFO] Finished at: 2017-01-21 T16:57:00+08:00 [INFO] Final Memory: 20M/309M [INFO] ------------------------------------------------------------------------
  • Spring Boot

  • 這個SpringBootServletInitializer執行傳統的WAR部署運行SpringApplication SpringBootWebApplication.java文件內容如下所示 -

    import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.boot.builder.SpringApplicationBuilder; import org.springframework.boot.web.support.SpringBootServletInitializer;@SpringBootApplication public class SpringBootWebApplication extends SpringBootServletInitializer {@Override protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {return application.sources(SpringBootWebApplication.class); }public static void main(String[] args) throws Exception {SpringApplication.run(SpringBootWebApplication.class, args); }}
  • 一個簡單的Spring控制器類

    import java.util.Map;import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping;@Controller public class WelcomeController {// inject via application.properties@Value("${welcome.message:test}")private String message = "Hello World";@RequestMapping("/")public String welcome(Map<String, Object> model) {model.put("message", this.message);return "welcome";}}
  • JSP + 資源 + 靜態文件

  • 對于JSP文件,把它們全放入到 src/main/webapp/WEB-INF/jsp/ 目錄中。
    src/main/webapp/WEB-INF/jsp/welcome.jsp文件的內容如下所示 -

    <!DOCTYPE html> <%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%> <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%> <html lang="en"> <head> <meta charset="UTF-8"><!-- Access the bootstrap Css like this,Spring boot will handle the resource mapping automcatically --><link rel="stylesheet" type="text/css" href="webjars/bootstrap/3.3.7/css/bootstrap.min.css" /><!--<spring:url value="/css/main.css" var="springCss" /><link href="${springCss}" rel="stylesheet" />--><c:url value="/css/main.css" var="jstlCss" /><link href="${jstlCss}" rel="stylesheet" /> </head> <body><nav class="navbar navbar-inverse"><div class="container"><div class="navbar-header"><a class="navbar-brand" href="#">Spring Boot</a></div><div id="navbar" class="collapse navbar-collapse"><ul class="nav navbar-nav"><li class="active"><a href="#">Home</a></li><li><a href="#about">About</a></li></ul></div></div></nav><div class="container"><div class="starter-template"><h1>Spring Boot Web JSP Example</h1><h2>Message: ${message}</h2></div></div><script type="text/javascript" src="webjars/bootstrap/3.3.7/js/bootstrap.min.js"></script> </body> </html>
  • 對于像CSS或Javascript這樣的靜態文件,放在 /src/main/resources/static/ 目錄中。/src/main/resources/static/css/main.css文件的內容如下所示 -

    h1{color:#0000FF; } h2{color:#FF0000; }
  • 對于屬性文件,放在 /src/main/resources/ 目錄下, /src/main/resources/application.properties文件的內容如下所示 -

    spring.mvc.view.prefix: /WEB-INF/jsp/ spring.mvc.view.suffix: .jspwelcome.message: Hello Yiibai//Spring Boot約定過配置,不需要像這樣聲明資源映射。資源映射只是自動處理。
  • 運行實例:

  • 在終端下進入 F:\worksp\springboot\springboot-jsp 目錄,執行以下命令,應該會看到以下結果 -

    F:\worksp\springboot\springboot-jsp>mvn spring-boot:run [INFO] Scanning for projects... [INFO] [INFO] ------------------------------------------------------------------------ [INFO] Building Spring Boot Web JSP Example 1.0 [INFO] ------------------------------------------------------------------------ [INFO] [INFO] >>> spring-boot-maven-plugin:1.4.2.RELEASE:run (default-cli) > test-compile @ springboot-jsp >>> [INFO] [INFO] --- maven-resources-plugin:2.6:resources (default-resources) @ springboot-jsp --- [INFO] Using 'UTF-8' encoding to copy filtered resources. [INFO] Copying 1 resource [INFO] Copying 1 resource [INFO] [INFO] --- maven-compiler-plugin:3.1:compile (default-compile) @ springboot-jsp --- [INFO] Nothing to compile - all classes are up to date [INFO] [INFO] --- maven-resources-plugin:2.6:testResources (default-testResources) @ springboot-jsp --- [INFO] Using 'UTF-8' encoding to copy filtered resources. [INFO] skip non existing resourceDirectory F:\worksp\springboot\springboot-jsp\springboot-jsp\src\test\resources [INFO] [INFO] --- maven-compiler-plugin:3.1:testCompile (default-testCompile) @ springboot-jsp --- [INFO] Nothing to compile - all classes are up to date [INFO] [INFO] <<< spring-boot-maven-plugin:1.4.2.RELEASE:run (default-cli) < test-compile @ springboot-jsp <<< [INFO] [INFO] --- spring-boot-maven-plugin:1.4.2.RELEASE:run (default-cli) @ springboot-jsp ---. ____ _ __ _ _/\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \ ( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \\\/ ___)| |_)| | | | | || (_| | ) ) ) )' |____| .__|_| |_|_| |_\__, | / / / /=========|_|==============|___/=/_/_/_/ ::Spring Boot:: (v1.4.2.RELEASE)
  • 之后,將項目發布到 Tomcat 中,在項目上點擊右鍵,在彈出的選項中選擇“Run As -> Ru On Server” ,使用瀏覽器訪問:http://localhost:8080/springboot-jsp/ ,如果程序沒有出錯誤,那應該會看到以下結果 -
  • **注:**JSP限制
  • 不能創建可執行jar來運行這個嵌入式Tomcat + JSP Web示例,因為Tomcat中有一個硬編碼文件模式。 閱讀以下這篇文章:Spring Boot JSP限制。
  • 總結

    以上是生活随笔為你收集整理的Spring Boot(二)应用实例的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。