//加载基本配置文件(法一)
InputStream is = Resources.getResourceAsStream("mybatis-config.xml");
SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(is);
2、常用第二种,此文章也是用第二种
//加载基本配置文件(法二)
Reader reader = Resources.getResourceAsReader("mybatis-config.xml");
SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(reader);
3、
//第三种方式:注解,sql语句放在接口里面,抽象方法的上面。如果使用这种方式,需要将存储sql语句的Mapper.xml文件删除。注解和.xml只能存在一个
// @Select("Select * from book")
List selectAll();
二、获取接口实例 这是接口的方法
SqlSession sqlSession = sqlSessionFactory.openSession();
//获取接口实例
BookMapper mapper = sqlSession.getMapper(BookMapper.class);
三、增加操作 1、单个传入参数
如:传入某个对象,或者传入某个map
BookMapper.xml
insert into book(name,author,price) values (#{name},#{author},#{price})
BookMapper接口
int insertOne(Book book);
测试类
Book book = new Book("天气预报", "小王", 10);
int num = mapper.insertOne(book);
System.out.println("添加结果是:"+num);
2、多个传入参数
- 解决多参数和传入参数无法对应的问题
- 1.仅sql语句赋值用#{arg}
insert into book(name,author,price) values (#{arg0},#{arg1},#{arg2})
- 2.仅接口抽象方法用@Param("name") 其中value = 可以省略 比较常用
int insertOne2(@Param(value = "name")String name,
@Param(value = "author")String author,
@Param(value = "price")double price);
- 3.传递map ,类似于传递一个对象整体
四、修改操作
BookMapper.xml 可以保持没有修改的值
update book set name = #{name}, author = #{author}, price = #{price} where id = #{id}
五、查找操作



