Tôi không quen với Postgres
và các loại của nó nhưng bạn có thể xác định loại của riêng mình bằng cách sử dụng custom basic type mapping. Điều đó có thể đơn giản hóa truy vấn.
Có nhiều chủ đề ở đây về SO liên quan đến loại mảng Postres và Hibernate, ví dụ: this one. Một ví dụ lập bản đồ mảng khác có thể hữu ích is here. Cuối cùng, here is an example sử dụng Tiêu chí với loại người dùng.
Mã ví dụ có thể là
List result = session.createCriteria(Cpfbloqueado.class)
.setProjection(Projections.projectionList()
.add(Projections.property("characterColumn.attribute"), PostgresCharArrayType.class)
)
.setResultTransformer(Transformer.aliasToBean(Cpfbloqueado.class))
.add(...) // add where restrictions here
.list()
Ngoài ra, nếu nó không phải là quan trọng đối với việc thực hiện, bạn có thể xác định chiều dài tối đa trong mô hình tổ chức nào, chú thích lĩnh vực của bạn với @Column(length = 1)
.
Hoặc nếu bạn cần lưu trữ một mảng ký tự có độ dài 1
, bạn có thể sử dụng collection type.
Tôi hy vọng tôi có điểm đúng, tuy nhiên, sẽ tốt hơn nếu miền vấn đề được mô tả tốt hơn.
Nguồn
2016-04-15 12:45:57
bạn đã kiểm tra: http://stackoverflow.com/questions/22649964/how-to-save-or-retrieve-an-array-column-using-hibernate –
Nếu bạn xem câu trả lời cuối cùng, đó là của tôi. – user3503888
Bạn có thể đặt mã nguồn mà bạn đã thử không? – SubbaReddy