发射实现tostring方法

发射实现tostring方法

ID:16860180

大小:14.57 KB

页数:4页

时间:2018-08-25

发射实现tostring方法_第1页
发射实现tostring方法_第2页
发射实现tostring方法_第3页
发射实现tostring方法_第4页
资源描述:

《发射实现tostring方法》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、在Java的开发过程中,编写对应数据库表信息的entity是必须的,很多时候为了调试我们很有必要重写entity的toString方法,为我们返回有用的entity信息,一般是希望输出entity的属性名对应的属性值。toString方法可以是这个样子的:@OverridepublicStringtoString(){return"username:"+this.getUsername()+"&age:"+this.getAge();}没什么,无非是手动拼装一把而已。不过有的时候项目大了,几百个entity都去手动拼装一把,实在有点让人心烦,更

2、何况有些变态的entity一来就是百十个属性,对于这种情况,这样拼装无疑是枯燥而且耗时的。有没有简单一点的方法呢?小弟近来想到一个比较拙劣的方法,分享一把,有需要的可以看看,一个简单的工具类:packagecom.huawei.zhangbo;importjava.lang.reflect.Field;importjava.lang.reflect.Method;publicclassToStringUtil{publicstaticStringtoString(Entityentity,String...fieldName){Classcls

3、=entity.getClass();StringBufferbuffer=newStringBuffer(cls.getSimpleName()+":");try{//不获取私有方法Method[]methods=cls.getMethods();if(null!=fieldName&&fieldName.length!=0){for(Methodmethod:methods){Stringmn=method.getName();for(Stringfn:fieldName){20currencydeposit,weprescribeapas

4、sonaregularbasis,qilucardaccountonaregularbasis),certificatebondsandsavingsbonds(electronic);3.notdrawnonabanksavingscertificate,certificatebondsapplyformortgageloans,acceptingonlythelenderif(mn.equalsIgnoreCase("get"+fn)){Stringvalue=method.invoke(entity).toString();buffer.

5、append(mn+"="+value+"&");}}}}else{//得到所有fieldField[]fields=cls.getDeclaredFields();for(Methodmethod:methods){Stringmn=method.getName();for(Fieldfield:fields){Stringname=field.getName().toString();if(mn.equalsIgnoreCase("get"+name)){Stringvalue=method.invoke(entity).toString(

6、);buffer.append(name+"="+value+"&");}}}}}catch(Exceptione){e.printStackTrace();}returnbuffer.substring(0,buffer.length()-1).toString();}}小小的解释一把,非常简单,该方法有两个参数,Entity,String...,Entity是我自己写的一个空接口,和Serializable接口一样起一个标识的作用,标识实体类,很明显如果你的实体类不实现这个接口就不能使用我的工具类。我这样搞有我20currencydepos

7、it,weprescribeapassonaregularbasis,qilucardaccountonaregularbasis),certificatebondsandsavingsbonds(electronic);3.notdrawnonabanksavingscertificate,certificatebondsapplyformortgageloans,acceptingonlythelender的理由,如果闲麻烦完全可以用Object取代之。第二个参数String...,即String类型的参数,这样的写法具有灵活性,你可以不传

8、这个参数,也可以传一个或者多个,最终Java会把你的参数封装成String类型的数组,为什么不直接传String类型的数组,还搞这些花里胡哨的,已经说

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。