MyBatis returns 某些列为空,0
MyBatis returns some columns as null, 0
我正在使用 MyBatis 和 Spring Boot。我正在尝试使用此从数据库中提取数据:
<select id="queryDeviceList" resultType="DeviceList">
SELECT id, mac_address, is_active
FROM ct_device_list dl
where dl.is_active = 1
</select>
我的 POJO 是
@Data
public class DeviceList {
private int id;
private String mac_address;
private int is_active;
}
我的 DAO 是
List <DeviceList> queryDeviceList();
我的 table CT_DEVICE_LIST 在 Oracle 数据库中
CREATE TABLE CT_DEVICE_LIST
(
ID NUMBER(10,0) NOT NULL
, MAC_ADDRESS VARCHAR2(17) NOT NULL
, IS_ACTIVE NUMBER(1) NOT NULL
, CREATED_DATE DATE NOT NULL
, CONSTRAINT CT_DEVICE_LIST_PK PRIMARY KEY
(
ID
)
ENABLE
);
但是我得到的结果是:
id=1, mac_address=null, is_active = 0
但是我的 mac_address 有值并且 is_active 在数据库中不是 0。
请帮忙。谢谢。
如果你设置mybatis.configuration.map-underscore-to-camel-case=true
,你应该使用
@Data
public class DeviceList {
private Integer id;
private String macAddress;
private Integer isActive;
}
如果不想将默认值设置为 0,请记住不要使用原始类型 int
。
我正在使用 MyBatis 和 Spring Boot。我正在尝试使用此从数据库中提取数据:
<select id="queryDeviceList" resultType="DeviceList">
SELECT id, mac_address, is_active
FROM ct_device_list dl
where dl.is_active = 1
</select>
我的 POJO 是
@Data
public class DeviceList {
private int id;
private String mac_address;
private int is_active;
}
我的 DAO 是
List <DeviceList> queryDeviceList();
我的 table CT_DEVICE_LIST 在 Oracle 数据库中
CREATE TABLE CT_DEVICE_LIST
(
ID NUMBER(10,0) NOT NULL
, MAC_ADDRESS VARCHAR2(17) NOT NULL
, IS_ACTIVE NUMBER(1) NOT NULL
, CREATED_DATE DATE NOT NULL
, CONSTRAINT CT_DEVICE_LIST_PK PRIMARY KEY
(
ID
)
ENABLE
);
但是我得到的结果是:
id=1, mac_address=null, is_active = 0
但是我的 mac_address 有值并且 is_active 在数据库中不是 0。
请帮忙。谢谢。
如果你设置mybatis.configuration.map-underscore-to-camel-case=true
,你应该使用
@Data
public class DeviceList {
private Integer id;
private String macAddress;
private Integer isActive;
}
如果不想将默认值设置为 0,请记住不要使用原始类型 int
。