• SpringBoot2.0---------------6、SpringBoot开发小技巧


    1.最佳实践

    1)引入场景依赖,各个场景的依赖使用可参考官方文档的引入方式

    2)查看自动配置了那些:第一种方法:自己分析,引入场景对应的自动配置都生效了;第二种方法,在application.properties配置文件里写debug=true进行查看,Negative都是不生效的自动配置,positive是生效的自动配置。

    3)是否需要修改:
    ● 参照文档修改配置项:第一种,根据Springboot官方文档中的Application Properties描述进行配置;第二种,自己分析,查询xxxProperties绑定了配置文件的那些进行配置。
    ● 自定义加入或替换组件:@Bean、@Component…

    2. 开发技巧

    2.1 Lombok简化JavaBean开发

    开发JavaBean时,需要写get、set方法、添加有参无参构造器以及重写toString比较麻烦。通过Lombok可以简化JavaBean开发。

    1)在配置文件pom.xml中引入Lombok插件依赖

    <dependency>
        <groupId>org.projectlombokgroupId>
        <artifactId>lombokartifactId>
    dependency>
    
    • 1
    • 2
    • 3
    • 4

    2)安装插件:File-------->Setting-------->Plugins搜索lombok并安装插件;在IDEA2021中已经自动集成不需要安装。

    3)使用注解完成有参无参构造、get和set方法、toString重写

    @AllArgsConstructor//有参构造器(全参数)
    @NoArgsConstructor//无参构造器
    @Data//get、set方法
    @ToString//toString
    public class Pet {
        private String name;
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    @AllArgsConstructor注解:用于完成有参构造
    @NoArgsConstructor注解:用于完成无参构造
    @Data注解:对类中参数生成get和set方法
    @ToString注解:完成toString方法的重写

    @Data
    //@AllArgsConstructor
    @NoArgsConstructor
    @ToString
    @EqualsAndHashCode
    public class User {
        private String name;
        private Integer age;
        private Pet pet;
        
        public User(String name,Integer age){
            this.name=name;
            this.age=age;
        }
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15

    在有参构造中,如果只是对部分参数进行有参构造,则取消使用有参构造注解,自己根据需要完成有参构造。

    简化日志开发:使用@Slf4j注解,就可以在代码中直接使用log.info( ) 打印日志

    @Slf4j
    @RestController
    public class HelloController {
        @RequestMapping("/hello")
        public String handle01(@RequestParam("name") String name){
            
            log.info("请求进来了....");
            
            return "Hello, Spring Boot 2!"+"你好:"+name;
        }
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11

    2.2 Developer Tools 开发者工具—热更新(热部署需要安装JRebel)

    spring-boot-devtools 是一个为开发者服务的一个模块,其中最重要的功能就是自动应用代码更改到最新的App上面去,即在我们改变了一些代码或者配置文件的时候,应用可以自动重启进行更新。参考官方文档Developer Tools,需要在pom.xml引入对应依赖:

        <dependency>
            <groupId>org.springframework.bootgroupId>
            <artifactId>spring-boot-devtoolsartifactId>
            <optional>trueoptional>
        dependency>
    
    • 1
    • 2
    • 3
    • 4
    • 5

    引入该插件后,如果对项目内容进行更改,只需要按Ctrl+F9就可实时生效。

    2.3 Spring Initailizr(项目初始化向导)

    Spring Initailizr可以快速创建出SpringBoot项目的架构,使得开发者后续只需要关注业务逻辑的开发。使用教程如下:

    1)File----->New------>Project------>选择Spring Initailizr进行配置(如图)---->Next
    在这里插入图片描述
    2)Springboot版本选择及项目所需场景配置,如图
    在这里插入图片描述

    在这里插入图片描述
    3)最后Finish完成Springboot项目创建,创建好的Springboot还需要进行一些配置修改,如使用的maven是idea里面默认版本,需要修改为自己配置的maven以提高访问速度,创建好的项目如下
    在这里插入图片描述

  • 相关阅读:
    从尾到头打印链表
    软件测试面试经验分享,真实面试题
    sqllab第十七关通关笔记
    Linux shell的展开模式【实操演示】
    Qt使用Cmake编译时自定义控件找不到的问题
    【kafka】二、kafka安装
    【排序算法】插入排序(希尔排序)
    98%的人都不会使用这6种地图可视化方法,学会直接涨薪5K
    【新版】系统架构设计师 - 未来信息综合技术
    synchronized锁升级过程
  • 原文地址:https://blog.csdn.net/lyy_sss/article/details/126147989