mybatis学习-- 级联查询 注解式写法

本文详细介绍了MyBatis框架的基本思想、核心组件以及如何通过接口方式编程和注解式写法实现高效的数据操作,包括如何在Java对象与数据库之间进行映射配置,并提供了具体示例来展示其在实际开发中的应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

http://www.yihaomen.com/article/java/302.htm
转自

什么是mybatis
MyBatis是支持普通SQL查询,存储过程和高级映射的优秀持久层框架。MyBatis消除了几乎所有的JDBC代码和参数的手工设置以及结果集的检索。MyBatis使用简单的XML或注解用于配置和原始映射,将接口和Java的POJOs(Plan Old Java Objects,普通的Java对象)映射成数据库中的记录

orm工具的基本思想
无论是用过的hibernate,mybatis,你都可以法相他们有一个共同点:
1. 从配置文件(通常是XML配置文件中)得到 sessionfactory.
2. 由sessionfactory 产生 session
3. 在session 中完成对数据的增删改查和事务提交等.
4. 在用完之后关闭session 。
5. 在java 对象和 数据库之间有做mapping 的配置文件,也通常是xml 文件。

1.接口方式编程, 方法名对应 xml,select Id

2.级联查询 注解式写法

注以下为自己写的例子:

public class Article {

    private Integer id;


    private Media media;
    set and get
@MyBatisDao
public interface ArticleDao  {
    @Select("select * from t_article where t_article.id=#{id}")
    @ResultMap("articleResultMap")
    public Article getById(Integer id);
@MyBatisDao
public interface MediaDao {
    @Select("select * from t_media where id=#{id}")
    public Media getById(Integer id);
}

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="com.ydyx.cms.dao.ArticleDao">

    <resultMap id="articleResultMap" type="com.xxxxx.cms.entity.Article">
        <id property="id" column="id" />    
        <association property="media" column="media_id" select="com.xxx.cms.dao.MediaDao.getById" />
    </resultMap>


</mapper>

测试结果的json数据
{“result”:{“id”:16,”media”:{“id”:15,”name”:”15”,”url”:”234”},”title”:”15”},”status”:200}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值