mybatis学习之添加新用户例子
来源:互联网 发布:主宰西游淘宝 编辑:程序博客网 时间:2024/06/14 12:02
1、配置数据库映射文件(User.xml)
在其中加入如下代码:
<!-- 添加用户 parameterType:指定输入的参数类型是pojo #{}中指定pojo的属性名,接收到pojo对象的属性值,mybatis也是通过OGNL来获取对象的属性值 --> <insert id="insertUser" parameterType="pojo.User"> INSERT INTO USER VALUES(#{id},#{username},#{birthday},#{sex},#{address}); </insert>
注意:在此处的parameterType中,指定的是对象名,而不是简单数据类型,在下方指定pojo的各属性名
2、编写程序
//添加用户 @Test public void insertUser(){ //mybatis配置文件 String resource = "SqlMapConfig.xml"; SqlSession sqlSession = null; try { InputStream inputStream = Resources.getResourceAsStream(resource); //创建会话工厂,传入mybatis的配置信息 SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream); //通过工厂得到SqlSession sqlSession = sqlSessionFactory.openSession(); //通过SqlSession来操作数据库 //List中的User泛型,和resultType中指定的类型一致 User user = new User(); user.setUsername("fjnmbb1234"); user.setBirthday(new Date()); user.setSex("1"); user.setAddress("湖南长沙"); sqlSession.insert("test.insertUser",user); //提交事务 sqlSession.commit(); }catch (IOException e){ e.printStackTrace(); }finally { //释放资源 sqlSession.close(); } }注意:在此处,因为添加用户没有返回值,所以在此处没有定义来接受返回值的变量。在添加完成后,最后记得commit一下,因为mybatis默认没有开启自动提交事务。在与spring整合后就可不再考虑提交事务的问题。
程序运行结果:
3、获取自增主键ID
3.1 在映射文件中配置insert语句,在其中加入如下:
<!-- 将insert插入数据后生成的主键返回到user对象中 SELECT LAST_INSERT_ID() 得到刚才插入的进去的记录的主键值,只能是自增主键 keyProperty: 将查询到的主键值设置到这个parameterType指定的哪个属性 order : 相对于sql语句来说的执行顺序 --> <selectKey keyProperty="id" order="AFTER" resultType="int"> SELECT LAST_INSERT_ID() </selectKey>
3.2 在程序编写中,插入如下:
System.out.print(user.getId());
可以直接get到值
阅读全文
0 0
- mybatis学习之添加新用户例子
- mybatis学习之模糊查询用户例子
- linux学习(一) 在unbuntu下添加新用户
- MySQL学习——添加新用户(1)
- mybatis学习之根据id查找用户例子
- mybatis学习之删除和更新用户例子
- CVS NT 添加新用户
- Ldap添加新用户
- ubuntu添加新用户问题
- 数据库添加新用户
- mysql 添加 删除新用户
- Ubuntu下添加新用户
- ubuntu 添加新用户
- Oracle中添加新用户
- linux添加新用户
- oracle添加新用户
- svn添加新用户
- MySQL 添加 新用户
- 面试题-2017/6/19
- CG在vs中配置方法
- 实现一个简单计算器,表达式为字符串表示
- 点击li弹出对应的index
- Spring MVC工作流程详解
- mybatis学习之添加新用户例子
- URAL
- 初识Python
- android事件分发
- HDU 3746 Cyclic Nacklace KMP求字符串最小循环节长度
- Android View触摸事件传递机制 一
- Docker 入门
- UESTC 1638 红藕香残玉簟秋,轻解罗裳,独上兰舟。
- 小白webpack学习之路