创建一个新项目
使用maven创建一个新项目
给定项目名称、finsh完成创建
跑起来SpringBoot
- 引入依赖parent
> SpringBoot父级依赖,spring-boot-starter默认加载了许多设置好的依赖,省去springMVC繁杂的配置过程
<parent> <groupid>org.springframework.boot</groupid> <artifactid>spring-boot-starter-parent</artifactid> <version>2.1.5.RELEASE</version> <relativepath> </relativepath></parent>
- 设置资源属性
> 分别为,源码编码格式、输出编码格式、jdk版本
<properties> <project.build.sourceencoding>UTF-8</project.build.sourceencoding> <project.reporting.outputencoding>UTF-8</project.reporting.outputencoding> <java.version>1.8</java.version> </properties>
- 引入依赖dependency
> 引入springboot、springboot自带的web模块、配置文件解析(springboot默认加载yml,想要加载xml,propertis等文件需要加载改文件)
<dependencies> <dependency> <groupid>org.springframework.boot</groupid> <artifactid>spring-boot-starter</artifactid> </dependency> <dependency> <groupid>org.springframework.boot</groupid> <artifactid>spring-boot-starter-web</artifactid> </dependency> <dependency> <groupid>org.springframework.boot</groupid> <artifactid>spring-boot-configuration-processor</artifactid> <optional>true</optional> </dependency> </dependencies>
- 编写启动类(会扫描启动类所在包之下的所有子包及文件)
package com.myf; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; @SpringBootApplication public class Application { public static void main(String[] args) { SpringApplication.run(Application.class,args); } }
- 编写controller
package com.myf.controller; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RestController; //该注解的作用返回值直接是json对象 @RestController public class Hello { //代表一个get请求 @GetMapping("/hello") public Object hello(){ return "HelloWord moyifeng"; } }
- 启动项目
目录格式
运行启动类中main方法
整合数据源HiKariCP
- pom中引入数据源驱动与Mybatis驱动
<!-- mysql驱动 --> <dependency> <groupid>mysql</groupid> <artifactid>mysql-connector-java</artifactid> <version>5.1.41</version> </dependency> <!-- mybatis --> <dependency> <groupid>org.mybatis.spring.boot</groupid> <artifactid>mybatis-spring-boot-starter</artifactid> <version>2.1.0</version> </dependency>
- 在resources目录下创建application.yml文件
# web访问端口号 约定:8088 server: # port: 8088 tomcat: uri-encoding: UTF-8 max-http-header-size: 80KB # 配置数据源信息 spring: datasource: # 数据源的相关配置 type: com.zaxxer.hikari.HikariDataSource # 数据源类型:HikariCP driver-class-name: com.mysql.jdbc.Driver # mysql驱动 url: jdbc:mysql://localhost:3306/foodie-shop-dev?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true username: root password: root hikari: connection-timeout: 30000 # 等待连接池分配连接的最大时长(毫秒),超过这个时长还没可用的连接则发生SQLException, 默认:30秒 minimum-idle: 5 # 最小连接数 maximum-pool-size: 20 # 最大连接数 auto-commit: true # 自动提交 idle-timeout: 600000 # 连接超时的最大时长(毫秒),超时则被释放(retired),默认:10分钟 pool-name: DateSourceHikariCP # 连接池名字 max-lifetime: 1800000 # 连接的生命时长(毫秒),超时而且没被使用则被释放(retired),默认:30分钟 1800000ms connection-test-query: SELECT 1 # mybatis 配置 mybatis: type-aliases-package: com.myf.pojo # 所有POJO类所在包路径 mapper-locations: classpath:mapper/*.xml # mapper映射文件,所有的resources都是classpath下
Mybatis逆向生成工具(整合配置)
- 在pom中引入通用mapper工具
<!-- 通用mapper逆向工具 --> <dependency> <groupid>tk.mybatis</groupid> <artifactid>mapper-spring-boot-starter</artifactid> <version>2.1.5</version> </dependency>
- 在yml中引入通用mapper配置
# mybatis mapper 配置 # 通用 Mapper 配置 mapper: mappers: com.myf.my.mapper.MyMapper not-empty: false # 在进行数据库操作的的时候,判断表达式 username != null, 是否追加 username != '' identity: MYSQL
- 引入MyMapper接口~~~~
package com.myf; import tk.mybatis.mapper.common.Mapper; import tk.mybatis.mapper.common.MySqlMapper; /** * 继承自己的MyMapper */ public interface MyMapper<t> extends Mapper<t>, MySqlMapper<t> { }
来源:https://www.cnblogs.com/zhangguangxiang/p/12046568.html