sql - 带 Hibernate 的组合框

标签 sql mysql database hibernate

我正在寻找在 Hibernate 对象访问的 Mysql 数据库中维护组合框值的最佳方法。

目前我们有下表:

CREATE TABLE COMBO_VALUES(
   KEY VARCHAR(5) NOT NULL,
   COMBO_TYPE VARCHAR(20) NOT NULL,
   VALUE VARCHAR(100) NOT NULL
   PRIMARY KEY(KEY,COMBO_TYPE)
);
INSERT INTO COMBO_VALUES VALUES('A1', 'COMBO1', 'VALUE1');
INSERT INTO COMBO_VALUES VALUES('A2', 'COMBO1', 'VALUE2');
INSERT INTO COMBO_VALUES VALUES('A3', 'COMBO1', 'VALUE3');

这个表的问题是我们无法用 Hibernate 映射它。

有人遇到过这种情况吗?

最佳答案

除非您明确编写可从数据库配置的用户界面,否则不应将组合框选项存储在数据库中。

组合框只是一种从枚举列表中选择选项的机制。它是 UI 工件,而不是数据工件。

您应该存储的是一个枚举选项列表,独立于显示机制,并将它们传递给您的用户界面代码,该代码根据它们创建一个组合框。

这样,如果您以后决定更改为单选按钮、复选框或命令行界面,只有您的 UI 代码会更改,而数据库表不会更改...

关于sql - 带 Hibernate 的组合框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/377311/

相关文章:

MYSQL查询处理一对值中的空值

php - MySQL 到 php 临时结果

php - php中的整数

database - 在 Redis 中存储和读取通知的最佳方法(Json 或多数据结构)?

database - 如何在数据库中存储一个或多个复选框值?

mysql - SQL 语句是否会在 OR 语句中的第一个匹配项停止执行?

mysql - 如何对两个表进行分组并应用聚合函数?

sql - 如何避免数据库中的读锁?

python - 在docker容器中启动mysql后插入数据

database - H2数据库写复杂存储过程