SpringBoot快速搭建流程

創建一個新項目

使用maven創建一個新項目

給定項目名稱、finsh完成創建

跑起來SpringBoot

1.引入依賴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>

2.設置資源屬性

> 分別爲,源碼編碼格式、輸出編碼格式、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>

3.引入依賴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>

4.編寫啓動類(會掃描啓動類所在包之下的所有子包及文件)

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);
    }
}

5.編寫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";
    }
}

6.啓動項目

目錄格式

運行啓動類中main方法

整合數據源HiKariCP

1.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>

2.在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&amp;characterEncoding=UTF-8&amp;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逆向生成工具(整合配置)

1.在pom中引入通用mapper工具

<!-- 通用mapper逆向工具 -->
<dependency>
    <groupid>tk.mybatis</groupid>
    <artifactid>mapper-spring-boot-starter</artifactid>
    <version>2.1.5</version>
</dependency>

2.在yml中引入通用mapper配置

# mybatis mapper 配置
# 通用 Mapper 配置
mapper:
  mappers: com.myf.my.mapper.MyMapper
  not-empty: false    # 在進行數據庫操作的的時候,判斷表達式 username != null, 是否追加 username != ''
  identity: MYSQL

3.引入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> {
}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章