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的值。

posted on   ~码铃薯~  阅读(1408)  评论(0编辑  收藏  举报

相关博文:
阅读排行:
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
历史上的今天:
2020-03-05 事务传播机制Propagation.REQUIRES_NEW

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5
点击右上角即可分享
微信分享提示