Spring整合MyBatis

来源:互联网 发布:ait8328 编程 编辑:程序博客网 时间:2024/05/18 03:25

IBookDAO接口
public interface IBookDAO {    public int addBook(Book bok);}
IBookDAO.xml
<?xml version="1.0" encoding="UTF-8" ?><!--头文件--><!DOCTYPE mapper        PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"        "http://mybatis.org/dtd/mybatis-3-mapper.dtd"><mapper namespace="cn.happy.spring21ssmxml.dao.IBookDAO">    <insert id="addBook">         insert into book(bookname,bookprice) values(#{bookName},#{bookPrice})    </insert></mapper>
entity层 Book实体类
public class Book {    private Integer bookId;    private String bookName;    private Integer bookPrice;    public Integer getBookId() {        return bookId;    }    public void setBookId(Integer bookId) {        this.bookId = bookId;    }    public String getBookName() {        return bookName;    }    public void setBookName(String bookName) {        this.bookName = bookName;    }    public Integer getBookPrice() {        return bookPrice;    }    public void setBookPrice(Integer bookPrice) {        this.bookPrice = bookPrice;    }}
 service  BookServiceImpl
public class BookServiceImpl implements IBookService {    //植入dao    IBookDAO dao;    public int addBook(Book book) {        return dao.addBook(book);    }    public IBookDAO getDao() {        return dao;    }    public void setDao(IBookDAO dao) {        this.dao = dao;    }}
IBookService接口
public interface IBookService {    public int addBook(Book bok);}
applicationContextspring19ssm.xml配置
 <!--01.识别jdbc.properties文件-->    <context:property-placeholder location="jdbc.properties"></context:property-placeholder>    <!--jdbc-->    <bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">        <property name="driverClassName" value="${jdbc.driverClassName}"></property>        <property name="url" value="${jdbc.url}"></property>        <property name="username" value="${jdbc.user}"></property>        <property name="password" value="${jdbc.password}"></property>    </bean>    <!--工厂配置-->    <bean id="sessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">        <property name="dataSource" ref="dataSource"></property>        <property name="configLocation" value="classpath:MyBatis-config.xml"></property>    </bean>    <!--dao-->    <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">        <property name="basePackage" value="cn.happy.spring21ssmxml.dao"></property>        <property name="sqlSessionFactoryBeanName" value="sessionFactory"></property>    </bean>    <!--service-->    <bean id="bookService" class="cn.happy.spring21ssmxml.service.BookServiceImpl">        <property name="dao" ref="IBookDAO"></property>    </bean>    <!--事务管理器-->    <bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">        <property name="dataSource" ref="dataSource"></property>    </bean>    <!-- 第三种:AspectJ AOP 配置事务 -->    <tx:advice id="txAdvice" transaction-manager="transactionManager">        <tx:attributes>            <tx:method name="buy*" isolation="DEFAULT" propagation="REQUIRED" rollback-for="StockException"/>        </tx:attributes>    </tx:advice>    <aop:config>        <!--配置了切点Pointcut-->        <aop:pointcut id="mypoint" expression="execution(* *..service.*.*(..))"/>        <!--顾问-->        <aop:advisor advice-ref="txAdvice" pointcut-ref="mypoint"></aop:advisor>    </aop:config>
MyBatis-config.xml
<?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>    <typeAliases>        <package name="cn.happy.spring21ssmxml.entity"></package>    </typeAliases></configuration>

测试类
public class SpringTest0806 {    @Test    public void test01(){        ApplicationContext ctx=new ClassPathXmlApplicationContext("applicationContextspring19ssm.xml");        IBookService service = (IBookService) ctx.getBean("bookService");        Book book=new Book();        book.setBookName("活着");        book.setBookPrice(12);        service.addBook(book);    }}











原创粉丝点击