创建步骤
复制了一份 logback.xml.—>创建User类—>创建一个mybaits-config.xml 改掉里面driver的连接池路径再改掉url的数据连接的表和数据账号密码——>UserMapper.xml的查询表的所有数据—>然后创建一份MybaitsDome的测试类—>复制一份官网
//获取mybatis的核心配置文件,获取SqlSessionFactory
String resource = "mybatis-config";
InputStream inputStream = Resources.getResourceAsStream(resource);
SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
//获取SqlSession对象,用它执行SQL语句
SqlSession sqlSession = sqlSessionFactory.openSession();
//吧查询到的放在list集合里
//这一步比较硬编码
//List <User> users = sqlSession.selectList("test.selectAll");
//获取了一个UserMapper的接口对象调用 省略了写SQL的语句。 Idea帮你写好了
UserMapper userMapper=sqlSession.getMapper(UserMapper.class);
List<User> users= userMapper.selectAll();
//第二种方法有很多优势,首先它不依赖于字符串字面值,会更安全一点;其次,如果你的 IDE
//有代码补全功能,那么代码补全可以帮你快速选择到映射好的 SQL 语句。
//打印一下
System.out.println(users);
//关闭资源
sqlSession.close();
Mapper 代理开发
在resources下创建文件夹不能用.创建创建的话就像文件起名字可以用/隔开创建
environments配置数据库连接环境信息,可以配置多个environent,通过default属性切换不同的environment
在写XML的时候是有约束的一定要遵循顺序来写
1红色头绳的鸟 SQL映射的文件
2蓝色头绳的鸟代表映射接口的文件
编写的步骤
完成MyBatis操作步骤有三部
编写接口 ——>编写SQL 语句 —— 执行方法
数据库的表的列名。和实体列类属性名不一样,不能自动封装
SQL片段
不能用 $ 防止SQL 存在SQL植入
全部用都用 # 不存在SQL植入
CDATA区 写 < 会编译报错 可以用 转义字符
方法1 <代表的 <
方法2 <!<![CDATA[
写符号
]]>
SQL 多条件查询
Mybatis 中的问题
choose 语句
提交事物
主键返回值
动态SQL语句修改
动态删除SQL 语句
- 批量删除是必须要把 = 换成 in
@Param注解 传输参数
注解SQL语句 代码清晰 只适合简便的