Mybatis两表连接(一对一)


OrderJudgeMapper.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.datangedu.cn.dao.mapper.OrderJudgeMapper">
    <resultMap type="com.datangedu.cn.model.BusinessOrder" id="OrderJudgeMap">
        <id property="id" column="bid" />
        <result column="SERVER_ID" jdbcType="VARCHAR" property="serverId" />
        <result column="ORDER_INFO" jdbcType="VARCHAR" property="orderInfo" />
        <result column="CREATE_TIME" jdbcType="TIMESTAMP" property="createTime" />
        <!-- association :配置一对一属性 -->
        <!-- property:实体类中里面的  属性名 -->
        <!-- javaType:属性类型 -->
        <association property="serviceJudge" javaType="com.datangedu.cn.model.ServiceJudge">
            <id property="id" column="sid" />
            <result column="ORDER_ID" jdbcType="VARCHAR" property="orderId" />
            <result column="CONTENT" jdbcType="VARCHAR" property="content" />
            <result column="TYPE" jdbcType="INTEGER" property="type" />
            <result column="STATUS" jdbcType="INTEGER" property="status" />
        </association>
    </resultMap>
    <select id="selectOrderJudge" parameterType="java.lang.String" resultMap="OrderJudgeMap">
        <!--SELECT b.id bid,SERVER_ID,ORDER_INFO,CREATE_TIME,s.id sid,ORDER_ID,CONTENT,TYPE,s.STATUS
            FROM business_order b
            LEFT JOIN service_judge s ON b.id=ORDER_ID
            WHERE b.id=ORDER_ID -->
        SELECT b.id bid,SERVER_ID,ORDER_INFO,CREATE_TIME,s.id sid,ORDER_ID,CONTENT,TYPE,s.STATUS
        FROM business_order b
        LEFT JOIN service_judge s ON b.id=ORDER_ID
        WHERE b.id=ORDER_ID and s.STATUS=#{status}
    </select>
</mapper>

实体类

package com.datangedu.cn.model;

import java.util.Date;

import org.springframework.stereotype.Component;
@Component
public class BusinessOrder {
    private String id;
    private String businessNo;
    private String serverId;
    private Integer buynum;
    private String orderInfo;
    private Integer status;
    private Integer totalPrice;
    private Integer payType;
    private String memberId;
    private Date createTime;

    private ServiceJudge serviceJudge;//ServiceJudge的对象

    //此处应该重写hashcode和equals方法
    @Override
    public String toString() {
        return "BusinessOrder:" + id + "-" +createTime + "serviceJudge:" + serviceJudge.getId() + "-" + serviceJudge.getContent();
    }
}

controller层

@ResponseBody
    @RequestMapping("/selectOrderJudge")
    public Map<String,Object> eCommerceEvaluate(String status) {
        Map<String,Object> map = new HashMap<String,Object>();
        //System.out.println(status);
        List<BusinessOrder> businessOrderList = orderJudgeService.selectOrderJudge(status);
        //System.out.println(businessOrderList);
        if(businessOrderList.size()>0) {
            map.put("businessOrderList", businessOrderList);
            map.put("code", 1);
        }else {
            map.put("code", 0);
        }
        return map;
    }

js

$(".content-nav li").on("click", function(event){
    $(".content-nav li").removeClass("nav-active");
    $(event.target).addClass("nav-active");
    //alert("value=" + $(".nav-active .status").val());
    var status = $(".nav-active .status").val();
    $.ajax({
        url:"/selectOrderJudge",
        type:"post",
        data:{"status":status},
        success:function (data) {
            console.log(data);
            if(data.code==1){
                var str = "";
                $.each(data.businessOrderList,function(index,item){
                    if(item.serviceJudge.status==1){
                        str=`
                            <img src="" alt="图片" />
                            <ul class="article-info">
                                <li text="` + item.orderInfo +`"> ` + item.orderInfo + `</li>
                            </ul>
                            <p th:text="` + item.createTime + `">`+ item.createTime +`</p>
                            <p class="evaluate_btn">去评价</p>
                        `;
                    }else{
                        str=`
                            <img src="" alt="图片" />
                            <ul class="article-info">
                                <li text="` + item.orderInfo +`"> ` + item.orderInfo + `</li>
                            </ul>
                            <p th:text="` + item.createTime + `">`+ item.createTime +`</p>
                            <p class="evaluate_btn">已评价</p>
                        `;
                    }
                });
                
                $(".article").html(str);
            }else{
                $(".article").html("<p style='font-size:20px'>未找到订单</p>");;
            }
        },
        error:function(){
            console.error(arguments[1]);
        }
    });
})
优质内容筛选与推荐>>
1、hdu 1258
2、C# FTP远程服务器返回错误:(550) 文件不可用(例如,未找到文件,无法访问文件)
3、MySQL安装时出现Apply Security Settings错误的解决办法(转)
4、折半搜索
5、爬虫学习---美丽汤


长按二维码向我转账

受苹果公司新规定影响,微信 iOS 版的赞赏功能被关闭,可通过二维码转账支持公众号。

    阅读
    好看
    已推荐到看一看
    你的朋友可以在“发现”-“看一看”看到你认为好看的文章。
    已取消,“好看”想法已同步删除
    已推荐到看一看 和朋友分享想法
    最多200字,当前共 发送

    已发送

    朋友将在看一看看到

    确定
    分享你的想法...
    取消

    分享想法到看一看

    确定
    最多200字,当前共

    发送中

    网络异常,请稍后重试

    微信扫一扫
    关注该公众号