## spring boot 快速搭建
spring boot 特点:前后台分离__ 配置文件少了__
- 第一步新建项目
在这里插入代码片选择 Spring Initializr ,然后选择默认的 url 点击【Next】
然后修改项目信息:通过修改Group和Artifact (俩个信息修改坐标)
勾选web项目
选好项目名称以及项目位置 点击finish
创建好之后 默认的项目结构如下:
在resources 下的 static下建一个index.html
**SpringbootApplication: 一个带有 main() 方法的类,用于启动应用程序
SpringbootApplicationTests:一个空的 Junit 测试了,它加载了一个使用 Spring Boot 字典配置功能的 Spring 应用程序上下文
application.properties:一个空的 properties 文件,可以根据需要添加配置属性
pom.xml: Maven 构建说明文件**
**运行结果如下:**
**贼6的玩法⬇️**
indexController不变 在HBuild里写的一行代码:
**实现结果:**
其中有一个跨域的问题 所以加了
`response.setHeader("Access-Control-Allow-Origin", "*");`
方法参数为`HttpServletResponse response`
Spring Boot 的配置文件——————————
Spring Boot 使用一个全局的配置文件 application.properties 或 application.yml,放置在【src/main/resources】目录或者类路径的 /config 下。
Spring Boot 不仅支持常规的 properties 配置文件,还支持 yaml 语言的配置文件。yaml 是以数据为中心的语言,在配置数据的时候具有面向对象的特征。
**——————————以上只是springboot一些基础的配置————————**
**~~~接下来我们需要加mybatis的配置**
第一步:修改 pom.xml 增加对 MySql和 MyBatis 的支持
```<!--mybatis的依赖-->
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>1.3.1</version>
</dependency>
<!--mysql的依赖-->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<scope>runtime</scope>
</dependency>
```
第二步数据库的一些配置:
另外附上pom.xml :
<?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>firstspringboot</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>jar</packaging><name>firstspringboot</name>
<description>Demo project for Spring Boot</description><parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.0.5.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-web</artifactId>
</dependency><dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-jdbc</artifactId>
</dependency><dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<!--mybatis的依赖-->
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>1.3.1</version>
</dependency>
<!--mysql的依赖-->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
<exclusions>
<exclusion><!-- 去除默认配置 -->
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-logging</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-log4j2</artifactId>
<version>2.0.5.RELEASE</version>
</dependency>
<dependency> <!-- 支持识别yml配置 -->
<groupId>com.fasterxml.jackson.dataformat</groupId>
<artifactId>jackson-dataformat-yaml</artifactId>
</dependency><dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-core</artifactId>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.datatype</groupId>
<artifactId>jackson-datatype-joda</artifactId>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.module</groupId>
<artifactId>jackson-module-parameter-names</artifactId>
</dependency>
<!-- alibaba的druid数据库连接池 -->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid-spring-boot-starter</artifactId>
<version>1.1.10</version>
</dependency>
<!-- 整合redis -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>
</dependencies><build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>
我们还需要加上mybatis的 配置文件(在mybatis官网可以找到按照自己需要的加减):
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
<settings>
<setting name="cacheEnabled" value="true"/> <!--缓存-->
<setting name="lazyLoadingEnabled" value="true"/> <!-- 懒加载-->
<setting name="aggressiveLazyLoading" value="false" /> <!--(懒加载的难兄难弟)与懒加载一起使用-->
<setting name="multipleResultSetsEnabled" value="true"/> <!--允许或禁止从单个语句返回多个ResultSet(需要兼容的驱动程序)-->
<setting name="useColumnLabel" value="true"/> <!--使用别名-->
<setting name="useGeneratedKeys" value="true"/><!--允许JDBC支持生成的密钥-->
<setting name="defaultStatementTimeout" value="25"/><!--设置驱动程序等待数据库响应的秒数。 -->
<setting name="defaultFetchSize" value="100"/><!---->
<setting name="safeRowBoundsEnabled" value="false"/><!--允许在嵌套语句上使用RowBounds。如果允许,请设置false。-->
<setting name="mapUnderscoreToCamelCase" value="true"/><!--数据库列名和java属性名自动把_变成大写-->
<setting name="localCacheScope" value="SESSION"/><!--本地缓存-->
<setting name="jdbcTypeForNull" value="NULL"/><!--如果未为参数提供特定的JDBC类型,则指定空值的JDBC类型-->
<setting name="logImpl" value="LOG4J2"/><!--日志-->
</settings>
</configuration>
```
log日志的配置 log4j2.yml(resources下):
Appenders:
Console: #输出到控制台
name: CONSOLE #Appender命名
target: SYSTEM_OUT
PatternLayout:
pattern: "%d{yyyy-MM-dd HH:mm:ss,SSS}:%4p %t (%F:%L) - %m%n"
Loggers:
Root:
level: info
AppenderRef:
- ref: CONSOLE
Logger: #单独设置某些包的输出级别
- name: com.example.db.mapping #复数加上-
additivity: false #去除重复的log
level: trace
AppenderRef:
ref: CONSOLE
- name: org.springframework
additivity: false
level: trace
AppenderRef:
ref: CONSOLE
```
————————————最后还需要有一个redix———————————
——————————————————————————————————————
文章来自于 https://www.jianshu.com/p/70963ab49f8c
简书ID: @我没有三颗心脏
(写这个是为自己学习用 方便自己没事看看 )