我必须本地化用thymeleaf和spring 4编写的现有应用程序。对于静态内容,创建messages_FR。属性和消息_ ES。属性和传统的Spring i18n策略运行良好。
问题来自动态内容(存储在数据库记录中)。先前版本的内容显示在th:text=“${product.title}”
中。
现在,数据库内容已经通过复制带有lang后缀的字段进行了本地化,因此对于表product和行title,我有两个附加行title_ES和title_FR
现在我需要让这个显示特定于本地,也就是说,对于法语本地,它应该使用<code>th:text=${product.title_FR}
实现这种逻辑的推荐方法是什么?
任何帮助是值得赞赏的。
您有几种可能性:
国际化
一样,并使用th: text
。您可以使用LocaleContextHolder访问请求的区域设置(不完全确定名称)。您将完全控制如何解析密钥。#{...}
。由于消息解析使用内部缓存,您可能需要处理缓存驱逐。没有必要编写自己的方言,因为大多数时候这只是用更好的语法包装一些bean调用。
最简单的方法可能是使用bean并相应地调整文本表达式。第二种方法的优点是,所有消息都可以根据数据库解析,并且可以在运行时轻松覆盖属性文件中的值。
我使用Spring批处理从Oracle数据库读取数据并将结果写入CSV文件。 我还需要将spring批处理元数据表与oracle数据库分开,为此,我在批处理配置中配置了两个不同的数据源(spring批处理元数据的内存数据库)。 这是我的代码: 批处理配置。JAVA 然后我的itemReader bean看起来像: 当我运行批处理时,一切正常。 但是当我尝试在我的BatchApplication中添
问题内容: 我正在进行的一个项目在不久的将来可能会跨越几百万行,所以我正在研究我使用的数据库,因为这肯定会证明是一个问题。据我所读,一旦涉及到表的2,000,000行问题,SQL的所有形式都会出现问题。对于这些大型项目,有没有推荐好的数据库? 我正在谈论的是一个网站,归档旧条目并不理想,但是如果证明这是我无法克服的问题,则可以这样做。 谢谢。 问题答案: 我已经在MS SQL Server中使用了
我有一个可以工作的Spring Boot应用程序,它连接到一个Postgres数据库。我已经用application.properties文件设置了项目,但希望切换到application.yml文件。但是,当我进行切换时,我的应用程序在尝试连接到DB时出错。 我是不是在文件类型之间的转换中遗漏了什么?
我想让我的web应用程序使用mongodb和spring data multitenat。 基本上,我希望将所有实体(集合)复制到不同的数据库中。然后(基于一些规则,例如登录系统的用户),我想将一些实体实例(文档)存储到正确的数据库中。 例如,我有一个名为DBNameProviderService的服务。动态返回数据库名称的getDbName()。如何使用此服务动态选择正确的数据库? 编辑 抱歉,
我也使用了SQL和Oracle,但我有一个很大的困惑。在oracle中,用户属于数据库还是数据库属于用户。因为我已经使用sql命令在oracle中创建了一个新用户。然后我创建了表,但我没有创建任何数据库,那么新表去了哪里? 我猜想表与oracle中的用户相关联,就像创建表的人是表的所有者,其他用户无法访问该表,因此无需通过先创建数据库,然后在其下创建表来区分它们。 但是在MYSQL中(使用PhpM
一、内存数据库: 在SQLite中,数据库通常是存储在磁盘文件中的。然而在有些情况下,我们可以让数据库始终驻留在内存中。最常用的一种方式是在调用sqlite3_open()的时候,数据库文件名参数传递":memory:",如: rc = sqlite3_open(":memory:", &db); 在调用完以上函数后,不会有任何磁盘文件被生成,取而代之的是,一个新的数据库在纯内存中被成功创建了。