- 浏览: 497880 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (563)
- 工作经验 (12)
- 数据库 (13)
- Servlet (10)
- Struts2 (1)
- Spring (25)
- Eclipse (5)
- Hibernate (5)
- Eclips (8)
- HTTP (7)
- J2EE (21)
- EHcache (1)
- HTML (11)
- 工具插件使用 (20)
- JPA (2)
- 杂谈 (17)
- 数据结构与算法 (3)
- Cloud Foundry (1)
- 安全 (10)
- J2SE (57)
- SQL (9)
- DB2 (6)
- 操作系统 (2)
- 设计模式 (1)
- 版本代码管理工具 (13)
- 面试 (10)
- 代码规范 (3)
- Tomcat (12)
- Ajax (5)
- 异常总结 (11)
- REST (2)
- 云 (2)
- RMI (3)
- SOA (1)
- Oracle (12)
- Javascript (20)
- jquery (7)
- JSP自定义标签 (2)
- 电脑知识 (5)
- 浏览器 (3)
- 正则表达式 (3)
- 建站解决问题 (38)
- 数据库设计 (3)
- git (16)
- log4j (1)
- 每天100行代码 (1)
- socket (0)
- java设计模式 耿祥义著 (0)
- Maven (14)
- ibatis (7)
- bug整理 (2)
- 邮件服务器 (8)
- Linux (32)
- TCP/IP协议 (5)
- java多线程并发 (7)
- IO (1)
- 网页小工具 (2)
- Flash (2)
- 爬虫 (1)
- CSS (6)
- JSON (1)
- 触发器 (1)
- java并发 (12)
- ajaxfileupload (1)
- js验证 (1)
- discuz (2)
- Mysql (14)
- jvm (2)
- MyBatis (10)
- POI (1)
- 金融 (1)
- VMWare (0)
- Redis (4)
- 性能测试 (2)
- PostgreSQL (1)
- 分布式 (2)
- Easy UI (1)
- C (1)
- 加密 (6)
- Node.js (1)
- 事务 (2)
- zookeeper (3)
- Spring MVC (2)
- 动态代理 (3)
- 日志 (2)
- 微信公众号 (2)
- IDEA (1)
- 保存他人遇到的问题 (1)
- webservice (11)
- memcached (3)
- nginx (6)
- 抓包 (1)
- java规范 (1)
- dubbo (3)
- xwiki (1)
- quartz (2)
- 数字证书 (1)
- spi (1)
- 学习编程 (6)
- dom4j (1)
- 计算机系统知识 (2)
- JAVA系统知识 (1)
- rpcf (1)
- 单元测试 (2)
- php (1)
- 内存泄漏cpu100%outofmemery (5)
- zero_copy (2)
- mac (3)
- hive (3)
- 分享资料整理 (0)
- 计算机网络 (1)
- 编写操作系统 (1)
- springboot (1)
最新评论
-
masuweng:
亦论一次OutOfMemoryError的定位与解错 -
变脸小伙:
引用[color=red][/color]百度推广中运用的技术 ...
Spring 3 mvc中返回pdf,json,xml等不同的view -
Vanillva:
不同之处是什么??
Mybatis中的like查询 -
thrillerzw:
转了。做个有理想的程序员
有理想的程序员必须知道的15件事 -
liujunhui1988:
觉得很有概括力
15 个必须知道的 Java 面试问题(2年工作经验)
源:http://himichaelchu.iteye.com/blog/2124349
评:
LomBok 的相关目录已经整理出来,希望大家可以根据需求自助学习,好工具要大家分享:
@Cleanup
@Getter, @Setter
@ToString
@EqualsAndHashCode
@Constructor
@Data & @Value
@SneakyThrows
@Synchronized
@Getter(lazy=true)
@Log
很多时候我们进行一些探索和功能验证的时候,需要用到当前对象的toString方法,尤其是在进行xml解析,json解析这样的功能验证的时候,之前工作中就遇到过需要解析xml 和json,如果每次验证都启动tomcat的话会非常的消耗时间,所以索性直接Override toString方法,然后测试功能。
对于重写toString方法这件事大多数的做法都是把变量按照顺序,用提示语句区分,逐个打印出来,不知道屏幕前的小伙伴有多少为了这样事情苦恼的。因为写这样的代码实在头疼,又要关注拼接字符串的格式。在Lombok中,一个@ToString annotation很好的解决了这个问题。让我们一起来看一个例子:
我们的代码经常这样:
Java代码 收藏代码
import java.util.Arrays;
public class ToStringExample {
private static final int STATIC_VAR = 10;
private String name;
private Shape shape = new Square(5, 10);
private String[] tags;
private int id;
public String getName() {
return this.getName();
}
public static class Square extends Shape {
private final int width, height;
public Square(int width, int height) {
this.width = width;
this.height = height;
}
@Override public String toString() {
return "Square(super=" + super.toString() + ", width=" + this.width + ", height=" + this.height + ")";
}
}
@Override public String toString() {
return "ToStringExample(" + this.getName() + ", " + this.shape + ", " + Arrays.deepToString(this.tags) + ")";
}
}
其实,我们的代码可以这样:
Java代码 收藏代码
import lombok.ToString;
@ToString(exclude="id")
public class ToStringExample {
private static final int STATIC_VAR = 10;
private String name;
private Shape shape = new Square(5, 10);
private String[] tags;
private int id;
public String getName() {
return this.getName();
}
@ToString(callSuper=true, includeFieldNames=true)
public static class Square extends Shape {
private final int width, height;
public Square(int width, int height) {
this.width = width;
this.height = height;
}
}
}
这样的方便方式节省了好多拼接字符串的功夫。
lombok.toString.includeFieldNames = [true | false] (default: true)
是否包含field的信息,如果值为true ,则可以在toString方法中给出field 的name。
lombok.toString.doNotUseGetters = [true | false] (default: false)
如果值为true,则Lombok会直接获取field 而不是通过get方法获取值。
评:
LomBok 的相关目录已经整理出来,希望大家可以根据需求自助学习,好工具要大家分享:
@Cleanup
@Getter, @Setter
@ToString
@EqualsAndHashCode
@Constructor
@Data & @Value
@SneakyThrows
@Synchronized
@Getter(lazy=true)
@Log
很多时候我们进行一些探索和功能验证的时候,需要用到当前对象的toString方法,尤其是在进行xml解析,json解析这样的功能验证的时候,之前工作中就遇到过需要解析xml 和json,如果每次验证都启动tomcat的话会非常的消耗时间,所以索性直接Override toString方法,然后测试功能。
对于重写toString方法这件事大多数的做法都是把变量按照顺序,用提示语句区分,逐个打印出来,不知道屏幕前的小伙伴有多少为了这样事情苦恼的。因为写这样的代码实在头疼,又要关注拼接字符串的格式。在Lombok中,一个@ToString annotation很好的解决了这个问题。让我们一起来看一个例子:
我们的代码经常这样:
Java代码 收藏代码
import java.util.Arrays;
public class ToStringExample {
private static final int STATIC_VAR = 10;
private String name;
private Shape shape = new Square(5, 10);
private String[] tags;
private int id;
public String getName() {
return this.getName();
}
public static class Square extends Shape {
private final int width, height;
public Square(int width, int height) {
this.width = width;
this.height = height;
}
@Override public String toString() {
return "Square(super=" + super.toString() + ", width=" + this.width + ", height=" + this.height + ")";
}
}
@Override public String toString() {
return "ToStringExample(" + this.getName() + ", " + this.shape + ", " + Arrays.deepToString(this.tags) + ")";
}
}
其实,我们的代码可以这样:
Java代码 收藏代码
import lombok.ToString;
@ToString(exclude="id")
public class ToStringExample {
private static final int STATIC_VAR = 10;
private String name;
private Shape shape = new Square(5, 10);
private String[] tags;
private int id;
public String getName() {
return this.getName();
}
@ToString(callSuper=true, includeFieldNames=true)
public static class Square extends Shape {
private final int width, height;
public Square(int width, int height) {
this.width = width;
this.height = height;
}
}
}
这样的方便方式节省了好多拼接字符串的功夫。
lombok.toString.includeFieldNames = [true | false] (default: true)
是否包含field的信息,如果值为true ,则可以在toString方法中给出field 的name。
lombok.toString.doNotUseGetters = [true | false] (default: false)
如果值为true,则Lombok会直接获取field 而不是通过get方法获取值。
发表评论
-
BeanCopier系列之一:特性测试
2018-06-12 12:15 406源:http://czj4451.iteye.com/ ... -
extends和super的区别
2018-01-14 19:05 545源:http://bbs.csdn.net/topics/38 ... -
double转BigDecimal,数变大
2017-09-09 14:02 574源:http://blog.csdn.net/linbrain ... -
循环依赖检测方法 spring源码方法
2016-07-06 18:58 1118场景:checkForAliasCircle(name, al ... -
Oracle模糊查询之(4.采用全文索引解决模糊查询,给出具体步骤)采用全文索引解决模糊查询速度慢的问题[主文]
2016-03-24 16:16 826源:http://blog.csdn.net/haiross/ ... -
理解和正确使用Java中的断言(assert)
2016-03-24 15:55 1033源:http://blog.csdn.net/leic ... -
string stringbuffer stringbuilder区别
2016-03-07 15:39 426string 是不可变类,内部数据结构为final char数 ... -
接口和抽象类有什么区别
2015-11-27 15:58 414源:http://m.blog.csdn.net/bl ... -
Java中Enum类型的序列化
2015-11-25 14:57 1211源:http://mysun.iteye.com/blog/1 ... -
serialVersionUID的作用
2015-11-08 15:27 542源:http://www.cnblogs.com/gu ... -
dom4j写xml时&会被转义成&的解决方法?
2015-09-08 20:52 917源:http://www.iteye.com/problems ... -
java ImageIO处理图像的封装
2015-09-06 10:17 346源:http://blog.csdn.net/hu_sheng ... -
XML 和 java对象相互转换
2015-08-17 16:45 0源:http://hbiao68.iteye.com/blog ... -
java 版本更迭
2015-08-03 10:19 565源:https://en.wikipedia.org/wiki ... -
谈抽象类与接口的区别之一
2015-04-23 11:46 512源:http://wenku.baidu.com/li ... -
Java基本数据类型
2015-04-17 14:57 658源:http://blog.csdn.net/zuolongs ... -
JAVA深复制(深克隆)与浅复制(浅克隆)
2015-04-17 14:23 411源:http://www.cnblogs.com/yxnchi ... -
java中的四种访问权限是?
2015-04-16 17:58 526源:http://zhidao.baidu.com/link? ... -
DMA Direct Memory Access(存储器直接访问)
2015-04-02 15:55 532源:http://baike.baidu.com/li ... -
HmacMD5 调通 java与ios端
2015-04-02 15:53 903见 github代码 https://github.com/m ...
相关推荐
重写toString和equals方法的意义以及方法
也可以减少一些 get/set/toString 方法的编写,虽说 IDEA 的插件可以自动生成 get/set/toString 方法,但是使用 Lombok 可以让代码更简洁。 下面看看如何在 IDEA 中如何安装 Lombok: 安装 打开 IDEA 的 ...
Lombok能通过注解的方式,在编译时自动为属性生成构造器、getter/setter、equals、hashcode、toString方法。出现的神奇就是在源码中没有getter和setter方法,但是在编译生成的字节码文件中有getter和setter方法。...
无参构造器、部分参数构造器、全参构造器,当我们需要重载多个构造器的时候,Lombok就无能为力了。 @Data @ToString, @EqualsAndHashCode, 所有属性的@Getter, 所有non-final属性的@Setter和@...
Lombok能通过注解的方式,在编译时自动为属性生成构造器、getter/setter、equals、hashcode、toString方法。出现的神奇就是在源码中没有getter和setter方法,但是在编译生成的字节码文件中有getter和setter方法。...
修改过源码的mybatis-generator代码生成器,去除mapper.xml里面的冗余字段,去除domain实体类中的冗余getset方法,改用lombok的@getter@setter@toString标签, ,内附安装破解教程, 小白可用, 一套清爽的改编版逆向工程...
lombok通过注解消除实际开发中的样板式代码 样板式代码:getter、setter方法,重写toString、equals方法等,这些代码没有什么技术含量,但是常常要写,因此得名。
Lombok项目是一个java库,它可以自动插入到编辑器和构建工具中,增强java的性能。不需要再写getter、setter或equals方法,只要有一个注解,你的类就有一个功能齐全的构建器、自动记录变量等等。 Lombok常用注解编辑...
在项目中使用Lombok可以减少很多重复代码的书写。比如说getter/setter/toString等方法的编写。
Lombok 是一个 Java 库,它通过使用注解来消除样板代码(boilerplate code),从而简化 Java 类的开发过程。使用 Lombok 可以让开发者在编写 Java 类时减少冗长的代码,提高代码的可读性和可维护性。 Lombok 提供了...
在项目中使用Lombok可以减少很多重复代码的书写。比如说getter/setter/toString等方法的编写。
Lombok能通过注解的方式,在编译时自动为属性生成构造器、getter/setter、equals、hashcode、toString方法。出现的神奇就是在源码中没有getter和setter方法,但是在编译生成的字节码文件中有getter和setter方法。...
Lombok是一种java工具,通过Lombok里面提供的注解,我们不用写get,set,toString等方法,简化我们的开发量. 官网地址:https://www.projectlombok.org/ 例如:QueryResult实体类,并没有写get,set和toString方法,而是打了...
Lombok能通过注解的方式,在编译时自动为属性生成构造器、getter/setter、equals、hashcode、toString方法。出现的神奇就是在源码中没有getter和setter方法,但是在编译生成的字节码文件中有getter和setter方法。...
idea插件,使用了lombok的注解(@Setter,@Getter,@ToString,@@RequiredArgsConstructor,@EqualsAndHashCode或@Data)之后,就不需要编写或生成get/set等方法,很大程度上减少了代码量
Lombok想要解决了的是在我们实体Bean中大量的Getter/Setter方法,以及toString, hashCode等可能不会用到,但是某些时候仍然需要复写,以期方便使用的方法;在使用Lombok之后,将由其来自动帮你实现代码生成,注意,...
我们在写数据库表的映射类的时候,需要写很多的getter/setter方法,我们可以使用Lombok这个jar包中的注解来简化开发。 @Data : 注解在类上, 为类提供读写属性, 此外还提供了 equals()、hashCode()、toString() 方法 ...
@Data 注解在类上面,省略所有的get set equal toString方法 2 @Getter 注解在属性上,省略所有get方法 3 @Setter 注解在属性上,省略所有的set方法 4 @NoArgsConstructor注解类上,提供无参构造 5 @...
在项目中使用Lombok可以减少很多重复代码的书写。比如说getter/setter/toString等方法的编写。