问题引出:
在使用Mybatis操作数据库时:在类中属性的命名方式通常我们采用驼峰式empName命名,但是在数据库中的字段名我们通常使用emp_name来命名,这就导致属性名和字段名不一致,在查询时就会出现查询不到数据
解决方式:
方式一:
为字段起别名,保证和实体类中的属性名保持一致
方式二:
设置mybatis的全局配置
在mybatis-config.xml中添加:
<!-- 设置mybatis的全局配置 --> <settings> <!-- 将下划线自动映射为驼峰emp_name对应empName--> <setting name="mapUnderscoreToCamelCase" value="true"/> </settings>
方式三:
通过resultMap设置自定义的映射关系
<resultMap id="empResultMap" type="Emp"> <id property="eid" column="eid"></id> <result property="empName" column="emp_name"></result> <result property="age" column="age"></result> <result property="sex" column="sex"></result> <result property="email" column="email"></result> </resultMap> <select id="getAllEmp" resultMap="empResultMap"> select * from t_emp </select>