mybatis学习

String resource = "SqlMapConfig.xml";

InputStream inputStream  = Resources.getResourceAsStream(resource); //得到全局文件

//获取sqlsession工厂

SqlSessionFactory sessionFactory = new SqlSessionFactoryBuilder().build(inputStream);

//从工厂中获取sqlsession

SqlSession sqlSession = sessionFactory.openSession();

需要配置XXXmapper.xml

在里面写sql语句

<mapper namespace="test">


    <!-- 根据用户id查询用户信息
    编写statement
    parameterType:指定传入数据参数的类型
    resultType:映射生成的java对象类型,select查询结果集的列名要和resultType指定java对象的属性名保持一致才可以映射
    #{}:表示占位符,如果要传递简单类型数据,#{}可以写任意名称
     -->
     <select id="findUserById" parameterType="java.lang.Integer" //传入参数
     resultType="cn.itcast.mybatis.po.User" //返回参数
     >
         SELECT * FROM USER WHERE id=#{value} 
     </select>
     
     <!-- 用户插入
     传用户类型的对象(user),
     传入的是user对象,#{}中写user对象的属性名
      -->
     <insert id="insertUser" parameterType="cn.itcast.mybatis.po.User">
     
     <!-- 将自增主键返回到user对象
     keyProperty:返回到user对象中的属性名
     order:返回主键的时机
     LAST_INSERT_ID:通过此函数获取自增主键值
      -->
     <selectKey keyProperty="id" order="AFTER" resultType="java.lang.Integer">
          select LAST_INSERT_ID()  //插入时找到表中最后一个ID
     </selectKey>
     
     INSERT INTO USER(username,birthday,sex,address,detail,score) 
     VALUES(#{username},#{birthday},#{sex},#{address},#{detail},#{score})
     </insert>
     
     <!--根据id删除 用户信息
     传入参数:整型id
      -->
    <delete id="deleteUserById" parameterType="java.lang.Integer">
       DELETE FROM USER WHERE id=#{id}
    </delete>
    
    <!-- 根据主键更新用户信息
       parameterType:传入数据不仅包括主键,包括要更新的信息
       parameterType="cn.itcast.mybatis.po.User"
     -->
     <update id="updateUser"  parameterType="cn.itcast.mybatis.po.User">
         update user set username=#{username},birthday=#{birthday},sex=#{sex},address=#{address},detail=#{detail},score=#{score}
         where id=#{id}
     </update>
     <select id="findUserList" parameterType="java.lang.String"
     resultType="cn.itcast.mybatis.po.User"
     >
         SELECT * FROM USER WHERE username like '${value}%'   //模糊查询加$
     </select> 

</mapper>

总的配置文件:

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
<!-- <properties resource=""></properties> -->
<environments default="development">
<environment id="development">
<transactionManager type="JDBC" />
<dataSource type="POOLED">
<property name="driver" value="com.mysql.jdbc.Driver" />
<property name="url" value="jdbc:mysql://localhost:3306/mybatis?characterEncoding=utf-8" />
<property name="username" value="root" />
<property name="password" value="mysql" />
</dataSource>
</environment>
</environments>  //数据库连接池

<!-- 配置要加载的mapper.xml -->
<mappers>
<mapper resource="sqlmap/UserMapper.xml"/>
 <mapper resource="sqlmap/mapper/UserMapper.xml"/>  //将XXXmapper.xml加载进来
</mappers>
</configuration>

-----------------------------------------------------------------------------------------------------------

<package name="cn.itcast.mybatis.dao.mapper"/> //扫描<package name="cn.itcast.mybatis.dao.mapper"/>

                                                                                                           的所有类。用于别名,别名为类的首字母小写。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值