zoukankan      html  css  js  c++  java
  • Spring和MyBatis整合(注解版)

    1.导入所需要的依赖

    <!--MyBatis和Spring的整合包 由MyBatis提供-->
    <dependency>
      <groupId>org.mybatis</groupId>
      <artifactId>mybatis-spring</artifactId>
      <version>1.3.0</version>
    </dependency>
    <!--MyBatis的核心jar文件-->
    <dependency>
      <groupId>org.mybatis</groupId>
      <artifactId>mybatis</artifactId>
      <version>3.4.1</version>
    </dependency>
    View Code

    2.entity实体类

     3.dao层接口

     4.service接口

     5.serviceimpl实现类

     6.Dao.xml配置

     7.jdbc.properties配置

     8.applicationContext.xml大配置文件

    <?xml version="1.0" encoding="UTF-8"?>
    <beans xmlns="http://www.springframework.org/schema/beans"
           xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    
           xmlns:aop="http://www.springframework.org/schema/aop"
           xmlns:context="http://www.springframework.org/schema/context" xmlns:tx="http://www.springframework.org/schema/tx"
    
           xsi:schemaLocation="http://www.springframework.org/schema/beans
           http://www.springframework.org/schema/beans/spring-beans.xsd
    
            http://www.springframework.org/schema/aop
            http://www.springframework.org/schema/aop/spring-aop.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx.xsd">
       <context:component-scan base-package="com.spring"/>
        <!-- 配置数据源  spring内置的数据源-->
        <bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
            <property name="driverClassName" value="${jdbc.driver}"></property>
            <property name="url" value="${jdbc.url}"></property>
            <property name="username" value="${jdbc.username}"></property>
            <property name="password" value="${jdbc.password}"></property>
        </bean>
    
        <!-- 引入属性文件 -->
        <context:property-placeholder location="jdbc.properties.properties"/>
     <!--   &lt;!&ndash;注册DAO层:mapper的代理对象&ndash;&gt;
        <bean id="personDao" class="org.mybatis.spring.mapper.MapperFactoryBean">
            <property name="mapperInterface" value="com.spring.dao.PersonDao"></property>
            <property name="sqlSessionFactory" ref="sqlSessionFactory"></property>
        </bean>
        &lt;!&ndash;配置service层对象&ndash;&gt;
        <bean id="personService" class="com.spring.service.PersonServiceImpl">
            <property name="dao" ref="personDao"></property>
        </bean>-->
        <!-- sqlSessionFactory 创建SqlSession对象的工厂 -->
        <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
            <property name="dataSource" ref="dataSource"></property>
            <!-- Mybatis的大配置文件 -->
            <property name="typeAliasesPackage" value="com.spring.entity"></property>
            <!-- 扫描sql配置文件:mapper需要的xml文件 -->
            <property name="mapperLocations" value="classpath*:mapper/*.xml"/>
        </bean>
        <!-- MapperScannerConfigurer 扫描mapper文件扫描器 -->
        <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
            <property name="basePackage" value="com.spring.dao"></property>
        </bean>
    
        <!-- transactionManager 事务管理器-->
        <bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
            <property name="dataSource" ref="dataSource"></property>
        </bean>
        <!-- 事务通知-->
        <tx:advice transaction-manager="transactionManager" id="txAdvice">
            <tx:attributes>
                <!--get系列方法设置事务的隔离级别和传播行为-->
                <tx:method name="get*" isolation="READ_COMMITTED" propagation="REQUIRED"/>
            </tx:attributes>
        </tx:advice>
    </beans>
    View Code

    9.测试类

     结果:

  • 相关阅读:
    maven项目install时候一直报错,检查Maven-javadoc-plugin声明错误(Java 8 配置Maven-javadoc-plugin)或者是:警告: @throws 没有说明
    maven-gpg-plugin:1.2:sign (sign-artifacts) on project jdbc-pool: Cannot obtain passphrase in batch mode或者是Plugin execution not covered by lifecycle configuration
    org.eclipse.jdt.internal.compiler包下的类找不到
    Java finally语句到底是在return之前还是之后执行?
    lamp环境编译安装curl扩展
    PHP使用CURL获取302跳转后的地址实例
    php之curl设置超时实例
    php 使用curl 将文件上传
    PHP中CURL方法curl_setopt()函数的一些参数
    基于PHP的cURL快速入门
  • 原文地址:https://www.cnblogs.com/mayuan01/p/11797670.html
Copyright © 2011-2022 走看看