springboot常用依赖跟配置

    技术2022-07-29  84

    Springboot集成依赖

    <properties> <!-- 项目设置:编码格式UTF-8 --> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> <java.version>1.8</java.version> <mybatis-spring-boot>1.2.0</mybatis-spring-boot> <mysql-connector>5.1.39</mysql-connector> <druid>1.0.18</druid> </properties> <!-- springBoot的父依赖 --> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.0.4.RELEASE</version> <relativePath/> <!-- lookup parent from repository --> </parent> <dependencies> <!--启动springBoot测试依赖 --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency> <!-- Spring Boot Spring(启动) 依赖 --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <!-- 热部署 --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-devtools</artifactId> <optional>true</optional> </dependency> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <scope>test</scope> </dependency> </dependencies>

    启用mysql

    <!-- MySQL 连接驱动依赖 --> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>${mysql-connector}</version> </dependency>

    Quertz 定时器

    <!-- pom文件 Spring Quartz依赖 --> <dependency> <groupId>org.quartz-scheduler</groupId> <artifactId>quartz</artifactId> <version>2.2.1</version> <exclusions> <exclusion> <artifactId>slf4j-api</artifactId> <groupId>org.slf4j</groupId> </exclusion> </exclusions> </dependency>

    Mybatis依赖

    <!-- Spring Boot Mybatis 依赖 --> <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <version>${mybatis-spring-boot}</version> </dependency>

    Freemarker静态资源模板依赖

    <!-- Spring Boot Freemarker 模板 依赖 --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-freemarker</artifactId> </dependency>

    Websocker通信

    <!--websocket--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-websocket</artifactId> <version>1.3.5.RELEASE</version> </dependency>

    Lombok依赖(对实体类简便代码)

    <!-- lombok 依赖 --> <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> </dependency>

    lombok注解含义

    @Setter 生成对应的 setter 方法 是 @Getter 生成对应的 getter 方法, 生成的 getter 遵循布尔属性的约 定。例如:boolean 类型的 sex,getter 方法为 isSex 而不是 getSex 是 94 @Data 该注解使用在类上,该注解会提供 getter、setter、equals、 canEqual、hashCode、toString 方法。 否 @Log 这是一个泛型注解,具体有很多种形式 。(具体请参考 Log 官方介绍)

    @AllArgsConstructor 该注解提供一个全参数的构造方法 否 @NoArgsConstructor 该注解提供一个无参构造 ----- @EqualsAndHashCode 该注解在类级别注释会同时生成 equals 和 hashCode。 注 意继承关系的时候该注解的使用。详细介绍参照官方介绍

    @NonNull 该注解使用在属性上,该注解用于属的非空检查,当放在 setter 方法的字段上,将生成一个空检查,如果为空,则抛 出 NullPointerException。 是 @Cleanup 该注解使用在属性前,该注解是用来保证分配的资源被释放。 在本地变量上使用该注解,任何后续代码都将封装在 try/finally 中,确保当前作用于中的资源被释放。默认 @Cleanup 清理的方法为 close,可以使用 value 指定不同 的方法名称。 否 @ToString 该注解使用在类上,该注解默认生成任何非静态字段以名称值的形式输出。 1)、如果需要可以通过注释参数 includeFieldNames 来 控制输出中是否包含相应的属性名称。 2)、可以通过 exclude 参数中包含字段名称,来排除特定字 段。 3)、可以通过 callSuper 参数控制父类的输出。 否 @RequiredArgsConstructor 该注解使用在类上,将使类中所有带有 @NonNull 注解的或 者带有 final 修饰的成员变量生成对应的构造方法 否 @Value 这个注解用在类上,将会生成含所有参数的构造方法,get 方法,此外还提供了 equals、hashCode、toString 方法。 注意:没有 setter 否

    Swagger依赖

    <!-- swagger api 的依赖 --> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifactId> <version>2.6.1</version> </dependency> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger-ui</artifactId> <version>2.6.1</version> </dependency>

    SpringData-jpa依赖

    <!-- Spring Boot JPA 依赖 --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-jpa</artifactId> </dependency>

    Mybatis逆向工程依赖

    <!-- Mybatis逆向功能的核心依赖 --> <dependency> <groupId>org.mybatis.generator</groupId> <artifactId>mybatis-generator-core</artifactId> <version>1.3.5</version> </dependency>

    Mapper(不需要用)

    <!-- mapper --> <dependency> <groupId>tk.mybatis</groupId> <artifactId>mapper-spring-boot-starter</artifactId> <version>1.1.4</version> </dependency>

    打包插件(jar,war)

    <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> </plugins>

    Springboot整合jsp依赖

    <dependency> <groupId>org.apache.tomcat.embed</groupId> <artifactId>tomcat-embed-jasper</artifactId> <scope>provided</scope> </dependency> <!-- JSP 页面使用 JSTL 标签 --> <dependency> <groupId>javax.servlet</groupId> <artifactId>jstl</artifactId> </dependency>

    POI导入导出依赖

    <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi</artifactId> <version>3.8</version> <exclusions> <exclusion> <artifactId>commons-codec</artifactId> <groupId>commons-codec</groupId> </exclusion> </exclusions> </dependency> <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi-ooxml</artifactId> <version>3.8</version> </dependency>

    Redis整合依赖

    <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis</artifactId> </dependency> <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-pool2</artifactId> </dependency>

    MD5加密算法依赖

    <dependency> <groupId>commons-codec</groupId> <artifactId>commons-codec</artifactId> <version>1.9</version> </dependency>

    Swagger2注解

    1)、常用注解 ⚫ @Api :修饰整个类,描 述 Controller 的作用

    ⚫ @ApiOperation :描述一个类的一个方法,或者说一个接口

    ⚫ @ApiParam :单个参数描述

    ⚫ @ApiModel :用对象来接收参数

    ⚫ @ApiProperty :用对象接收参数时,描述对象的一个字段

    ⚫ @ApiResponse : HTTP 响应其中 1 个描述

    ⚫ @ApiResponses : HTTP 响应整体描述

    ⚫ @ApiIgnore :使用该注解忽略这个 API ⚫ @ApiError :发生错误返回的信息

    ⚫ @ApiImplicitParam :一个请求参数

    ⚫ @ApiImplicitParams :多个请求参数

    Mapper.XML

    <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >

    Quartz

    在任务类中使用了两个注解@EnableScheduling 和@Scheduled(Cron 表达式)。具体作用如下: ⚫ @EnableScheduling:放在类前,标注启动定时任务; ⚫ @Scheduled(表达式): 放在方法前

    配置application.properties

    ######################################################## ### 配置数据源 ######################################################## spring.datasource.driverClassName = com.mysql.jdbc.Driver spring.datasource.url=jdbc:mysql://localhost:3306/authority?useUnicode=true&characterEncoding=utf8 spring.datasource.username = root spring.datasource.password = admin ##springboot整合springdatajpa #加载jpa配置 spring.jpa.database-platform=org.hibernate.dialect.MySQL5InnoDBDialect #更新修改到数据库 spring.jpa.hibernate.ddl-auto=update #控制台输出sql语句 spring.jpa.show-sql=true #格式转换 spring.jackson.date-format=yyyy-MM-dd HH:mm:ss #扫描mybatis包 mybatis.type-aliases-package=com.ysd.entity #配置映射文件 mybatis.mapper-locations=classpath:mapper/*.xml spring.mvc.view.prefix=/ spring.mvc.view.suffix=.html
    Processed: 0.010, SQL: 9