MyBatis-Spring(一)--搭建步骤
MyBatis-Spring项目不是Sring项目的子框架,而是由MyBatis社区开发的,所以在使用之前首先要导入mybatis-spring包,我是通过maven添加的依赖:
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis-spring</artifactId>
<version>1.3.2</version>
</dependency>
配置MyBatis-Spring项目的步骤:
- 配置数据源
- 配置SqlSessionFactory。可以选择的配置有SqlSessionTemplate,在同时配置SqlSessionFactory和SqlSessionTemplate的情况下,优先采用SqlSessionTemplate。
- 配置Mapper。可以配置单个Mapper,也可以通过扫描的方法生成Mapper,此时Spring IoC会生成对应接口的实例,可以通过注入方式获取资源。
- 事务管理。
下面介绍每一步的配置方法:
一、配置数据源
在spring中配置数据源时,可以使用spring内部提供的SimpleDriverDataSource类,也可以使用第三方数据库连接池或者从web服务中通过JNDI获取数据源,下面是这三种方式的具体配置:
1⃣️使用spring内部提供的类
<bean id="dataSource" class="org.springframework.jdbc.datasource.SimpleDriverDataSource">
<property name="driverClassName" value="org.postgresql.Driver" />
<property name="url" value="jdbc:postgresql://localhost:5433/postgres" />
<property name="username" value="postgres" />
<property name="password" value="postgres" />
</bean>
2⃣️第三方数据库连接池
如DBCP数据库连接池,使用之前要先下载相关的jar包
<dependency>
<groupId>commons-dbcp</groupId>
<artifactId>commons-dbcp</artifactId>
<version>1.4</version>
</dependency>
配置方式:
<!-- 第一步:配置数据源--使用数据库连接池 -->
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource">
<property name="driverClassName" value="org.postgresql.Driver" />
<property name="url" value="jdbc:postgresql://localhost:5433/postgres" />
<property name="username" value="postgres" />
<property name="password" value="hyc123" />
<!-- 最大数据库连接数 -->
<property name="maxActive" value="100" />
<!-- 最大空闲数,即等待连接数 -->
<property name="maxIdle" value="5" />
<!-- 最大等待连接时间 -->
<property name="maxWait" value="10000" />
</bean>
自己开发测试是可以使用第一种,但在项目中基本都用数据库连接池的方式。
4⃣️JNDI方式
首先要在Tomacat、WebLogic等JavaEE服务器上配置数据源,以Tomcat为例,在server.xml中增加如下配置:
<Resource
name="jdbc/pg"
auth="Container"
type="javax.sql.DataSource"
maxActive="100"
maxIdle="30"
maxWait="10000"
username="postgres"
password="postgres"
driverClassName="org.postgresql.Driver"
url="jdbc:postgresql://localhost:5433/postgres?useUnicode=true&characterEncoding=utf-8"/>
然后在spring中进行配置:
<bean id="dataSource" class="org.springframework.jndi.JndiObjectFactoryBean">
<property name="jndiName" value="jdbc/pg"></property>
</bean>
有关JNDI的配置可以参考大神文章:https://www.cnblogs.com/xdp-gacl/p/3951952.html
二、配置SqlSessionFactory
在mybatis中SqlSession是进行数据库操作的关键,而它是由SqlSessionFactory产生的,在MyBatis-Spring中,提供了SqlSessionFactoryBean支持SqlSessionFactory的创建.在spring中的配置如下:
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
<!-- 配置数据源 -->
<property name="dataSource" ref="dataSource" />
<!-- 配置mybatis -->
<property name="configLocation" value="mybatis-config2.xml" />
</bean>
如上代码中所示,SqlSessionFactory有两个属性:
- dataSource:配置数据源,引用上文中的任意一种配置方式;
- configLocation:mybatis配置文件的路径;
三、配置Mapper
mapper就是mybatis中的映射器,包括一个接口和一个mapper.xml文件,在前面的mybatis中已经介绍过。配置完之后需要注意的一点是,一定要将这个mapper.xml引入mybatis的配置文件,也就是第二步中的mybatis-config2.xml文件中。
四、事务管理
这部分内容后面的文章中专门介绍。
以上就是搭建MyBatis-Spring项目的步骤,下一篇文章将介绍通过SqlSessionTemplate实现数据库的增删改查。
最新文章
- RunLoop相关知识的总结
- HDU 1561 树形DP入门
- PPT图片快速编辑技巧
- 通过 Javacore 诊断线程挂起等性能问题
- setInterval和setTimeout调用方法小知识科普
- <;QtEndian>; - Endian Conversion Functions
- UILongPressGestureRecognizer的selector多次调用解决方法
- angularjs中ng-repeat-start与ng-repeat-end用法实例
- js中indexof()简单使用
- Hibernate Dialect must be explicitly set
- 小程序中使用ECharts 异步加载数据
- 网络流24题 ——运输问题 luogu 4015
- AssetBundle打包-----BuildPipeline的应用
- Mongo学习笔记
- 一款超级炫酷的编辑代码的插件 Power Mode
- 转:HashMap实现原理分析(面试问题:两个hashcode相同 的对象怎么存入hashmap的)
- Office 2010 安装程序包的语言不受系统支持
- 第35次Scrum会议(11/23)【欢迎来怼】
- 部署维护docker环境
- bzoj 3932: [CQOI2015]任务查询系统 -- 主席树 / 暴力
热门文章
- day23_5_练习_Calculator_使用正则表达式计算复杂表达式
- threading线程中的方法(27-11)
- java读取字符串,生成txt文件
- 谈谈HINT /*+parallel(t,4)*/在SQL调优中的重要作用
- jmeter-测试https请求
- angularJs FileUpload插件上传同一文件无效问题记录
- virtualbox虚拟机下的cdlinux找不到无线网卡的解决方法
- iOS开发系列-GCD
- LUA中的冒号、点和self
- vue中使用动画vue-particles实现背景粒子酷炫效果