1,Spring Boot簡介。
簡介:
Springboot是犧牲項目的自由度來減少配置的復雜度。
1)目錄位置固定:比如Application.java的放置位置(application.java 文件不能直接放在main/java文件夾下,必須要建一個包把他放進去。),html、static、properties、test文件等
2)內置了tomcat服務器。
3)構建rest API。使用@RestController注解。 -> @Controller + @ResponseBody 當我們后臺寫一些數據接口,就可以借助它來編寫restful風格的api。
4)restful:是一種規范,或者說一種命名風格。簡單的比如添加、刪除、獲取信息、獲取列表等,/book/add、/book/delete、/book/{id}/info、/book/list等。
2,Spring Boot框架搭建。
1)官網下載項目框架代碼。
Paste_Image.png
2)選擇指定的構建環境,項目組以及項目名, 選擇項目依賴(可選)。
Paste_Image.png
3)將框架代碼導入IDE。推薦使用IDEA工具。
Paste_Image.png
Paste_Image.png
Paste_Image.png
4)項目結構
java:業務代碼。
springboot的啟動類:直接放在group路徑下,com.hzq,其余package如controller、service、dao等。
靜態資源:js,images等。
templates模板:(頁面)thymeleaf、Jsp。
Paste_Image.png
5)啟動Spring boot項目。(Springboot內置了tomcat,已bootRun的方式啟動即可。)
Paste_Image.png
找不到gradle。
Paste_Image.png
./gradlew bootRun & 或者 打war包部署到tomcat中。
6)未關閉代理:訪問localhost:8080或者120.0.0.1:8080可能會訪問不了,ERR_EMPTY_RESPONSE。
3,SpringBoot集成Thymeleaf。
1)依賴引入。
compile('org.springframework.boot:spring-boot-starter-thymeleaf')
2)配置文件。
spring.thymeleaf.cache=false//用于頁面熱部署。
spring.thymeleaf.encoding=utf-8
spring.thymeleaf.mode=HTML5
server.port=8009
3)配置文件可以使用application.properties
spring.profiles.active=local //指定使用哪個配置文件。 正常情況下,local、dev、prod的配置文件是不同的。
application-local.properties
application-dev.properties
application-prod.properties
4)Springboot頁面熱部署。
maven
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<fork>true</fork>
</configuration>
</plugin>
</plugins>
</build>
gradle
bootRun {
addResources = true
}
4,springboot集成jsp。
1)添加依賴。
compile('org.apache.tomcat.embed:tomcat-embed-jasper')添加jsp支持的類。
jasper依賴有加provided和注釋掉該依賴范圍運行的效果不大一樣,
2)配置文件
application.properties文件加上如下配置。
spring.mvc.view.prefix=/WEB-INF/jsp/
spring.mvc.view.suffix=.jsp
3)在webapp下建立目錄。
/WEB-INF/jsp
/resources 資源文件夾
引用資源。
<c:set var="ctx" value="${pageContext.request.contextPath}/resources"/>
4)將thymeleaf相關的依賴以及配置去掉。
5,其余梳理。
1)基于maven和gradle來構建的項目,會涉及到group以及artifact。
項目eg: org.apache.commons
1, group一般指定域。org.apache就是這個項目的group。指定了項目的域。我們命名一般是com.company(公司名稱)。
2,artifact一般指定項目名。命名代表項目的含義。
3,當把項目發布到maven倉庫中的時候,我們需要通過『坐標』來找到該項目。例如 com.company1.test項目。
2)本地項目提交到github。
Paste_Image.png
Paste_Image.png
git init
git add
git commit
git remote add origin git@github.com:scuhzq/springbootjsporthyme.git
git push -u origin master