通常,在数据库设计时,字段名通常带有下划线,但是所创建的实体对象的相应属性是驼峰式,这让在查询select*时,会发现该属性值为空,并没有被绑定值,这时候通常有两种解决方式,一种是将该属性在查询语句中另起名称(与实体类定义的相同),另一种方式是通过settings进行设置。
方法一:employee的数据库字段为last_name,而Employee实体类定义的属性是lastName.所以查询时:
<select id="getEmpById" resultType="com.fzl.mybatis.bean.Employee">
select id,last_name lastName,email,gender from tbl_employee where id = #{id}
</select>
方法二:在mybatis全局配置文件中配置数据库last_name字段按照驼峰式命名。
<settings>
<setting name="mapUnderscoreToCamelCase" value="true"/>
</settings>
查询语言:
<select id="getEmpById" resultType="com.fzl.mybatis.bean.Employee">
select * from tbl_employee where id = #{id}
</select>
settings:包含很多重要的设置项
setting:用来设置每一个设置项
name:设置项名
value:设置项取值
mapUnderscoreToCamelCase
用来设置以驼峰式命名,默认是false,所以这里设置为true.