Spring Boot 集成 lombok 让代码更简洁

话不多说,先上图:

IDEA安装lombok插件

  1. IntelliJ IDEA
    • 定位到 File > Settings > Plugins
    • 点击 Browse repositories…
    • 搜索 Lombok Plugin
    • 点击 Install plugin
    • 重启 IDEA

Spring Boot项目中使用lombok

  1. 添加lombok依赖
    <!-- lombok代码简化 -->
    <dependency>
        <groupId>org.projectlombok</groupId>
        <artifactId>lombok</artifactId>
        <version>1.16.16</version>
        <scope>provided</scope>
    </dependency>
  1. 编写一个实体类进行测试
    @Data
    public class ConfigBean {

        private String name;
        private String think;
    }
  1. 编写一个控制类进行访问测试
    @RequestMapping(path = "/properties", method = RequestMethod.GET)
    public String configProperties() {
        return configBean.getName() + ":" + configBean.getThink();
    }

lombok 支持的注解:

val
Finally! Hassle-free final local variables.

@NonNull
or: How I learned to stop worrying and love the NullPointerException.

@Cleanup
Automatic resource management: Call your close() methods safely with no hassle.

@Getter/@Setter
Never write public int getFoo() {return foo;} again.

@ToString
No need to start a debugger to see your fields: Just let lombok generate a toString for you!

@EqualsAndHashCode
Equality made easy: Generates hashCode and equals implementations from the fields of your object..

@NoArgsConstructor, @RequiredArgsConstructor and @AllArgsConstructor
Constructors made to order: Generates constructors that take no arguments, one argument per final / non-nullfield, or one argument for every field.

@Data
All together now: A shortcut for @ToString, @EqualsAndHashCode, @Getter on all fields, and @Setter on all non-final fields, and @RequiredArgsConstructor!

@Value
Immutable classes made very easy.

@Builder
… and Bob’s your uncle: No-hassle fancy-pants APIs for object creation!

@SneakyThrows
To boldly throw checked exceptions where no one has thrown them before!

@Synchronized
synchronized done right: Don’t expose your locks.

@Getter(lazy=true)
Laziness is a virtue!

@Log
Captain’s Log, stardate 24435.7: “What was that line again?”


官网资料:https://projectlombok.org/features/all

猜你喜欢

转载自blog.csdn.net/jyg0723/article/details/77968712
今日推荐