关于整合spring+mybatis 第二种方式

Posted Realvie

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于整合spring+mybatis 第二种方式相关的知识,希望对你有一定的参考价值。

和第一种方式一样的步骤,不过bean.xml中有些许差异

<!-- 配置sqlSessionFactory -->
     <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
         <property name="dataSource" ref="dataSource"></property>
         <property name="configLocation" value="classpath:com/bsss/conf/mybatis.xml"></property>
     </bean>
    
    <!-- 此时不需要sqlSessionTemplate
    <bean id="sqlSessionTemplate" class="org.mybatis.spring.SqlSessionTemplate">
        <constructor-arg index="0" ref="sqlSessionFactory"></constructor-arg>
    </bean>
    -->
    <bean id="userLoginDAO" class="com.bsss.dao.impl.UserloginDAOImpl">
        <!-- property name必须是sqlSessionFactory,引用的是上面所配置的sqlSessionFactory -->
        <property name="sqlSessionFactory" ref="sqlSessionFactory"></property>
    </bean>

在DAO实现类中不需要SqlSessionTemplate的注入,直接继承SqlSessionDaoSupport类,使用getSqlSession()来获取sqlsession进行操作,如下所示

public class UserloginDAOImpl extends SqlSessionDaoSupport implements UserloginDAO{
    /*此时不需要SqlSessionTemplate的注入方法了
    public void setSqlSession(SqlSessionTemplate sqlSession) {
        this.sqlSession = sqlSession;
    }
    */
    //获取登录信息
    @Override
    public Userlogin getUserloginInfo(Userlogin ul){
        return (Userlogin)getSqlSession().selectOne("com.bsss.entity.userloginMapper.getUserlogin", ul);
    }

    @Override
    public int insertUser(Userlogin ul) {
        return getSqlSession().insert("com.bsss.entity.userloginMapper.insertUser", ul);
    }
    
    @Override
    public int deleteUser(int id) {
        return getSqlSession().delete("com.bsss.entity.userloginMapper.deleteUser", id);
    }
    
}

 

以上是关于关于整合spring+mybatis 第二种方式的主要内容,如果未能解决你的问题,请参考以下文章

Java Spring-Spring与Quartz整合

spring框架学习:Spring整合Web项目整合Mybatis

课时2:Spring整合MyBatis的几种方式 前面一个课时已经讲了一种思路了

Spring整合quartz实现定时动态任务

SpringBoot整合Dubbo的第二种方式——API(自定义Configuration配置类)

SpringBoot整合Dubbo的第二种方式——API(自定义Configuration配置类)