热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

java如何自己写基类_一个实体类基类实现

为了观察变量方便,我们通常会重写实体类模型的toString方法,可是每一个类都写。有些冗余。事实上,能够这样子:packa

为了观察变量方便,我们通常会重写实体类模型的toString方法,可是每一个类都写。有些冗余。

事实上,能够这样子:

package others;

import java.io.Serializable;

import java.lang.reflect.Field;

import org.apache.commons.lang3.builder.ToStringBuilder;

/**

* 重写toString()的实体类基类

* @author limenghua

*

*/

public class BaseEntity implements Serializable {

private static final long serialVersionUID = 4861363281663993175L;

/**

* toString

* 打印演示样例:synchronizedtest.Account@768965fb[name=张三, ,amount=500.0, ]

*/

@Override

public String toString() {

ToStringBuilder builder = new ToStringBuilder(this);

Field[] fields = this.getClass().getDeclaredFields();

try {

for (Field f : fields) {

f.setAccessible(true);

builder.append(f.getName(), f.get(this)).append("\n");

}

} catch (Exception e) { // Suppress

builder.append("toString builder encounter an error");

}

return builder.toString();

}

}实体类继承这个类就可以:

public class Account extends BaseModel{……}

或者,我们能够用一种更加简单的方式写基类:

import org.apache.commons.lang3.builder.ToStringBuilder;

import org.apache.commons.lang3.builder.ToStringStyle;

import java.io.Serializable;

/**

* 重写toString()的实体类基类

*

* @author limenghua

*/

public class BaseModel implements Serializable {

private static final long serialVersionUID = 4861363281663993175L;

/**

* toString

* 打印演示样例:Account@768965fb[

* name=张三

* amount=500.0

* ]

*/

@Override

public String toString() {

return ToStringBuilder.reflectionToString(this,

ToStringStyle.MULTI_LINE_STYLE);

}

}

打印效果:

6e25bcb14b3e23973fa166986fbfde58.png



推荐阅读
  • 本文详细介绍了 `org.apache.tinkerpop.gremlin.structure.VertexProperty` 类中的 `key()` 方法,并提供了多个实际应用的代码示例。通过这些示例,读者可以更好地理解该方法在图数据库操作中的具体用途。 ... [详细]
  • 问题场景用Java进行web开发过程当中,当遇到很多很多个字段的实体时,最苦恼的莫过于编辑字段的查看和修改界面,发现2个页面存在很多重复信息,能不能写一遍?有没有轮子用都不如自己造。解决方式笔者根据自 ... [详细]
  • Maven + Spring + MyBatis + MySQL 环境搭建与实例解析
    本文详细介绍如何使用MySQL数据库进行环境搭建,包括创建数据库表并插入示例数据。随后,逐步指导如何配置Maven项目,整合Spring框架与MyBatis,实现高效的数据访问。 ... [详细]
  • Beetl是一款先进的Java模板引擎,以其丰富的功能、直观的语法、卓越的性能和易于维护的特点著称。它不仅适用于高响应需求的大型网站,也适合功能复杂的CMS管理系统,提供了一种全新的模板开发体验。 ... [详细]
  • spring boot使用jetty无法启动 ... [详细]
  • 使用TabActivity实现Android顶部选项卡功能
    本文介绍如何通过继承TabActivity来创建Android应用中的顶部选项卡。通过简单的步骤,您可以轻松地添加多个选项卡,并实现基本的界面切换功能。 ... [详细]
  • 二维码的实现与应用
    本文介绍了二维码的基本概念、分类及其优缺点,并详细描述了如何使用Java编程语言结合第三方库(如ZXing和qrcode.jar)来实现二维码的生成与解析。 ... [详细]
  • JUnit下的测试和suite
    nsitionalENhttp:www.w3.orgTRxhtml1DTDxhtml1-transitional.dtd ... [详细]
  • 一、Advice执行顺序二、Advice在同一个Aspect中三、Advice在不同的Aspect中一、Advice执行顺序如果多个Advice和同一个JointPoint连接& ... [详细]
  • 本文将详细介绍如何使用Java编程语言生成指定数量的不重复随机数,包括具体的实现方法和代码示例。适合初学者和有一定基础的开发者参考。 ... [详细]
  • 本文详细介绍了 Java 中 org.apache.jena.atlas.lib.ByteBufferLib 类下的 acopyArray 方法,并提供了多个实际应用中的代码示例,帮助开发者更好地理解和使用该方法。 ... [详细]
  • 本文探讨了如何通过Service Locator模式来简化和优化在B/S架构中的服务命名访问,特别是对于需要频繁访问的服务,如JNDI和XMLNS。该模式通过缓存机制减少了重复查找的成本,并提供了对多种服务的统一访问接口。 ... [详细]
  • Android与JUnit集成测试实践
    本文探讨了如何在Android项目中集成JUnit进行单元测试,并详细介绍了修改AndroidManifest.xml文件以支持测试的方法。 ... [详细]
  • importjava.io.*;importjava.util.*;publicclass五子棋游戏{staticintm1;staticintn1;staticfinalintS ... [详细]
  • 本文详细介绍了如何利用 Bootstrap Table 实现数据展示与操作,包括数据加载、表格配置及前后端交互等关键步骤。 ... [详细]
author-avatar
手机用户2502903557
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有