springboot整合lombok,以及idea安装lombok的插件

1.添加lombok的插件

		<dependency>
			<groupId>org.projectlombok</groupId>
			<artifactId>lombok</artifactId>
			<version>1.18.10</version>
		</dependency>

2.实体类

package com.iflytek.edu.hnezzhxy.model;

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;

import java.io.Serializable;
import java.sql.Timestamp;

/**
 * @version 1.0
 * @description 日志操作实体类
 * @create 2020/06/28 11:56
 */
@Accessors(chain = true)
@Data
@NoArgsConstructor
@AllArgsConstructor
public class ZsbmLog {
    /** 自增id **/
    private Integer id;
    /** 操作者ip **/
    private String operateIp;
    /** 操作时间 **/
    private Timestamp createTime;
    /** 具体操作 **/
    private String operateContent;
    /** 操作类型 **/
    private String operateType;

}

3.测试类这里只举例常用的

package com.iflytek.edu.hnezzhxy.controller;

import com.iflytek.edu.hnezzhxy.model.ZsbmLog;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import java.sql.Timestamp;

/**
 * @version 1.0
 * @description
 * @create 2020/07/02 13:11
 */
@RestController
public class TestController {

    @RequestMapping("/redis")
    public void test(){
        //使用了@NoArgsConstructor
        ZsbmLog log=new ZsbmLog();
        //使用了@AllArgsConstructor
        ZsbmLog log1=new ZsbmLog(1,"",new Timestamp(System.currentTimeMillis()),"","");
        //@Data中得set方法
        log.setId(1);
        //@Accessors(chain = true)
        log.setOperateType("测试").setOperateIp("1231312").setOperateContent("测试股").setOperateType("2");
        //@Data中得set方法
        System.out.println(log.getId());
    }
}

4.常用注解

@Data 注解在类上;提供类所有属性的 getting 和 setting 方法,此外还提供了equals、canEqual、hashCode、toString 方法
@Setter :注解在属性上;为属性提供 setting 方法
@Setter :注解在属性上;为属性提供 getting 方法
@Log4j :注解在类上;为类提供一个 属性名为log 的 log4j 日志对象
@NoArgsConstructor :注解在类上;为类提供一个无参的构造方法
@AllArgsConstructor :注解在类上;为类提供一个全参的构造方法
@Cleanup : 可以关闭流
@Builder : 被注解的类加个构造者模式
@Synchronized : 加个同步锁
@SneakyThrows : 等同于try/catch 捕获异常
@NonNull : 如果给参数加个这个注解 参数为null会抛出空指针异常
@Value : 注解和@Data类似,区别在于它会把所有成员变量默认定义为private final修饰,并且不会生成set方法
@Accessors(chain = true),在连续创建对象得时候不用每次都引用对象去set值

5.整合后运行代码不报错,但是发现idea不能编写get,set以及相关的构造器

6.解决办法
idea安装lombok插件

在这里插入图片描述

File-->Settings-->Plugins-->lombok

7.若是搜索不到lombok插件解决办法
去官网下载lombok,下载地址:
https://plugins.jetbrains.com/plugin/6317-lombok/versions
在这里插入图片描述
1.下载完成后
File–>Settings–>Plugins–>右上角的设置图标–>Install plugin from disk–>选择你下载的lombok安装包,然后安装重启idea就好了
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq_40974235/article/details/107084598