java - 基于语言环境显示数据的最佳方式 - spring mvc 中的相同表字段
问题描述
我正在为我的公司开发一个 Web 应用程序,并且需要以英语和法语存储数据。此应用程序仅支持这两种语言,未来没有扩展空间。
因此,正因为如此,我设计了我的数据库表以下列方式支持这一点,在同一个表中具有语言列
CREATE TABLE BANNER
(
message_id NUMBER(15) NOT NULL,
message_en VARCHAR2(1000 BYTE),
message_fr VARCHAR2(1000 BYTE),
active VARCHAR2(1 BYTE),
created_date TIMESTAMP(6),
updated_date TIMESTAMP(6),
created_by NUMBER(15),
updated_by NUMBER(15)
);
下面是我的实体类,其中我有一个瞬态变量来根据语言环境在获取后映射数据。现在我不确定填充该字段并在视图中使用它的最佳方法是什么。我可以在此使用 JPA @postload 选项并根据语言环境进行映射吗?请帮忙。我正在使用带有休眠功能的 Spring MVC。
public class Banner {
@Id
@Column(name="message_id")
private Long messageId;
@Column(name="message_en")
private String messageEn;
@Column(name="message_fr")
private String messagefr;
@Column(name="active")
private String active;
@Transient
private String message;
/*
* @PostLoad public String getMessage() { boolean isFr =
* LocaleUtil.isLocaleFr(); if(isFr) return (null ==
* getMessageFr()?"":getMessageFr());
*
* return ((null == getMessage())?"":getMessage()); }
*/
//other getters and setters
}
e here`(
message_id NUMBER(15) NOT NULL,
message_en VARCHAR2(1000 BYTE),
message_fr VARCHAR2(1000 BYTE),
active VARCHAR2(1 BYTE),
created_date TIMESTAMP(6),
updated_date TIMESTAMP(6),
created_by NUMBER(15),
updated_by NUMBER(15)
);