mybatis的简单使用

1.mybatis的优点:

mybatis相对于jdbc,代码量缩减一半,易懂,适合新手;

不用考虑公共部分;

专心在业务上实现;

结构统一,易于学习和维护

2.xml简单流程

新建一个SqlSessionFactoryBuilder的对象 builder;

在调用Resources时,注意这里选择的是(org.apche.ibatis.io)

用Resources.getResoucesAsReader来存放接口下面的.xml文件;

builder调用build方法,把资源添加进去,形成一个工厂;

再用工厂.OpenSession 打开会话,

3.下面就详细来实现mybatis

1.添加hamecast,junit,mybatis,sql的几个jar包,不然在.xml文件中不能实现

 

2.建一个资源文件夹,选择resource root类型,里面添加一个文件db.properties,这个文件存放的是连接数据库的资源,同时在和resours文件夹同级的再建一个文件test,类型选择test resource root

3. 创建一个类,里面的属性和表的列名一致;

 4.创建一个接口,写增删改查等方法,注意多个方法时,类型都是String,所以参数前要加入@Param 来识别相同的参数

5.mybatis.xml文件,里面大概实现的流程,里面设置开发环境;事务管理器;数据连接池;

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration PUBLIC
        "-//mybatis.org//DTDConfig 3.0//EN"
        "http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration >
    <properties resource="db.properties"/>
    <environments default="dev">
        <environment id="dev">
            <transactionManager type="jdbc"></transactionManager>
            <dataSource type="POOLED">
                <property name="driver" value="${driver}"></property>
                <property name="url" value="${url}"></property>
                <property name="username" value="${name}"></property>
                <property name="password" value="${pwd}"></property>
            </dataSource>
        </environment>
    </environments>
    <mappers>
<mapper resource="cn/kgc/dao/UserDao.xml"></mapper>
    </mappers>
</configuration>

6. UserDao.xml文件,

<?xml version="1.0" encoding="utf-8" ?>
<!DOCTYPE mapper PUBLIC
        "-//mybatis.org//Mapper 3.0//EN"
        "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="cn.kgc.dao.UserDao">
        <select id="getUserByName" parameterType="string"
                resultType="cn.kgc.entity.User">
            select *from tb_user_info where username=#{name}

        </select>
    <select id="addUser" parameterType="string">
        insert into tb_user_info (username, password) values (#{name},#{pwd})
    </select>
    <select id="delUser" parameterType="string">
        delete from tb_user_info where username=#{name}
    </select>
    <select id="updateUser" parameterType="string">
       update tb_user_info set password=#{pwd} where username=#{name}
    </select>
</mapper>

7.接口里的方法 用ctrl+shift+t来创建一个test

public class UserDaoTest {
    SqlSessionFactoryBuilder builder=new SqlSessionFactoryBuilder();
    Reader reader = Resources.getResourceAsReader( "mybatis-cfg.xml" );
    SqlSessionFactory factory = builder.build( reader );
    SqlSession session = factory.openSession(true); //加true开启自动提交

    public UserDaoTest() throws IOException {
    }

    @Test
    public void getUserByName() throws Exception {

        User user = session.getMapper( UserDao.class ).getUserByName( "1" );
        System.out.println(user);
    }

    @Test
    public void addUser() {
        session.getMapper( UserDao.class ).addUser("吸烟有害健康" ,"12" );

    }

    @Test
    public void delUser() {
        session.getMapper( UserDao.class ).delUser( "吸烟有害健康","12" );
    }

    @Test
    public void updateUser() {
        session.getMapper( UserDao.class ).updateUser( "lisi","12" );
    }
}

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

yy64ll826

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值