SpringBoot springboot的目的是爲了簡化spring應用的開發搭建以及開發過程。內部使用了特殊的處理,使得開發人員不須要進行額外繁鎖的xml文件配置的編寫,其內部包含不少模塊的配置只須要添加maven依賴便可使用,這項功能可謂對開發人員提供了大大的好處。使用springboot只須要簡單配置一下就能夠完成以前複雜的配置過程。能夠到https://start.spring.io/此網站上,下載一個最簡單的springboot應用,而後一步一步實現自已的應用。在這裏插入圖片描述 能夠看出當前的穩定版本爲2.1.0,點擊Generate Project 按鈕,便可下載一個可用的springboot應用。 在這裏插入圖片描述 這個是我下載下來後,雙擊後出來的。能夠看出以工程是一個基於maven的項目。你能夠將其解壓到任何一個目錄下,經過eclipse或其餘IDE進行導入後運行,eclipse導入流程爲File->import->maven->existing maven projects,查找到本身的項目目錄。也能夠基於此工程來創建自已的maven項目。 下面以創建本身的maven項目css
創建本身的springboot項目 建立工程 在創建項目時,能夠建立一個多模塊聚合項目,即在建立項目時選中在這裏插入圖片描述選擇爲pom。 建立後的工程結構爲 在這裏插入圖片描述 在這裏插入圖片描述html
jar包依賴 打開從springboot官網中下載下來的工程目錄,打開pom.xml文件 org.springframework.boot spring-boot-starter-parent 2.1.0.RELEASE java
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<java.version>1.8</java.version>
</properties>
複製代碼
將此段代碼複製到 spring-boot-study工程中的pom文件中 將下面的依賴複製到spring-boot-web工程中的pom文件中web
org.springframework.boot spring-boot-starter<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>
</plugins>
</build>
複製代碼
eclipse自動完成項目工程的配置。完成後項目中全部須要依賴的jar包自動配置完成。spring
代碼編寫 將application.properties文件拷貝到spring-boot-study項目的resources目錄下。文件中的內容暫時先不要管,編寫如下代碼 @SpringBootApplication @RestController public class WebApplication {sql
@RequestMapping("/hello")
public String helloWorld() {
return "Hello World";
}
public static void main(String[] args) {
SpringApplication.run(WebApplication.class, args);
}
複製代碼
} HelloWold就已經完成後。能夠在瀏覽器中輸入localhost:8080/hello便可看到效果 在這裏插入圖片描述 springboot默認啓動後的端口爲8080,但能夠在application.properties文件中進行修改。後端
server.port=9001 將端口修改成9001,從新啓動項目後,在瀏覽器中輸入入localhost:9001/hello一樣能夠看到相同的結果。瀏覽器
整合login界面 如今後臺已經有轉發功能,具有web瀏覽功能。但咱們須要訪問URL爲「/」時跳轉到登錄界面,即建立好的登錄界面。本人也是在學習過程當中,在網上學習很久才發現使用html的話就使用thymeleaf模板就行了。下面就詳細來講說如何使用thymeleaf開發html。 在spring-boot-web項目中的pom文件中加上thymeleaf的依賴。 org.springframework.boot spring-boot-starter-thymeleaf 但在Spring Boot項目中,通常src/main/resources/static目錄用於存放各種靜態資源文件,例如css、js和image等。src/main/resources/templates用於存放頁面文件,例如html,jsp等。因此在spring-boot-web中的resources目錄下建立static目錄與templates目錄,並將相應的資源文件放置在各自的目錄下。 配置thymeleafspringboot
#thymeleaf spring.thymeleaf.prefix=classpath:/templates/ spring.thymeleaf.suffix=.html spring.thymeleaf.mode=HTML spring.thymeleaf.encoding=UTF-8 spring.thymeleaf.servlet.content-type=text/html spring.thymeleaf.cache=false html文件修改,增長xmlns:th="www.thymeleaf.org" 屬性,資源文件的引入要修改。架構
而後編寫 java代碼@Controller public class IndexController {
@RequestMapping("/")
public String index() {
return "login";
}
複製代碼
} 從新啓動程序,訪問localhost:9001/就可成功跳轉至login.html登錄界面上。 注:thymeleaf對html標籤要求很嚴格,每個標籤都須要成對出現。 調試過程當中遇到下面異常信息
org.thymeleaf.exceptions.TemplateInputException: Error resolving template [login], template might not exist or might not be accessible by any of the configured Template Resolvers at org.thymeleaf.engine.TemplateManager.resolveTemplate(TemplateManager.java:869) ~[thymeleaf-3.0.11.RELEASE.jar:3.0.11.RELEASE] at org.thymeleaf.engine.TemplateManager.parseAndProcess(TemplateManager.java:607) ~[thymeleaf-3.0.11.RELEASE.jar:3.0.11.RELEASE] at org.thymeleaf.TemplateEngine.process(TemplateEngine.java:1098) [thymeleaf-3.0.11.RELEASE.jar:3.0.11.RELEASE] at org.thymeleaf.TemplateEngine.process(TemplateEngine.java:1072) [thymeleaf-3.0.11.RELEASE.jar:3.0.11.RELEASE] at org.thymeleaf.spring5.view.ThymeleafView.renderFragment(ThymeleafView.java:362) [thymeleaf-spring5-。。。。。。。。。。。 由於錯將templates寫成templatse致使。
至此實現從後端服務訪問到登錄界面的搭建,尚未具體登錄邏輯實現。 下一篇實現登錄業務邏輯。 附上 本篇文章源代碼 一步一步實現web程序信息管理系統之二----後臺框架實現跳轉登錄頁面
分類: springboot,web,信息系統 標籤: springboot, thymeleaf, maven 歡迎工做一到五年的Java工程師朋友們加入Java羣: 891219277 羣內提供免費的Java架構學習資料(裏面有高可用、高併發、高性能及分佈式、Jvm性能調優、Spring源碼,MyBatis,Netty,Redis,Kafka,Mysql,Zookeeper,Tomcat,Docker,Dubbo,Nginx等多個知識點的架構資料)合理利用本身每一分每一秒的時間來學習提高本身,不要再用"沒有時間「來掩飾本身思想上的懶惰!趁年輕,使勁拼,給將來的本身一個交代!