Lombok

标记接口,注解和注解处理器的前世今生

半腔热情 提交于 2020-10-22 11:40:47
简介 相信大部分的开发者都用过注解,尤其是对使用过Spring的开发者来说,注解是现代Spring中不可获取的一部分。Spring从最开始的xml配置到后面的注解配置,不论是从编程习惯还是项目的构建,都对我们程序员产生了非常重要的影响。 除了使用Spring自带的注解之外,我们还可以自定义注解。然后通过AOP来对注解进行拦截从而处理相应的业务逻辑。 除了Spring之外,其实JDK本身自带注解,本文将会深入探讨注解的起源和两种不同的使用方式。 更多精彩内容且看: 区块链从入门到放弃系列教程-涵盖密码学,超级账本,以太坊,Libra,比特币等持续更新 Spring Boot 2.X系列教程:七天从无到有掌握Spring Boot-持续更新 Spring 5.X系列教程:满足你对Spring5的一切想象-持续更新 java程序员从小工到专家成神之路(2020版)-持续更新中,附详细文章教程 更多内容请访问 www.flydean.com 注解的起源和marker interfaces 先看一个最简单的注解: @CustUserAnnotation public class CustUser { } 上面我们将CustUser标记为一个自定义的注解@CustUserAnnotation。 注解其实是在JDK 5中引入的。那么在JDK 5之前,注解是用什么方式来表示的呢

推荐3个开源的快速开发平台,前后端都有,项目经验又有着落了!

余生长醉 提交于 2020-10-22 10:08:14
来源:我是程序汪 经常性逛github,发现了一些优秀的开源项目,其中的框架及代码非常不错,现在给大家推荐三个快速开发平台。 第一套系统:Jeecg-boot快速开发平台 前端采用阿里的ant-design-vue,兼容PC端、手机端、Pad端。 开发环境 语言:Java 8 IDE(JAVA):IDEA / Eclipse安装lombok插件 IDE(前端):WebStorm 或者 IDEA 依赖管理:Maven 数据库:MySQL5.7+ & Oracle 11g & Sqlserver2017 缓存:Redis 后端 基础框架:Spring Boot 2.1.3.RELEASE 持久层框架:Mybatis-plus_3.1.2 安全框架:Apache Shiro 1.4.0,Jwt_3.7.0 数据库连接池:阿里巴巴Druid 1.1.10 缓存框架:redis 日志打印:logback 其他:fastjson,poi,Swagger-ui,quartz, lombok(简化代码)等。 前端 Vue 2.6.10,Vuex,Vue Router Axios ant-design-vue webpack,yarn vue-cropper - 头像裁剪组件 @antv/g2 - Alipay AntV 数据可视化图表 Viser-vue - antv/g2 封装实现 eslint

从零开始的SpringBoot前后端分离入门级项目(二)

北城余情 提交于 2020-10-22 08:46:53
导航栏 正文 编写启动类及配置文件 启动类 配置文件 启动测试 搭建项目的基本框架 统一请求返回体(统一请求响应体) CommonResult 约定状态码 分页结果类 全局异常处理类 GlobalException 正文 上回我们已经将项目创建好并且引入了本次项目所需要用到的依赖,这次我们就正式进入项目的编写 编写启动类及配置文件 启动类 在java文件夹下新建两级目录并创建MainApplication.class 按照上述步骤创建并编写完启动类后就可以开始配置文件的创建了。 配置文件 在resources目录下创建application.yml作为SpringBoot的配置文件 server: port: 8090 #监听端口为8090 spring: datasource: type: com.alibaba.druid.pool.DruidDataSource #配置数据库连接池为Druid driver-class-name: com.mysql.cj.jdbc.Driver #配置数据库 username: 数据库用户名 password: 数据库登录密码 url: jdbc:mysql://127.0.0.1:3306/数据库名?useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai

lombok基本使用

吃可爱长大的小学妹 提交于 2020-10-21 17:03:22
lombok是一款在java开发中简洁化代码十分有用的插件工具,这篇博客对较为常用的几种注解进行记录,分享学习心得。 使用lombok注解,目的和作用就在于不用再去写经常反复去写的(如Getter,Setter,Constructor等)一些代码了。 首先,用到的几个注解: @Data 使用这个注解,就不用再去手写Getter,Setter,equals,canEqual,hasCode,toString等方法了,注解后在编译时会自动加进去。 @AllArgsConstructor 使用后添加一个构造函数,该构造函数含有所有已声明字段属性参数 @NoArgsConstructor 使用后创建一个无参构造函数 @Builder 关于Builder较为复杂一些,Builder的作用之一是为了解决在某个类有很多构造函数的情况,也省去写很多构造函数的麻烦,在设计模式中的思想是: 用一个内部类去实例化一个对象,避免一个类出现过多构造函数。 然后,通过一个简单的代码例子说明: 首先,建立一个简单的类,并用lombok进行注解:注意这是注解前的代码,可以与后面贴出的注解生成的代码进行比较 @Data //生成getter,setter等函数 @AllArgsConstructor //生成全参数构造函数 @NoArgsConstructor//生成无参构造函数 @Builder public

java的内部类和静态内部类(嵌套类)

大憨熊 提交于 2020-10-15 19:50:45
背景 开发新项目,写Swager的mode的时候用到了嵌套Model,于是在代码中,出现了静态内部类。在codeReview的时候稍微和大家聊了一下。尤其是Static 修饰类和修饰对象和变量不一样呢? 定义 1. 内部类 可以将一个类的定义放在另一个类的定义内部,这就是内部类; 嵌套类是其封闭类的成员。非静态嵌套类(内部类)可以访问封闭类的其他成员,即使它们被声明为私有的也是如此。静态嵌套类无权访问封闭类的其他成员。为一体的一个部件OuterClass,一个嵌套类可以声明private,public,protected,或包专用。(回想一下,只能声明外部类public或将其包装为私有。) 2. 静态内部类 再一个普通类里面,给内部类加上static关键字的修饰; 与类方法和变量一样,静态嵌套类与其外部类相关联。与静态类方法一样,静态嵌套类不能直接引用其封闭类中定义的实例变量或方法:它只能通过对象引用来使用它们。(就和两个普通不同的类之间的使用) 3. 两者的区别 内部类只是外部类的成员变量,通俗讲,就是你只能通过先调用外部类才能去拿到这个类(但是这是和组合还是有区别的)。 但是静态内部类就像是一个普通类一样。可以直接调用,直接去new对象。 4. Java 拥有嵌套类有什么作用呢? 这是一种对仅在一个地方使用的类进行逻辑分组的方法:如果一个类仅对另一个类有用

Spring Boot 使用 Maven 定制一个 parent 简化开发

血红的双手。 提交于 2020-10-15 06:43:02
1/ 场景 有很多小应用,有一些公共的特点,比如说都依赖了spring-boot、log4j2、lombok、fastjson等等,为了方便开发,可以使用Maven定制一个parent来简化开发,统一管理第三方依赖的版本。(为后续的微服务做准备哦!) 2/ 构建 parent 2.1. 新建一个Maven工程,any-root。 2.2. 修改pom.xml,添加父工程的依赖,基本上子工程都会用到这些依赖。 <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>cn.ictgu</groupId> <artifactId>any-root</artifactId> <version>1.0.RELEASE</version> <packaging>pom<

Android Studio使用lombok

陌路散爱 提交于 2020-10-15 02:21:31
参考:https://github.com/mplushnikov/lombok-intellij-plugin 使用@Setter/@Getter时,刚开始在Structure的函数列表里没有生成响应的函数,且调用set/get的地方也报红,但编译OK。 按网上的说法操作后还是不行,最后卸载lombok插件后重新安装就OK了。 来源: oschina 链接: https://my.oschina.net/igiantpanda/blog/4483311