有如下表
create table `test_user` (
`id` int(11),
`name` varchar(255),
`age` int,
`create_time` datetime,
primary key (`id`)
);
處理大小寫(xiě)敏感需要設(shè)置 @Table 注解的? useDelimited = true
?,讓其在生成 SQL 的時(shí)候?qū)γ恳粋€(gè)名稱都使用限定符包裹起來(lái); 然后設(shè)置 ?autoMapping = false
? 關(guān)閉屬性的自動(dòng)發(fā)現(xiàn),改為通過(guò) @Column 明確配置。 最后設(shè)置? caseInsensitive = false
?將結(jié)果集列名大小寫(xiě)不敏感設(shè)置為敏感,默認(rèn)是:true不敏感
TIP
和大小寫(xiě)相關(guān)的屬性有兩個(gè)分別是 ?useDelimited
?、?caseInsensitive
?
- 屬性 ?
useDelimited
?,決定在生成 SQL 語(yǔ)句時(shí)是否用限定符。 例如表名:?test_user
?和 ?test_user
?后者使用了限定符。
- 屬性 ?
caseInsensitive
?,決定在接收和處理查詢結(jié)果集時(shí)候,是否對(duì)結(jié)果集上的列名保持大小寫(xiě)敏感性。
@Table(name = "test_user", useDelimited = true,
autoMapping = false, caseInsensitive = false)
public class TestUser {
@Column(name = "id", primary = true)
private Integer id;
@Column("age")
private Integer age1;
@Column("AGE")
private String age2;
// getters and setters omitted
}
更多建議: