zoukankan      html  css  js  c++  java
  • 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> {
    }
    
    

  • 相关阅读:
    数据结构-树与二叉树-思维导图
    The last packet successfully received from the server was 2,272 milliseconds ago. The last packet sent successfully to the server was 2,258 milliseconds ago.
    idea连接mysql报错Server returns invalid timezone. Go to 'Advanced' tab and set 'serverTimezone' property
    redis学习笔记
    AJAX校验注册用户名是否存在
    AJAX学习笔记
    JSON学习笔记
    JQuery基础知识学习笔记
    Filter、Listener学习笔记
    三层架构学习笔记
  • 原文地址:https://www.cnblogs.com/zhangguangxiang/p/14232539.html
Copyright © 2011-2022 走看看