• MyBatis-Spring(一)--搭建步骤


    MyBatis-Spring项目不是Sring项目的子框架,而是由MyBatis社区开发的,所以在使用之前首先要导入mybatis-spring包,我是通过maven添加的依赖:

    1 <dependency>
    2     <groupId>org.mybatis</groupId>
    3     <artifactId>mybatis-spring</artifactId>
    4     <version>1.3.2</version>
    5 </dependency>

    配置MyBatis-Spring项目的步骤:

    • 配置数据源
    • 配置SqlSessionFactory。可以选择的配置有SqlSessionTemplate,在同时配置SqlSessionFactory和SqlSessionTemplate的情况下,优先采用SqlSessionTemplate。
    • 配置Mapper。可以配置单个Mapper,也可以通过扫描的方法生成Mapper,此时Spring IoC会生成对应接口的实例,可以通过注入方式获取资源。
    • 事务管理。

    下面介绍每一步的配置方法:

    一、配置数据源

    在spring中配置数据源时,可以使用spring内部提供的SimpleDriverDataSource类,也可以使用第三方数据库连接池或者从web服务中通过JNDI获取数据源,下面是这三种方式的具体配置:

    1⃣️使用spring内部提供的类

    1 <bean id="dataSource" class="org.springframework.jdbc.datasource.SimpleDriverDataSource">
    2         <property name="driverClassName" value="org.postgresql.Driver" />
    3         <property name="url" value="jdbc:postgresql://localhost:5433/postgres" />
    4         <property name="username" value="postgres" />
    5         <property name="password" value="postgres" />
    6 </bean>

    2⃣️第三方数据库连接池

    如DBCP数据库连接池,使用之前要先下载相关的jar包

    1 <dependency>
    2     <groupId>commons-dbcp</groupId>
    3     <artifactId>commons-dbcp</artifactId>
    4     <version>1.4</version>
    5 </dependency>

    配置方式:

     1 <!-- 第一步:配置数据源--使用数据库连接池 -->
     2 <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource">
     3         <property name="driverClassName" value="org.postgresql.Driver" />
     4         <property name="url" value="jdbc:postgresql://localhost:5433/postgres" />
     5         <property name="username" value="postgres" />
     6         <property name="password" value="hyc123" />
     7         <!-- 最大数据库连接数 -->
     8         <property name="maxActive" value="100" />
     9         <!-- 最大空闲数,即等待连接数 -->
    10         <property name="maxIdle" value="5" />
    11         <!-- 最大等待连接时间 -->
    12         <property name="maxWait" value="10000" />
    13 </bean>

    自己开发测试是可以使用第一种,但在项目中基本都用数据库连接池的方式。

    4⃣️JNDI方式

    首先要在Tomacat、WebLogic等JavaEE服务器上配置数据源,以Tomcat为例,在server.xml中增加如下配置:

     1 <Resource 
     2          name="jdbc/pg"
     3          auth="Container" 
     4          type="javax.sql.DataSource"
     5          maxActive="100" 
     6          maxIdle="30" 
     7          maxWait="10000"
     8          username="postgres" 
     9          password="postgres"
    10          driverClassName="org.postgresql.Driver"
    11          url="jdbc:postgresql://localhost:5433/postgres?useUnicode=true&amp;characterEncoding=utf-8"/>

    然后在spring中进行配置:

    1 <bean id="dataSource" class="org.springframework.jndi.JndiObjectFactoryBean">
    2         <property name="jndiName" value="jdbc/pg"></property>
    3 </bean>

    有关JNDI的配置可以参考大神文章:https://www.cnblogs.com/xdp-gacl/p/3951952.html

    二、配置SqlSessionFactory

    在mybatis中SqlSession是进行数据库操作的关键,而它是由SqlSessionFactory产生的,在MyBatis-Spring中,提供了SqlSessionFactoryBean支持SqlSessionFactory的创建.在spring中的配置如下:

    1 <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
    2         <!-- 配置数据源 -->
    3         <property name="dataSource" ref="dataSource" />
    4         <!-- 配置mybatis -->
    5         <property name="configLocation" value="mybatis-config2.xml" />
    6 </bean>

    如上代码中所示,SqlSessionFactory有两个属性:

    • dataSource:配置数据源,引用上文中的任意一种配置方式;
    • configLocation:mybatis配置文件的路径; 

    三、配置Mapper

     mapper就是mybatis中的映射器,包括一个接口和一个mapper.xml文件,在前面的mybatis中已经介绍过。配置完之后需要注意的一点是,一定要将这个mapper.xml引入mybatis的配置文件,也就是第二步中的mybatis-config2.xml文件中。

    四、事务管理

    这部分内容后面的文章中专门介绍。

    以上就是搭建MyBatis-Spring项目的步骤,下一篇文章将介绍通过SqlSessionTemplate实现数据库的增删改查。

  • 相关阅读:
    Quartz.Net 学习随手记之04 构建Windows Service承载服务
    Quartz.Net 学习随手记之03 配置文件
    SQL Server问题之计算机名称更改后无法登陆本地数据库
    SQL Server问题之The remote procedure call failed. [0x800706be]
    跨框架菜单menuG5使用
    DLink 524M经常断线、掉线问题的解决
    MSChart使用导航之开发
    ReSharper制作Template帮助我们快速输入代码
    网站右下角弹出通知效果的制作
    Dell6400拆卸与维护
  • 原文地址:https://www.cnblogs.com/hellowhy/p/9727978.html
Copyright © 2020-2023  润新知