Mybatis基本的CRUD

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<!-- namespace:表示名称空间。现在的目的是区分id的. -->
<mapper namespace="com.zhiyou100.xf.mapper.UsersMapper">
<!-- 根据id查询用户。id:标识该标签。 parameterType:参数类型。可以写 也可以省略 resultType:返回结果的类型。
#{id}:类似于EL表达式。 解析id的值 -->
<select id="getUser" parameterType="int" resultType="com.zhiyou100.xf.bean.Users">
select * from users where id=#{id}
</select>
<insert id="insertUser" parameterType="com.zhiyou100.xf.bean.Users">
insert into users values(default,#{name},#{age})
</insert>
<update id="updateUser" parameterType="com.zhiyou100.xf.bean.Users">
update users set name=#{name},age=#{age} where id=#{id}
</update>
<select id="selAll" resultType="com.zhiyou100.xf.bean.Users">
select * from users
</select>
<delete id="deleteUser" parameterType="int">
delete from users where id=#{id}
</delete>
<select id="selBy" parameterType="map" resultType="com.zhiyou100.xf.bean.Users">
select * from users where id between ${min} and ${max}

(此处使用<>来表示范围可以用转义字符或者特定标签)
</select>

</mapper>

当有多个值传入时,可以选择作为list或者实体类。如果多值的话,会作为map传入

普通测试

public class Test {

    public static void main(String[] args) throws IOException {
        //配置解析文件xml
        Reader reader=Resources.getResourceAsReader("conf.xml");
        //获取SessionFactory对象
        SqlSessionFactory sessionFactory=new SqlSessionFactoryBuilder().build(reader);
        //获取session对象
        SqlSession session=sessionFactory.openSession();
        Users users=session.selectOne("com.zhiyou100.xf.mapper.UsersMapper.getUser",1 );
        System.out.println(users);
    }

}

接口与映射文件结合使用(指明接口所在路径)

namespace="com.zhiyou100.xf.dao.UsersDao"

public interface UsersDao {
  //方法名必须和sql映射文件中方法的id相同
public Users getUser(int id); public List<Users> selAll(); public void insertUser(Users u); public void deleteUser(int id); public void updateUser(Users u); public List<Users> selll(); //多个参数存入map? public List<Users> selBy(@Param("min") int min,@Param("max") int max); }

测试调用

UsersDao ud=session.getMapper(UsersDao.class);

转载于:https://www.cnblogs.com/accc111/p/11448893.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值