java中boolean布尔变量的命名规范isget

本文讨论了Java中POJO类中布尔变量不应使用is前缀的规约,以避免部分框架在反序列化时引发错误。当定义如`isDeleted`这样的布尔属性时,可能导致框架解析出错,无法正确获取`deleted`属性。解决方案是在`<resultMap>`中设置映射关系,确保正确序列化和反序列化。

【强制】POJO 类中的任何布尔类型的变量,都不要加 is 前缀,否则部分框架解析会引起序列

化错误。
 
说明:在本文 MySQL 规约中的建表约定第一条,表达是与否的变量采用 is_xxx 的命名方式,所以,需要 在<resultMap>设置从 is_xxx 到 xxx 的映射关系。
反例:义为基本数据类型 Boolean isDeleted 的属性,它的方法也是 isDeleted(),框架在反向解析的时 候,“误以为”对应的属性名称是 deleted,导致属性获取不到,进而抛出异常。
Java 中,布尔类型的变量可以通过基本数据类型 `boolean` 或者其包装类 `Boolean` 来进行声明。布尔类型主要用于表示逻辑上的“真”或“假”,即 `true` 或 `false` 两个值。 ### 声明布尔变量的方法 1. **使用基本数据类型 `boolean`** 这是最常见的声明布尔变量的方式,适用于大多数逻辑判断场景。 ```java boolean flag = true; ``` 2. **使用包装类 `Boolean`** 适用于需要将布尔值作为对象处理的场景,例如集合类中或需要使用泛型时。 ```java Boolean isActive = false; ``` ### 布尔变量命名规范 在定义布尔变量时,建议使用有意义的命名,通常以描述某种状态或条件的词语开头,例如 `isReady`、`hasPermission`、`shouldRetry` 等,这样可以增强代码的可读性。 ```java boolean isReady = false; Boolean hasPermission = true; ``` ### 在类中定义布尔属性的注意事项 在 Java 实体类中定义布尔类型的属性时,需要注意命名与 getter 方法的一致性。若使用基本类型 `boolean`,则 getter 方法通常以 `is` 开头;而使用包装类 `Boolean` 时,则通常以 `get` 开头[^2]。 示例如下: ```java public class User { private boolean active; private Boolean verified; public boolean isActive() { return active; } public void setActive(boolean active) { this.active = active; } public Boolean getVerified() { return verified; } public void setVerified(Boolean verified) { this.verified = verified; } } ``` ### 应用场景建议 - 如果变量不会为 `null`,并且对性能有较高要求,推荐使用 `boolean`。 - 如果需要支持 `null` 值(例如数据库中可能为 `NULL` 的字段),则应使用 `Boolean` 包装类。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值