spring boot系列01--快速构建spring boot项目
最近的项目用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