`

MyBatis核心SqlSessionFactory的创建

 
阅读更多

SqlSessionFactory是每个MyBatis应用的核心

 

其实现方式有两种,使用配置文件或使用JAVA编码。

 

1.配置文件实现

<?xml version="1.0" encoding="UTF-8" ?> 
<!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" 
"http://mybatis.org/dtd/mybatis-3-config.dtd">

<configuration>
	<environments default="development">
		<environment id="development">
			<transactionManager type="JDBC" />
			<dataSource type="POOLED">
				<property name="driver" value="${driver}" />
				<property name="url" value="${url}" />
				<property name="username" value="${username}" />
				<property name="password" value="${password}" />
			</dataSource>
		</environment>
	</environments>
	
	<mappers>
		<mapper resource="org/mybatis/example/BlogMapper.xml" />
	</mappers>
	
</configuration> 

 使用时利用下面代码进行初始化

String resource = "org/mybatis/example/Configuration.xml"; 
Reader reader = Resources.getResourceAsReader(resource); 
SqlSessionFactory sqlMapper = new SqlSessionFactoryBuilder().build(reader);
 

2.使用编码实现

DataSource dataSource = new PooledDataSource("com.mysql.jdbc.Driver",
                        "jdbc:mysql://localhost/mybatis?userUnicode=true&amp;characterEncoding=utf8", "admin", "123456");
        Environment environment = new Environment("test", new JdbcTransactionFactory(), dataSource);
        Configuration configuration = new Configuration(environment);
        configuration.addMapper(TestDao.class);
        SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(configuration);

 

 

生命同期问题

SqlSessionFactoryBuilder 是用过即丢,其生命周期只存在于方法体内

SqlSessionFactory 单例,存在于整合应用运行时

0
2
分享到:
评论

相关推荐

    mybatis核心包+mysql驱动包+mybatis依赖包(完整).zip

    接着,我们可以使用SqlSessionFactory创建SqlSession对象,通过SqlSession执行SQL语句。MyBatis允许我们在Mapper XML文件中定义SQL语句,通过接口方法与XML中的SQL对应,实现动态SQL和结果映射。 此外,MyBatis支持...

    Mybatis核心的几个包

    2. **SqlSessionFactory**: SqlSessionFactory是Mybatis的核心工厂类,它可以根据数据库连接创建SqlSession对象。SqlSession对象用于执行SQL语句并与数据库交互。SqlSessionFactory是线程安全的,通常在应用启动时...

    mybatis核心jar包+mybatis与spring整合jar包

    SqlSessionFactory则负责创建SqlSession对象,SqlSession是MyBatis操作数据库的入口,通过它可以执行SQL语句。而Mapper接口则定义了数据库操作的方法,实现了数据访问层与业务逻辑层的分离。 在MyBatis与Spring的...

    MyBatis核心教程

    ### MyBatis核心教程 #### 1. 引言 ##### 1.1 为何选择mybatis-guice——动机 在日常工作中,我们经常同时使用MyBatis SQL Mapper和Google Guice框架,并逐渐意识到在不同的项目中重复编写相同的代码片段。为了...

    SSM框架的学习与应用JavaEE(第二天)Mybatis的深入学习

    通过对MyBatis的深入学习,包括MyBatis核心对象、配置文件、映射文件的使用。 文章具体介绍了: ...SqlSession和SqlSessionFactory创建示例 用户别名配置示例 JUnit与Mockito结合测试示例 工具类MyBatisUtil代码示例

    SpringMVC精品资源--使用SpringMVC+MyBatis+FreeMarker 创建简单的CMS内容发布系统.zip

    - **工作原理**:MyBatis通过SqlSessionFactory创建SqlSession,然后调用SqlSession的execute方法执行SQL,最后通过ResultMap将查询结果映射为Java对象。 - **在CMS中的应用**:MyBatis可以用来操作数据库,如插入...

    mybatis整合spring时 的核心jar包

    1. MyBatis核心Jar包: - `mybatis-3.x.x.jar`: MyBatis的主要框架,包含了SQL映射框架的所有功能,如SQL执行、参数绑定、结果映射等。 - `mybatis-spring-1.x.x.jar`: 这是MyBatis与Spring的适配器,提供了Spring...

    MyBatis核心包、依赖包、数据驱动包(心凡138提供)

    1. **MyBatis核心包** MyBatis的核心包是`mybatis-x.x.x.jar`,其中包含了MyBatis框架的主要功能。这个包中包含了许多关键类,如SqlSessionFactoryBuilder、SqlSessionFactory、SqlSession等,它们是MyBatis操作...

    spring mvc 和 mybatis整合的实例

    MyBatis通过SqlSessionFactory创建SqlSession对象,然后通过SqlSession执行SQL并获取结果集,最后关闭SqlSession。 整合Spring MVC和MyBatis的步骤如下: 1. **配置Spring MVC**:首先,我们需要在Web应用的web....

    Mybatis教程【核心】

    【Mybatis教程核心知识详解】 MyBatis 是一款强大的持久层框架,它允许开发者自定义 SQL、存储过程以及高级映射,从而极大地减少了手动编写 JDBC 代码的工作量。MyBatis 不像 Hibernate 或 Apache OJB 这样的“一站...

    mybatis与 spring整合全部jar包(包括springmvc)

    在提供的压缩包文件"mybatis与spring整合全部jar包(包括springmvc)"中,包含了这三个框架所需要的全部依赖库,包括但不限于mybatis核心库、spring核心库、spring-context、spring-web、spring-webmvc、mybatis-...

    SSM中spring与mybatis整合

    在Spring的配置文件中,我们需要定义一个`SqlSessionFactoryBean`,它会创建一个SqlSessionFactory,这是MyBatis的核心工厂类,用于创建SqlSession对象。 ```xml &lt;bean id="sqlSessionFactory" class="org.mybatis...

    springmvc+mybatis整合项目

    - **配置SqlSessionFactory**:接着,配置MyBatis的SqlSessionFactory,它是MyBatis的核心,用于创建SqlSession对象,执行SQL操作。 - **配置Mapper**:然后,定义Mapper接口,将SQL映射到接口的方法上。同时,...

    IDEA工具下构建SpringMVC+MyBatis框架

    创建MyBatis的配置文件`mybatis-config.xml`,配置数据源、事务管理器和SqlSessionFactory。在同一个目录下,创建Mapper接口和对应的XML映射文件,用于编写SQL语句。 在业务逻辑层(Service层),创建接口和实现类...

    mybatis3+spring+springMVC4整合jar包.rar下载

    - 配置Spring:创建Spring的配置文件(如applicationContext.xml),定义bean,包括DataSource、SqlSessionFactory、MapperScannerConfigurer等,实现数据源、MyBatis工厂和Mapper接口扫描。 - 配置MyBatis:在...

    MyBatis官方中文参考手册

    每个MyBatis应用以SqlSessionFactory的实例为核心,而SqlSessionFactory的实例可以通过SqlSessionFactoryBuilder获得。SqlSessionFactoryBuilder可以根据XML配置文件或者Configuration类的实例来构建...

    springmvc+mybatis 云笔记

    MyBatis的核心是SqlSession接口,通过SqlSessionFactoryBuilder创建SqlSessionFactory,再通过SqlSessionFactory创建SqlSession实例,从而执行CRUD操作。MyBatis还支持动态SQL,可以在Mapper XML文件中编写条件语句...

    smartgwt+mybatis+spring的整合

    1. **配置Spring**:创建Spring的配置文件,定义SmartGwt的服务和Mybatis的数据源、SqlSessionFactory以及Mapper接口的Bean。 2. **配置Mybatis**:设置Mybatis的全局配置文件,包括数据库连接信息,以及Mapper XML...

    mybatis-3.2.6 mybatis-spring-1.2.2

    2. **配置MyBatis**:创建MyBatis的核心配置文件`mybatis-config.xml`,定义数据源、事务管理器以及Mapper XML文件的位置。 3. **配置Spring**:在Spring的配置文件中,定义SqlSessionFactoryBean,它基于MyBatis的...

    springmybatis所有jar包

    MyBatis框架则专注于数据库操作,它的主要组件有MyBatis核心库、SqlSessionFactoryBuilder、SqlSessionFactory、SqlSession等。MyBatis通过XML或注解的方式将SQL语句与Java代码分离,使得SQL的编写和维护更为便捷。...

Global site tag (gtag.js) - Google Analytics