SpringBoot

SpringBoot概念:

Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。通过这种方式,Spring Boot致力于在蓬勃发展的快速应用开发领域(rapid application development)成为领导者。

配置YML文件

环境可以有多个,使用---分割
spring:
  profiles:
    active: pro
---
spring:
profiles: dev       #开发环境
#语法:  key:空格value  1.注意缩进   2.注意层级
server:
  port: 8090
  servlet:
    context-path: /

#将数据写入配置文件
jdbc:
  username: root用户名
  password: root密码

---                   #环境分割线
spring:
  profiles: pro       #生产环境
#语法:  key:空格value  1.注意缩进   2.注意层级
server:
  port: 8091
  servlet:
    context-path: /jt

#将数据写入配置文件
jdbc:
  username: root用户名
  password: root密码

 热部署

当程序修改之后,如果以传统的方式,必须重启tomcat服务器.如果添加热部署功能.则可以实现实时的更新.

 1.添加插件

<!--添加热部署插件 -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-devtools</artifactId>
        </dependency>

 LomBok

简化POJO编辑方式。自动生成set/get/构造方法等。

1.添加jar包

<!--引入插件lombok 自动的set/get/构造方法插件  -->
<dependency>
    <groupId>org.projectlombok</groupId>
    <artifactId>lombok</artifactId>
</dependency>

 2.配置方式

 找到lombokjar包文件位置 以java方式运行

 之后点击install/update

在eclipse安装的根目录下会生成lombok.jar包文件,表示插件安装成功

4.配置

在文件安装的根目录找到SpringToolSuite4.ini中

手动在ini文件中最后一行添加

-vmargs -javaagent:lombok.jar

5.常用注解

@Data注解:在JavaBean或类JavaBean中使用,这个注解包含范围最广,它包含getter、setter、NoArgsConstructor注解,即当使用当前注解时,会自动生成包含的所有方法;

@getter注解:在JavaBean或类JavaBean中使用,使用此注解会生成对应的getter方法;

@setter注解:在JavaBean或类JavaBean中使用,使用此注解会生成对应的setter方法;

@NoArgsConstructor注解:在JavaBean或类JavaBean中使用,使用此注解会生成对应的无参构造方法;

@AllArgsConstructor注解:在JavaBean或类JavaBean中使用,使用此注解会生成对应的有参构造方法;

@ToString注解:在JavaBean或类JavaBean中使用,使用此注解会自动重写对应的toStirng方法;

@EqualsAndHashCode注解:在JavaBean或类JavaBean中使用,使用此注解会自动重写对应的equals方法和hashCode方法;

@Slf4j:在需要打印日志的类中使用,当项目中使用了slf4j打印日志框架时使用该注解,会简化日志的打印流程,只需调用info方法即可;

@Log4j:在需要打印日志的类中使用,当项目中使用了log4j打印日志框架时使用该注解,会简化日志的打印流程,只需调用info方法即可;

 Spring 整合Mybatis

1.YML配置文件

server:
  port: 8080
  servlet:
    context-path: /
spring:
  datasource:
    #引入druid数据源
    type: com.alibaba.druid.pool.DruidDataSource
 driver-class-name: com.mysql.cj.jdbc.Driver
    url: jdbc:mysql://127.0.0.1:3306/database?serverTimezone=GMT%2B8&useUnicode=true&characterEncoding=utf8&autoReconnect=true&allowMultiQueries=true
    username: root
    password: root

mybatis:
  #定义别名包  resultType的映射可以省略包路径
  type-aliases-package: xxx.xxx.xxx
  #加载mapper的映射文件
  mapper-locations: classpath:/mybatis/mappers/*.xml
  #开启驼峰映射 
  #使用说明: 1.必须按照驼峰规则的规定  去掉_线,并且之后字母"大写"
  #         2.如果开启驼峰规则,必须按照要求  属性user_id   字段user_id   
  configuration:
    map-underscore-to-camel-case: true

 Mybatis-plus

 Mybatis-plus(简称 MP)是一个 MyBatis的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。

 1.ORM映射

1)已对象的方式操作数据库.

2)通过数据库的查询,自动封装为对象

2.实现单表的自动关系映射

单表操作时,用户不写sql自动的实现ORM映射。

 实现思路

1)编辑工具接口 定义公共的API.

2)利用注解实现表与对象的关联,对象中的属性与表中的字段也需要关联.

3)当工具API执行时,转化为Sql语句.

 实现步骤

 1.导入jar包

<!--spring整合mybatis-plus -->
        <dependency>
            <groupId>com.baomidou</groupId>
            <artifactId>mybatis-plus-boot-starter</artifactId>
            <version>3.0.6</version>
        </dependency>

 2.编辑YML

#mybatis-plush配置
mybatis-plus:
  #定义别名包  resultType的映射可以省略包路径
  type-aliases-package: com.jt.pojo
  #加载mapper的映射文件
  mapper-locations: classpath:/mybatis/mappers/*.xml
  #开启驼峰映射 
  #使用说明: 1.必须按照驼峰规则的规定  去掉_线,并且之后字母"大写"

3.pojo类

@Data
@Accessors(chain = true)
@TableName("user")  //如果表名与对象名称一致,则可以省略不写
public class User {
    @TableId(type = IdType.AUTO) //表示主键自增
    private Integer id;
//@TableField("name")  //如果字段与名称一致时,可以省略不写
   private String name;
   private Integer age;
   private String sex;

 4.Mapper类

public interface UserMapper extends BaseMapper<User>{
    
    //查询全部数据
    List<User> findAll();
}

 5.测试类

@SpringBootTest
@RunWith(SpringRunner.class)
public class TestMybatis {
    
    @Autowired
    private UserMapper userMapper;
    
    @Test
    public void testFindAll() {
        System.out.println(userMapper.getClass());
                 System.out.println(userMapper.findAll());
    }
@Test
    public void testInsert() {
        User user = new User();
        user.setId(null)
            .setName("1907班")
            .setAge(4)
            .setSex("男女");
        int rows = userMapper.insert(user);
        if(rows > 0) {
            System.out.println("用户入库成功!");
        }
原文地址:https://www.cnblogs.com/ming-long/p/11737958.html