我正在尝试在hibernate中映射PostgreSQL表。我正在写一个POJO课程。有一列BIT VARYING
类型。如何在POJO类中为getter和setter方法声明java数据类型?
Object
和byte[]
无效。
答案 0 :(得分:0)
使用整数。采用以下简单示例,我将三个不同值的位表示为整数。
create table bits_comparison_test (
string VARCHAR(10),
bits INTEGER
);
insert into bits_comparison_test (string, bits) values ('Studio', 1); -- binary 001
insert into bits_comparison_test (string, bits) values ('Apartment', 2); -- binary 010
insert into bits_comparison_test (string, bits) values ('House', 4); -- binary 100
然后,如果我们想要公寓和住宅,我们可以执行以下查询: -
select * from bits_comparison_test where bits & 6 != 0;
确保每种类型的二进制表示只有一位。例如,如果您用3表示房屋(11个二进制),则无法知道用户是想要房屋还是只有(工作室和公寓)。