- 1、本文档共42页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第7章 MyBatis的核心配置 · MyBatis的核心对象 · 配置文件 · 映射文件 Java EE企业级应用开发教程(Spring+Spring MVC+MyBatis) 作业点评 请简述MyBatis框架与Hibernate框架的区别。 请简述MyBatis的工作执行流程。 预习检查 MyBatis配置文件中的各个元素有什么作用? MyBatis映射文件中有哪些常用元素? 2 配置文件中各个元素 的作用 学习目标 掌握 了解 熟悉 映射文件中常用元素的使用 1 3 核心对象的作用 主讲内容 主讲内容 Speech content 7.2 配置文件 7.3 映射文件 7.1 MyBatis的核心对象 7.1.1 SqlSessionFactory SqlSessionFactory是MyBatis框架中十分重要的对象,它是单个数据库映射关系经过编译后的内存镜像,其主要作用是创建SqlSession。 SqlSessionFactory对象的实例可以通过SqlSessionFactoryBuilder对象来构建,而SqlSessionFactoryBuilder则可以通过XML配置文件或一个预先定义好的Configuration实例构建出SqlSessionFactory的实例。 什么是SqlSessionFactory? 7.1.1 SqlSessionFactory 通过XML配置文件构建出的SqlSessionFactory实例现代码如下: 构建SqlSessionFactory SqlSessionFactory对象是线程安全的,它一旦被创建,在整个应用执行期间都会存在。如果我们多次的创建同一个数据库的SqlSessionFactory,那么此数据库的资源将很容易被耗尽。为此,通常每一个数据库都会只对应一个SqlSessionFactory,所以在构建SqlSessionFactory实例时,建议使用单列模式。 InputStream inputStream = Resources.getResourceAsStream(配置文件位置); SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream); 7.1.2 SqlSession SqlSession是MyBatis框架中另一个重要的对象,它是应用程序与持久层之间执行交互操作的一个单线程对象,其主要作用是执行持久化操作。 每一个线程都应该有一个自己的SqlSession实例,并且该实例是不能被共享的。同时,SqlSession实例也是线程不安全的,因此其使用范围最好在一次请求或一个方法中,绝不能将其放在一个类的静态字段、实例字段或任何类型的管理范围(如Servlet的HttpSession)中使用。 什么是SqlSession? 使用完SqlSession对象后要及时关闭,通常可以将其放在finally块中关闭。 SqlSession sqlSession = sqlSessionFactory.openSession(); try { // 此处执行持久化操作 } finally { sqlSession.close(); } 7.1.2 SqlSession 查询方法: T T selectOne(String statement); T T selectOne(String statement, Object parameter); E ListE selectList(String statement); E ListE selectList(String statement, Object parameter); E ListE selectList(String statement, Object parameter, RowBounds rowBounds); void select(String statement, Object parameter, ResultHandler handler); SqlSession中的方法 插入、更新和删除方法: int insert(String statement); int insert(String statement, Object parameter); int update(String st
您可能关注的文档
- Java EE企业级应用开发第1章 初识Spring的基本应用.ppt
- Java EE企业级应用开发第2章 Spring中的Bean.ppt
- Java EE企业级应用开发第3章 Spring AOP.ppt
- Java EE企业级应用开发第4章 Spring的数据库开发.ppt
- Java EE企业级应用开发第5章 Spring的事务管理.ppt
- Java EE企业级应用开发第6章 初识MyBatis.ppt
- Java EE企业级应用开发第8章 动态SQL.ppt
- Java EE企业级应用开发第9章 MyBatis的关联映射.ppt
- Java EE企业级应用开发第13章 数据绑定.ppt
- Java EE企业级应用开发第14章 JSON数据交互和RESTful支持.ppt
- 难点详解鲁教版(五四制)6年级数学下册期末测试卷带答案详解(考试直接用).docx
- 难点详解鲁教版(五四制)6年级数学下册期末试题【培优】附答案详解.docx
- 难点解析鲁教版(五四制)7年级数学下册期末试题及完整答案详解(全国通用).docx
- 难点解析鲁教版(五四制)7年级数学下册期末试题含完整答案详解(名师系列).docx
- 难点解析鲁教版(五四制)7年级数学下册期末试题含完整答案详解【全国通用】.docx
- 难点解析鲁教版(五四制)7年级数学下册期末试卷(突破训练)附答案详解.docx
- 难点解析鲁教版(五四制)7年级数学下册期末试卷(能力提升)附答案详解.docx
- 难点详解京改版数学9年级上册期中试卷附参考答案详解【突破训练】.docx
- 难点解析鲁教版(五四制)7年级数学下册期末试题含完整答案详解(有一套).docx
- 难点解析鲁教版(五四制)7年级数学下册期末试卷带答案详解(夺分金卷).docx
文档评论(0)