• Java学习笔记-spring整合mybatis


    这个项目就是一个例子,只有添加图书的功能:

    项目架构:

    resource:

    整合流程:

    1.pom文件节点,这两个是整合用的,其他节点不再赘述:

     1 <!-- https://mvnrepository.com/artifact/org.mybatis/mybatis-spring -->
     2         <dependency>
     3             <groupId>org.mybatis</groupId>
     4             <artifactId>mybatis-spring</artifactId>
     5             <version>1.2.0</version>
     6         </dependency>
     7         <!-- https://mvnrepository.com/artifact/org.mybatis/mybatis -->
     8         <dependency>
     9             <groupId>org.mybatis</groupId>
    10             <artifactId>mybatis</artifactId>
    11             <version>3.2.2</version>
    12         </dependency>

    如果mybatis用的是3.4.1,那么mybatis-spring版本要用1.3.0

    2.applicationContextDay06.xml

     1 <?xml version="1.0" encoding="UTF-8"?>
     2 <beans xmlns="http://www.springframework.org/schema/beans"
     3        xmlns:aop="http://www.springframework.org/schema/aop"
     4        xmlns:context="http://www.springframework.org/schema/context"
     5        xmlns:tx="http://www.springframework.org/schema/tx"
     6        xmlns:p="http://www.springframework.org/schema/p"
     7        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
     8        xsi:schemaLocation="
     9         http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
    10         http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop.xsd
    11         http://www.springframework.org/schema/context  http://www.springframework.org/schema/context/spring-context.xsd
    12         http://www.springframework.org/schema/tx  http://www.springframework.org/schema/tx/spring-tx.xsd
    13 ">
    14     <!--01.识别jdbc.properties文件-->
    15     <context:property-placeholder location="classpath:jdbc.properties"/>
    16     <!--02.数据源-->
    17     <bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource">
    18         <property name="driverClassName" value="${jdbc.driver}"/>
    19         <property name="url" value="${jdbc.url}"/>
    20         <property name="username" value="${jdbc.username}"/>
    21         <property name="password" value="${jdbc.password}"/>
    22         <!--<property name="maxActive" value="20"/>-->
    23     </bean>
    24     <!--03.工厂配置 datasource+mybatis-config-->
    25     <bean id="sessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean" p:dataSource-ref="dataSource" p:configLocation="classpath:mybatis-config.xml"/>
    26     <!--04.Dao层Mapper注入-->
    27     <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer" p:basePackage="cn.happy.day06zhenghe.dao"/>
    28     <!--05.service-->
    29     <bean id="bookService" class="cn.happy.day06zhenghe.service.impl.BookServiceImpl" p:bookDAO-ref="IBookDAO"/>
    30     <!--06.transactionManager-->
    31     <bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager" p:dataSource-ref="dataSource"/>
    32     <!--07.AspectJ AOP 配置事务-->
    33     <tx:advice id="txAdvice" transaction-manager="transactionManager">
    34         <tx:attributes>
    35             <tx:method name="addBook" isolation="DEFAULT" propagation="REQUIRED"/>
    36         </tx:attributes>
    37     </tx:advice>
    38     <aop:config>
    39         <!--切点-->
    40         <aop:pointcut id="pointcut" expression="execution(* *..day06zhenghe.service.*.*(..))"/>
    41         <!--顾问-->
    42         <aop:advisor advice-ref="txAdvice" pointcut-ref="pointcut"/>
    43     </aop:config>
    44 </beans>

    3.jdbc.properties,这里把四个串配上就行了。

    4.mybatis,不用配置environments和mappers了,可以setting和alias,也可以直接干掉这个文件。

    5.测试类:

     1 public class Test20171021 {
     2     @Test
     3     public void test01(){
     4         ApplicationContext ctx=new ClassPathXmlApplicationContext("applicationContextDay06.xml");
     5         IBookService bookService = (IBookService)ctx.getBean("bookService");
     6         Book book = new Book();
     7         book.setBookname("放学后");
     8         book.setBookprice((double) 20);
     9         bookService.addBook(book);
    10     }
    11 }
  • 相关阅读:
    Clickhouse SQL语法
    Clickhouse副本及分片
    Clickhouse入门及实践
    Flink CDC 与Hudi整合
    分布式相关理论及算法
    ClickHouse查询优化
    ios之OC与C、OC与c++互相调用OC与C++的互相调用
    前端 base64加密 及 md5加密
    CSS实现文字对齐效果总结
    十分钟学会Centos7下无图形界面安装 Oracle11g
  • 原文地址:https://www.cnblogs.com/tomasman/p/7704496.html
Copyright © 2020-2023  润新知