最近的項目用spring boot 框架 借此學習了一下 這里做一下總結記錄
非常便利的一個框架 它的優缺點我就不在這背書了 想了解的可以自行度娘谷歌
說一下要寫什么吧 其實還真不是很清楚,只是想記錄一下自己學習的過程
願景是寫成一個小的spring boot系列然后能做一些迭代升級 也可以對比不同技術的優劣 所以也會寫其一些周邊 比如 用到的技術(datatables,maven,thymeleaf,mybatis,jpa)
和有(tong)趣(ku)的過程 廢話就說的到這吧。
可以的話 每個技術點也單獨開一個系列...
來點干貨
方式一 spring boot initializer 快速構建應用
從spring boot(https://start.spring.io/)官網直接可以獲取一個
1、這里選擇是Maven with Java 來構建項目,
Maven很多人應該是都用過或者聽過這里就不多說了(打算單寫一個系列),
對於沒有用過的同學可以簡單理解是給你來管理jar包,使用方法后面一塊講
2、Spring Boot版本 如圖
3、groupId;項目組織唯一的標識符 → 就是java的包
artifactId;項目的唯一的標識符 → 項目名
4、這里可以選你項目要用到的jar 比如 web項目基礎jar、數據庫連接jar 如圖
如上選完點 [Generate Project] Springboot 就會按照你選的給構建一個Maven Web項目
現在把項目導入IED
這里你可以用 Eclipse 也可以用 使用 Spring 定制版 Spring Tools Suite (STS)(http://spring.io/tools/sts/)
Eclipse 也可以安裝 sts 插件 這里這些就不細說了...
看導入后的效果(演示用的是STS)
主要說幾個文件 DemoApplication.java
現在就可以直接右鍵項目Run 選 Spring Boot Appliction 運行了
現在如果有畫面或者寫個Controller是可以訪問了 想說的是 這也是spring boot項目的減輕配置和部署的一個體現
當然它也支持想普通web項目一下添加到server然后啟動訪問的方式 需要單獨配置之后另說
1 package com.example.demo; 2
3 import org.springframework.boot.SpringApplication; 4 import org.springframework.boot.autoconfigure.SpringBootApplication; 5
6 @SpringBootApplication 7 public class DemoApplication { 8
9 public static void main(String[] args) { 10 SpringApplication.run(DemoApplication.class, args); 11 } 12 }
pom.xml通過pom 如果網絡沒問題的話 下圖依賴的jar包應該已經導入了
1 <?xml version="1.0" encoding="UTF-8"?>
2 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
3 xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
4 <modelVersion>4.0.0</modelVersion>
5
6 <groupId>com.example</groupId>
7 <artifactId>demo</artifactId>
8 <version>0.0.1-SNAPSHOT</version>
9 <packaging>jar</packaging>
10
11 <name>demo</name>
12 <description>Demo project for Spring Boot</description>
13
14 <parent>
15 <groupId>org.springframework.boot</groupId>
16 <artifactId>spring-boot-starter-parent</artifactId>
17 <version>1.5.7.RELEASE</version>
18 <relativePath/> <!-- lookup parent from repository -->
19 </parent>
20
21 <properties>
22 <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
23 <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
24 <java.version>1.8</java.version>
25 </properties>
26
27 <dependencies>
28 <dependency>
29 <groupId>org.springframework.boot</groupId>
30 <artifactId>spring-boot-starter-data-jpa</artifactId>
31 </dependency>
32 <dependency>
33 <groupId>org.springframework.boot</groupId>
34 <artifactId>spring-boot-starter-web</artifactId>
35 </dependency>
36
37 <dependency>
38 <groupId>org.postgresql</groupId>
39 <artifactId>postgresql</artifactId>
40 <scope>runtime</scope>
41 </dependency>
42 <dependency>
43 <groupId>org.springframework.boot</groupId>
44 <artifactId>spring-boot-starter-test</artifactId>
45 <scope>test</scope>
46 </dependency>
47 </dependencies>
48
49 <build>
50 <plugins>
51 <plugin>
52 <groupId>org.springframework.boot</groupId>
53 <artifactId>spring-boot-maven-plugin</artifactId>
54 </plugin>
55 </plugins>
56 </build>
57
58
59 </project>
方式二 STS自己構建
先說一下 你可以 File→New→Spring Starter Project 來創建一個 spring boot 項目 這種方式 和上面說的從網頁上選創建 基本沒什么區別 所以這個就不想提了
打算新建一個Maven的項目然后配置spring boot
先寫一個Hello world吧
先新建一個Maven項目
選擇工作目錄
選擇一個創建項目的類型 如圖 maven-archetype-webapp
group id 和 artifact id 上面 說過了 Package = group id + artifact id 清空和不改動 都可以
然后現在的狀態是有錯 且 JRE 是1.5的版本
向pom.xml文件添加以下代碼
<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/maven-v4_0_0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.sts.springboot</groupId> <artifactId>spring-boot-hello</artifactId> <packaging>war</packaging> <version>0.0.1-SNAPSHOT</version> <name>spring-boot-hello Maven Webapp</name> <url>http://maven.apache.org</url> <properties> <!-- 編碼方式指定 --> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <!-- Java版本指定 --> <java.version>1.8</java.version> </properties> <!-- 父/基礎 包指定 --> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>1.5.2.RELEASE</version> </parent> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <scope>test</scope> </dependency> </dependencies> <build> <finalName>spring-boot-hello</finalName> </build> </project>
然后 右鍵項目→Maven→Update Project→OK
點然后 錯解消 JRE 變成1.8的版本 且能看Maven Dependencies 配下 再pom里配置的jar 已經被加進來了如圖
現在就是項目缺少Source Folder 如下圖 Maven Dependencies 和 JRE Sys Lib 選中然后 Apply 項目中 下圖 missing 的兩個文件夾 就能顯示了
如下圖添加兩個類 寫一下簡單的hello world
然后 右鍵項目→Run→Spring Boot App 沒問題的話如下圖
現在可以在瀏覽器 輸入 http://localhost:8080/helloWorld
至此Spring boot 的簡單hello world 就完了
其他的問題 比如 注解、配置 現在篇幅已經有點長了 放到后面繼續講吧
GitHub:spring-boot-hello