驼峰命名自动映射
根据上面的运行结果,我们发现,数据表中的字段 last_name 与类 Emp 中的属性 lastName 不能进行映射。但是 mybatis 为我们提供了字段的驼峰命名转换功能,我们只需要在,mybatis-config.xml 中配置即可
<settings>
<!-- 使用驼峰命名法转换字段。 -->
<setting name="mapUnderscoreToCamelCase" value="true"/>
</settings>
运行结果:
增删改
新增
<insert id="insert" parameterType="com.fun.tv.model.Emp">
insert into bd_emp(id,last_name,gender,email) values(#{id},#{lastName},#{gender},#{email})
</insert>
InputStream inputStream = Resources.getResourceAsStream(resource);
SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
SqlSession sqlSession = sqlSessionFactory.openSession();
Emp emp = new Emp();
emp.setLastName("hello");
emp.setGender("1");
emp.setEmail("aaa@163.com");
int result = sqlSession.insert("com.fun.tv.dao.EmpDao.insert", emp);
sqlSession.commit();
修改
<update id="update" parameterType="com.fun.tv.model.Emp">
update bd_emp set last_name=#{lastName},gender=#{gender},email=#{email} where id=#{id}
</update>
InputStream inputStream = Resources.getResourceAsStream(resource);
SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
SqlSession sqlSession = sqlSessionFactory.openSession();
Emp emp = new Emp();
emp.setId(4);
emp.setLastName("world");
emp.setGender("1");
emp.setEmail("aaa@163.com");
int result = sqlSession.update("com.fun.tv.dao.EmpDao.update", emp);
sqlSession.commit();
删除
<delete id="delete" parameterType="int">
delete from bd_emp where id=#{id}
</delete>
InputStream inputStream = Resources.getResourceAsStream(resource);
SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
SqlSession sqlSession = sqlSessionFactory.openSession();
int result = sqlSession.delete("com.fun.tv.dao.EmpDao.delete", 4);
sqlSession.commit();
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于