Movice.java:

public class Movice {
    private int mid;
    private String mname;
    private MoviceType moviceType;

    public Movice(int mid, String mname, MoviceType moviceType) {
        this.mid = mid;
        this.mname = mname;
        this.moviceType = moviceType;
    }

    public Movice() {
    }

    public int getMid() {
        return mid;
    }

    public void setMid(int mid) {
        this.mid = mid;
    }

    public String getMname() {
        return mname;
    }

    public void setMname(String mname) {
        this.mname = mname;
    }

    public MoviceType getMoviceType() {
        return moviceType;
    }

    public void setMoviceType(MoviceType moviceType) {
        this.moviceType = moviceType;
    }

    @Override
    public String toString() {
        return "Movice{" +
                "mid=" + mid +
                ", mname='" + mname + '\'' +
                ", moviceType=" + moviceType +
                '}';
    }
}

MoviceType.java:

public class MoviceType {
    private int typeid;
    private String typename;
    private List<Movice> movices;

    public MoviceType(int typeid, String typename, List<Movice> movices) {
        this.typeid = typeid;
        this.typename = typename;
        this.movices = movices;
    }

    public MoviceType() {
    }

    public int getTypeid() {
        return typeid;
    }

    public void setTypeid(int typeid) {
        this.typeid = typeid;
    }

    public String getTypename() {
        return typename;
    }

    public void setTypename(String typename) {
        this.typename = typename;
    }

    public List<Movice> getMovices() {
        return movices;
    }

    public void setMovices(List<Movice> movices) {
        this.movices = movices;
    }

    @Override
    public String toString() {
        return "MoviceType{" +
                "typeid=" + typeid +
                ", typename='" + typename + '\'' +
                ", movices=" + movices +
                '}';
    }
}

MoviceMapper.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">

<!--namespace命名空间,namespace必须为长类名-->
<mapper namespace="com.wance.mapper.MoviceMapper">
    <resultMap id="MoviceResultMap" type="Movice">
        <id property="mid" column="mid"/>
        <result property="mname" column="mname"/>
        <!--column为外键属性 -->
        <association property="moviceType" column="typeid" javaType="MoviceType">
            <id property="typeid" column="typeid"/>
            <result property="typename" column="typename"/>
        </association>
    </resultMap>
    <select id="findLasttestMovice" resultMap="MoviceResultMap">
        select movie.*,movietype.typename from movie,movietype where movie.typeid=movietype.typeid and mid=(SELECT MAX(mid) from movie)
    </select>


</mapper>

MoviceTypeMapper.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">

<!--namespace命名空间,namespace必须为长类名-->
<mapper namespace="com.wance.mapper.MoviceTypeMapper">
    <resultMap id="MoviceTypeResultMap" type="MoviceType">
        <id property="typeid" column="typeid"/>
        <result property="typename" column="typename"/>
        <collection property="movices" fetchType="lazy" ofType="Movice" select="findMovieByid" column="typeid">
            <id property="mid" column="mid"/>
            <result property="mname" column="mname"/>
        </collection>
    </resultMap>
    <!--查找单表 -->
    <select id="findById" parameterType="int" resultMap="MoviceTypeResultMap">
      select * from movietype where typeid=#{typeid}
    </select>

    <!--根据typeid,查找movie表 -->
    <select id="findMovieByid" parameterType="int" resultType="Movice">
        select * from movie where typeid=#{typeid}
    </select>

</mapper>

collection标签:

    <!--
        select:
            指定关联查询的查询statement
            即根据商品分类ID查询商品的statement的id
            然后将查询结果封装到property属性指定的变量中
        column:
            指定列的值作为
            com.ielm.mapper.ProductMapper.getByCategoryId()的查询参数
    -->
    <collection property="productList"
                select="com.ielm.mapper.ProductMapper.getByCategoryId"
                column="category_id"
    />

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐