mybatis框架,请求实体类中属性赋默认值的问题
最近在写代码的时候,遇到了一个这样的问题,那就是请求实体类中,新增加了一个字段,主要是通过这个字段来判断mybatis中的sql文件具体操作哪一张表,为了保护之前的代码,也为了以较少代价修改之前代码。我是这样写的:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | public class Person { private static final String DEFAULT_NAME_VALUE = "丫丫" ; private String name; //新增加的字段 private String hobby; //重写了新增加字段的get方法 public String getName() { return this .name == null || "" .equals( this .name) ? DEFAULT_NAME_VALUE : this .name; } public void setName(String name) { this .name = name; } public String getHobby() { return hobby; } public void setHobby(String hobby) { this .hobby = hobby; } } |
我这种写法虽然将功能实现了,但是写的还是不够美观。公司之前的有资历的同事看了我写的代码还是有一点点小小的失望,于是他经过了简单地修改,让我着实受益匪浅。
经过改正后的代码:
1 2 3 4 5 6 7 | @Setter <br> @Getter <br> public class Person { private static final String DEFAULT_NAME_VALUE = "丫丫" ; private String name = DEFAULT_NAME_VALUE; //新增加的字段 private String hobby; } |
这样写的好处是:代码量明显减少了,看着也比价清晰,思路一下子明确了。同样也不会影响到我们后期给新增加的name属性进行set操作和get操作,如果我们对name属性没有赋值,那么name属性默认取得就是DEFAULT_NAME_VALUE的值。
分类:
mybatis框架
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
2020-03-05 事务传播机制Propagation.REQUIRES_NEW