Mybatis小结(优化)
来源:互联网 发布:二战意大利知乎 编辑:程序博客网 时间:2024/05/29 18:24
1、SqlSession的获取
public class DBAccess {private static SqlSessionFactory factory;static{//在静态代码块下,factory只会被创建一次try {InputStream input = Resources.getResourceAsStream("mybatis-config.xml");factory = new SqlSessionFactoryBuilder().build(input);} catch (IOException e) {// TODO Auto-generated catch blocke.printStackTrace();}}public static SqlSession createSqlSession(){return factory.openSession(false);//true 为自动提交,false 为不自动提交,默认是没有参数的,不会自动提交}public static void closeSqlSession(SqlSession sqlSession){if(sqlSession != null){//关闭sqlSessionsqlSession.close();}}}
2、mybatis-config.xml 系统核心配置文件(注意元素节点的顺序)
configuration 配置
properties 可以配置在Java 属性配置文件中
settings 修改 MyBatis 在运行时的行为方式
typeAliases 为 Java 类型命名一个别名(简称)
typeHandlers 类型处理器
objectFactory 对象工厂
plugins 插件
environments 环境
environment 环境变量
transactionManager 事务管理器
dataSource 数据源
mappers 映射器
①配置properties元素的两种方式
Ⅰ.通过外部指定的方式(database.properties),实现动态配置
即配置properties的resource属性 ,如下:
<properties resource="database.properties"/>
Ⅱ.直接配置为xml,实现动态配置
配置property的name和value
<properties><property name="driver" value="com.mysql.jdbc.Driver"/><property name="url" value="jdbc:mysql://127.0.0.1:3306/smbms"/><property name="user" value="root"/><property name="password" value="root"/></properties>
若两种方式同时都用了,resource属性值的优先级高于property子节点配置的值
3、typeAliases元素:
4、environments元素:
5、dataSource元素
6、mappers元素
7、SQL映射的XML文件
MyBatis 真正的强大在于映射语句,专注于SQL,功能强大,SQL映射的配置却是相当简单
SQL映射文件的几个顶级元素(按照定义的顺序)
mapper - namespace
cache - 配置给定命名空间的缓存
cache-ref – 从其他命名空间引用缓存配置
resultMap –用来描述数据库结果集和对象的对应关系
sql – 可以重用的SQL块,也可以被其他语句引用
insert – 映射插入语句
update – 映射更新语句
delete – 映射删除语句
select – 映射查询语句
超过3个以上的参数最好封装成对象入参
参数固定的业务方法,最好使用多参数入参
- Mybatis小结(优化)
- MyBatis学习(三)- 小结
- MyBatis学习(三)- 小结
- Mybatis学习小结(三)
- mybatis学习小结(四)
- mybatis小结
- Mybatis小结
- mybatis小结
- MyBatis小结
- mybatis应用(三)优化
- MyBatis持久层解释小结(个人)
- MyBatis动态sql小结(一)
- MyBatis动态sql小结(二)
- MyBatis动态sql小结(三)
- mybatis优化
- Mybatis优化
- MyBatis学习笔记(四)优化MyBatis配置文件中的配置
- mybatis--foreach,choose 小结
- Elimination
- VMWare Fusion 8 Pro for Mac free download
- 【Java多线程与并发库】05 线程范围内共享变量ThreadLocal
- nyoj 214 单调递增子序列(二) dp+二分
- python zip的用法
- Mybatis小结(优化)
- 2018网易内推笔试-彩色的砖块(python)
- Parallels Desktop 12 for Mac free download
- adb shell命令输入dos窗口后,报错error:device not found
- Android中弱引用和软引用的应用场景
- MFC/OpenCV读取摄像头
- HDU_6154 CaoHaha's staff 【规律打表】
- UVA 1152 4 Values whose Sum is 0 (二分)
- minimum-depth-of-binary-tree