最近的项目用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然后启动访问的方式 需要单独配置之后另说
package com.example.demo; import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication; @SpringBootApplication
public class DemoApplication { public static void main(String[] args) {
SpringApplication.run(DemoApplication.class, args);
}
}
pom.xml通过pom 如果网络没问题的话 下图依赖的jar包应该已经导入了
<?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.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion> <groupId>com.example</groupId>
<artifactId>demo</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>jar</packaging> <name>demo</name>
<description>Demo project for Spring Boot</description> <parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.5.7.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent> <properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<java.version>1.8</java.version>
</properties> <dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency> <dependency>
<groupId>org.postgresql</groupId>
<artifactId>postgresql</artifactId>
<scope>runtime</scope>
</dependency>
<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> </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