`

Spring基础:数据访问(3)

阅读更多
在开源世界里,有很多ORM框架使用,比如Hibernate,还有近几年用的比较多的Mybatis,关于这些框架的优点缺点,这里就不详细叙述,仅关注如何结合Spring和Mybatis。

1. Mybatis属性配置文件
<?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>
    <settings>
        <setting name="lazyLoadingEnabled" value="false"/>
    </settings>
    <typeAliases>
        <typeAlias alias="Forum" type="com.firethewhole.maventest11.domain.Forum"/>
    </typeAliases>
    <mappers>
        <mapper resource="mybatis/Forum.xml"/>
    </mappers>
</configuration>


2. Mybatis Dao操作配置文件
<?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="com.firethewhole.maventest11.dao.mybatis.ForumMybatisDao">
    <select id="getForum" resultType="Forum" parameterType="int">
        SELECT
            forum_id forumId,
            forum_name forumName,
            forum_desc forumDesc
        FROM t_forum
        WHERE forum_id=#{forumId}
    </select>
    
    <insert id="addForum" parameterType="Forum">
        INSERT INTO t_forum(forum_name,forum_desc)
        VALUES(#{forumName},#{forumDesc})
    </insert>
    
    <update id="updateForum" parameterType="Forum">
        UPDATE t_forum
        SET forum_name=#{forumName},forum_desc=#{forumDesc}
        WHERE forum_id=#{forumId}
    </update>
</mapper>


3. 在Spring的配置文件中配置Mybatis使用的SqlSessionFactory
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"
    p:dataSource-ref="basicDatasource"
    p:configLocation="classpath:mybatisConfig.xml"/>


4. 注入Mybatis所使用的Template,SqlSessionTemplate
<bean class="org.mybatis.spring.SqlSessionTemplate">
    <constructor-arg ref="sqlSessionFactory"/>
</bean>


5. 编写Mybatis的DAO类
@Repository
public class ForumMybatisDao {
    @Autowired
    private SqlSessionTemplate sessionTemplate;
    public Forum getForum(int forumId) {
        return sessionTemplate.selectOne(
                "com.firethewhole.maventest11.dao.mybatis.ForumMybatisDao.getForum"
                , forumId);
    }
}
分享到:
评论

相关推荐

    Spring基础:数据访问(1)

    NULL 博文链接:https://foreversky12.iteye.com/blog/2345479

    Spring基础:数据访问(2)

    NULL 博文链接:https://foreversky12.iteye.com/blog/2348313

    spring基础进阶技巧200篇.zip

    数据访问:介绍了Spring框架对数据库访问的支持,包括JDBC、ORM框架、事务管理等。 测试和调试:介绍了如何使用Spring进行单元测试和集成测试,以及调试技巧和工具的使用。 这本资源适合已经具备一定Spring基础知识...

    Spring面试专题.md

    * Spring DAO:对JDBC的抽象,简化了数据访问异常的处理; * Spring ORM:对现有的ORM框架的支持; * Spring Web:提供了基本的面向Web的综合特性,例如多方文件上传; * Spring MVC:提供面向Web应用的Model-View-...

    SingleJDBCBase 基于Spring Framework基础上搭建的一个Java基础开发套件

    SingleJDBCBase 是基于Spring Framework基础上搭建的一个Java基础开发套件,以Spring MVC为模型视图控制器,JDBC为数据访问层。 * 核心框架:Spring Framework 4.2.7 * 安全框架: * 视图框架:Spring MVC 4.2.7 * ...

    Spring框架:深入解析、心得分享与实战应用

    同时,Spring还提供了强大的事务管理、数据访问、Web开发等功能,帮助开发者快速构建出高效、稳定的应用程序。 除了核心功能外,Spring框架还具有良好的扩展性,可以与其他技术栈轻松集成。无论是与数据库、消息...

    Spring Boot 实战开发2022年

    │ 开篇词 从零开始:为什么要学习 Spring Boot?.mp4 │ 01 家族生态:如何正确理解 ...│ 23 数据测试:如何使用 Spring 测试数据访问层组件?.mp4 │ 24 服务测试:如何使用 Spring 测试 Web 服务层组件?.mp4

    SingleMyBatis 是基于Spring Framework基础上搭建的一个Java基础开发套件

    SingleMyBatis 是基于Spring Framework基础上搭建的一个Java基础开发套件,以Spring MVC为模型视图控制器,MyBatis为数据访问层。 * 核心框架:Spring Framework 4.2.7 * 安全框架: * 视图框架:Spring MVC 4.2.7 *...

    SingleHibernate 是基于Spring Framework基础上搭建的一个Java基础开发套件

    SingleHibernate 是基于Spring Framework基础上搭建的一个Java基础开发套件,以Spring MVC为模型视图控制器,Hibernate为数据访问层。 * 核心框架:Spring Framework 4.2.7 * 安全框架: * 视图框架:Spring MVC ...

    SpringBatch+Spring+Mybatis+MySql (spring batch 使用jar)

    Spring Batch以POJO和大家熟知的Spring框架为基础,使开发者更容易的访问和利用企业级服务。Spring Batch可以提供大量的,可重复的数据处理功能,包括日志记录/跟踪,事务管理,作业处理统计工作重新启动、跳过,和...

    Spring Boot 技术栈学习分享,涵盖了基础知识、Web开发、数据访问-spring-boot-route.zip

    Spring Boot 技术栈学习分享,涵盖了基础知识、Web开发、数据访问-spring-boot-route

    Spring3MVC注解教程.ppt

    《Spring MVC 3.0实战指南》,参考《Spring 3.x企业应用开发实战》。 内容简介: 1、Spring MVC框架简介 2、HTTP请求地址映射 3、HTTP请求数据的绑定 4、数据转换、格式化、校验 5、数据模型控制 6、视图及...

    spring4.3.9相关jar包

    spring-jdbc.jar(必须) :这个jar 文件包含对Spring 对JDBC 数据访问进行封装的所有类。 外部依赖spring-beans,spring-dao。 spring-web.jar(必须) :这个jar 文件包含Web 应用开发时,用到Spring 框架时所需...

    SpringData.zip

    Spring Data 项目的目的是为了简化构建基于 Spring 框架应用的数据访问计数,包括非关系数据库、Map-Reduce 框架、云数据服务等等;另外也包含对关系数据库的访问支持。Spring Data 包含多个子项目:Commons - 提供...

    SpringBoot使用Spring-data-jpa简化数据访问层

    虽然一些基础的数据访问已经可以得到很好的复用,但是在代码结构上针对每个实体都会有一堆Dao的接口和实现。 由于模板Dao的实现,使得这些具体实体的Dao层已经变的非常“薄”,有一些具体实体的Dao实现可能完全就是...

    Spring Data实战

    Spring Data项目就是一种简化Java应用构建的数据访问技术,它可以帮助开发人员高效地使用最新的数据处理和管理工具,同时还能够以最新的方式使用传统的数据库。  《Spring Data实战》从Spring Data背景知识、关系型...

    Spring MVC 3.0实战指南.ppt

    《Spring MVC 3.0实战指南》,参考《Spring 3.x企业应用开发实战》。 内容简介: 1、Spring MVC框架简介 2、HTTP请求地址映射 3、HTTP请求数据的绑定 4、数据转换、格式化、校验 5、数据模型控制 6、视图及解析器 7...

    Spring.3.x企业应用开发实战(完整版).part2

    第3篇 数据访问 第8章 Spring对DAO的支持 8.1 Spring的DAO理念 8.2 统一的异常体系 8.2.1 Spring的DAO异常体系 8.2.2 JDBC的异常转换器 8.2.3 其他持久技术的异常转换器 8.3 统一数据访问模板 8.3.1 使用模板和回调...

    《JAVA EE开发的颠覆者 SPRING BOOT实战》高清带书签

    涵盖使用Spring Boot 进行Java EE 开发的绝大数应用场景,包含:Web 开发、数据访问、安全控制、批处理、异步消息、系统集成、开发与部署、应用监控、分布式系统开发等。 当你学完本书后,你将能使用Spring Boot ...

Global site tag (gtag.js) - Google Analytics