zoukankan      html  css  js  c++  java
  • mybatis框架入门程序:演示通过mybatis实现数据库的添加操作

    1.mybatis的基本配置准备在我的这篇博文中可以找到:https://www.cnblogs.com/wyhluckdog/p/10149480.html

    2. 映射文件:

      在User.xml中添加:

    <!-- 添加 
            添加操作返回值可有可无
            #{}:如果传入的是po类型,那么#{}中的变量名称必须是po中对应的属性
        -->
        <insert id="insertUser" parameterType="com.huida.po.User">
            insert into user(username,birthday,sex,address) values(#{username},#{birthday},#{sex},#{address})
        </insert>
     添加操作返回值可有可无
      #{}:如果传入的是po类型,那么#{}中的变量名称必须是po中对应的属性
    3.测试程序:
        @Test
        public void testInsertUser() throws Exception{
            //通过流将核心配置文件读取进来
            InputStream inputStream=Resources.getResourceAsStream("config/SqlMapConfig.xml");
            //通过核心配置文件输入流来创建工厂
            SqlSessionFactory factory=new SqlSessionFactoryBuilder().build(inputStream);
            //通过工厂创建session
            SqlSession openSession=factory.openSession();
            //插入一条记录
            User user=new User();
            user.setUsername("rose");
            user.setBirthday(new Date());
            user.setSex("1");
            user.setAddress("北京");
            openSession.insert("test.insertUser", user);
            //一定要提交事务,做查找的时候可以不用提交事务,但是增删改必须要提交事务。
            //提交事务 mybatis会自动开启事务,但是它不知道何时提交,需要手动提交事务
            openSession.commit();
            //关闭资源
            openSession.close();
            //factory没有close(),因为session关闭之后,factory也就关闭了。
        }

    4.单元测试:

      通过单元测试testInsertUser方法,刷新数据库表,可以看到增加了一条记录。

  • 相关阅读:
    uva10152-ShellSort
    WCF问题集锦:ReadResponse failed: The server did not return a complete response for this request.
    Android动态改变布局
    Android应用性能优化
    玩转CPU之直线
    [DB][MySql]关于取得自增字段的值、及@@IDENTITY 与并发性问题
    js对象实例化的常见三种方式
    TCP协议
    [UnityUI]循环滑动列表
    Spring MVC原理及实例基础扫盲篇
  • 原文地址:https://www.cnblogs.com/wyhluckdog/p/10149895.html
Copyright © 2011-2022 走看看