当前位置: 首页 > 知识库问答 >
问题:

Spring Boot+JPA:忽略列名注释

弘涛
2023-03-14

我有一个具有依赖项spring-boot-starter-data-jpa的Spring Boot应用程序。我的实体类有一个带有列名的列注释。例如:

@Column(name="TestName")
private String testName;

由此生成的SQL将test_name创建为列名。在寻找解决方案之后,我发现spring.jpa.hibernate.naming_strategy=org.hibernate.cfg.ejb3NamingStrategy解决了这个问题(列名取自列注释)。

但是,我的问题是为什么没有将naming_strategy设置为EJB3NamingStrategy,JPA忽略列注释?也许冬眠方言与此有关?我正在连接到MS SQL 2014 Express,我的日志包含:

Unknown Microsoft SQL Server major version [12] using SQL Server 2000 dialect
Using dialect: org.hibernate.dialect.SQLServerDialect 

共有1个答案

相旭
2023-03-14

对于hibernate5,我通过在application.properties文件中输入下一行来解决这个问题:

spring.jpa.hibernate.naming.implicit-strategy=org.hibernate.boot.model.naming.ImplicitNamingStrategyLegacyJpaImpl
spring.jpa.hibernate.naming.physical-strategy=org.hibernate.boot.model.naming.PhysicalNamingStrategyStandardImpl
 类似资料:
  • 我有以下JPA映射(为了简洁起见,getter和setter都是从代码中生成的,DDL可能起作用,也可能不起作用): 费用 类别 标签 与JpaRepository一起使用 所以我使用的是一个JPA假设,它看起来像这样: 当我使用JpaRepository的默认findAll()方法时,我得到一个n1选择问题: 但是,当我使用自己的findAllExpensesExploded()方法时,我得到一

  • 忽略域名 您可能要从mitmproxy的拦截机制中免除部分流量的主要原因有两个: 证书固定:使用证书固定保护某些流量, 而mitmproxy的拦截会导致错误。例如,如果mitmproxy处于活动状态,则Twitter应用程序,Windows Update或Apple App Store无法工作。 便利性:您实际上并不关心某些流量,而只是希望它们消失。请注意,在这里,mitmproxy的Limit选

  • 我试图使用Jackson注释来重新命名序列化过程中产生的一些json标签。所有注释都编译得很好,当我运行时,除了所有Jackson注释之外,Jackson序列化工作完全被忽略。即使像@jsonignore或@jsonproperty这样的基本命令对json响应也没有影响。构建路径中的库有: 下面是我需要序列化的一个类的代码示例:

  • 有什么想法为什么@primary在这里没有被考虑在内吗?

  • 忽略列表显示不需要处理的资源或一类规则建议。 忽略列表显示不需要处理的资源或一类规则建议。当某资源或某类型的建议不需要用户处理时,可以通过忽略或忽略该类建议功能将其显示在忽略列表。 入口:在云管平台单击左上角导航菜单,在弹出的左侧菜单栏中单击 “优化建议/安全检查/忽略列表” 菜单项,进入忽略列表页面。 恢复 当忽略列表中某资源或某规则建议需要用户关注处理时,可以使用恢复功能将其显示在建议列表。

  • 忽略列表显示不需要处理的资源或一类规则建议。 忽略列表显示不需要处理的资源或一类规则建议。当某资源或某类型的建议不需要用户处理时,可以通过忽略或忽略该类建议功能将其显示在忽略列表。 入口:在云管平台单击左上角导航菜单,在弹出的左侧菜单栏中单击 “优化建议/成本优化/忽略列表” 菜单项,进入忽略列表页面。 恢复 当忽略列表中某资源或某规则建议需要用户关注处理时,可以使用恢复功能将其显示在建议列表。