默认情况下,我的Spring Boot项目通过将名称从camelCase转换为snake_case(例如从 <link rel="stylesheet" href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.9.0/themes/base/jquery-ui.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script type="text/javascript">
$(function () {
$("#container1").tabs();
$("#container2").tabs();
});
container1Func();
// calling container2Func directly works but not when it fires from the submit button.
// container2Func();
function container1Func() {
alert('function1 called');
var strVar = '<div id="tab11"><ul><li><a href="#tabs-11">Tab Header 1</a></li><li><a href="#tabs-22">Tab Header 2</a></li></ul><div id="tabs-11">Content for Tab 1 goes here.</div><div id="tabs-22"> Content for Tab 2 goes here.</div></div>';
$('#container1').append(strVar);
}
$('#btnchart').click(function () {
container2Func();
});
function container2Func() {
alert('function2 called');
var strVar = '<div id="tab111"><ul><li><a href="#tabs-111">Tab Header 11</a></li><li><a href="#tabs-221">Tab Header 21</a></li></ul><div id="tabs-111">Content for Tab 11 goes here.</div><div id="tabs-221"> Content for Tab 21 goes here.</div></div>';
$('#container2').append(strVar);
}
</script>
转换为fooBar
),将JPA映射实体属性转换为表列。
我正在处理现有数据库,其中实体属性名称保持原样用于表列名称(例如从foo_bar
到fooBar
),因此我尝试使用{{ 1}}注释明确指定名称:
fooBar
这不起作用。我按照here给出的建议:
@Column
我的@Column(name = "fooBar")
private String fooBar;
现已成功考虑在内,但我在没有spring.jpa.hibernate.naming.physical-strategy=org.hibernate.boot.model.naming.PhysicalNamingStrategyStandardImpl
注释的属性上丢失了camelCase到snake_case隐式转换。
除非在@Column
注释中明确指定,否则默认情况下如何从camelCase转换为snake_case?
答案 0 :(得分:0)
从Hibernate 5开始,似乎不再支持使用camelCase(在Java中为命名约定)自动转换属性名称到SNAKE_CASE。但是,您可以编写自己的NamingStrategy实现,正是这样做的。 请检查this Stackoverflow-Answer,看看它是如何完成的。