记一次mybatis #取值为null,$取值有值的问题

12 篇文章 0 订阅

项目中使用的的mybatis的exmaple的方式来组装sql,在项目开发的过程中,发现一个问题 #取值为null,$取值有值的问题。

使用$的日志:

2018-12-17 16:58:23.661 DEBUG c.b.e.base.dao.EispOrderMapper.selectByUdfExample - ==>  Preparing: SELECT DISTINCT eispOrder.id id_eispOrder, eispOrder.register_info_id register_info_id_eispOrder, eispOrder.order_no order_no_eispOrder, eispOrder.amount amount_eispOrder, eispOrder.org_id org_id_eispOrder, eispOrder.pay_type pay_type_eispOrder, eispOrder.payment_date payment_date_eispOrder, eispOrder.create_date create_date_eispOrder, eispOrder.modify_date modify_date_eispOrder, eispOrder.status status_eispOrder, eispOrder.check_status check_status_eispOrder, eispOrder.return_tel return_tel_eispOrder, eispOrder.return_type return_type_eispOrder, eispOrder.return_money return_money_eispOrder, eispOrder.return_status return_status_eispOrder, eispOrder.source_type source_type_eispOrder, eispOrder.device_no device_no_eispOrder, eispOrder.order_type order_type_eispOrder, eispOrder.create_user create_user_eispOrder, eispOrder.create_user_name create_user_name_eispOrder, eispOrder.create_user_phone create_user_phone_eispOrder, eispOrder.back_money_status back_money_status_eispOrder, eispOrder.back_money_type back_money_type_eispOrder, eispOrder.back_money back_money_eispOrder, eispOrder.back_money_time back_money_time_eispOrder, eispOrder.transaction_no transaction_no_eispOrder, eispOrder.del_status del_status_eispOrder, eispOrder.pdf_url pdf_url_eispOrder, eispOrder.pdf_size pdf_size_eispOrder, eispOrder.pdf_status pdf_status_eispOrder, eispOrder.first_order first_order_eispOrder, eispOrder.online_type online_type_eispOrder, eispOrder.score score_eispOrder, eispOrder.score_tel score_tel_eispOrder , eispRegisterInfo.id id_eispRegisterInfo, eispRegisterInfo.user_id user_id_eispRegisterInfo, eispRegisterInfo.name name_eispRegisterInfo, eispRegisterInfo.tax_no tax_no_eispRegisterInfo, eispRegisterInfo.province_id province_id_eispRegisterInfo, eispRegisterInfo.city_id city_id_eispRegisterInfo, eispRegisterInfo.industry_id industry_id_eispRegisterInfo, eispRegisterInfo.tel tel_eispRegisterInfo, eispRegisterInfo.address address_eispRegisterInfo, eispRegisterInfo.bank_name bank_name_eispRegisterInfo, eispRegisterInfo.bank_account bank_account_eispRegisterInfo, eispRegisterInfo.mobile mobile_eispRegisterInfo, eispRegisterInfo.email email_eispRegisterInfo, eispRegisterInfo.device_type device_type_eispRegisterInfo, eispRegisterInfo.server_access_mode server_access_mode_eispRegisterInfo, eispRegisterInfo.remark remark_eispRegisterInfo, eispRegisterInfo.status status_eispRegisterInfo, eispRegisterInfo.create_date create_date_eispRegisterInfo, eispRegisterInfo.modify_date modify_date_eispRegisterInfo, eispRegisterInfo.oper_id oper_id_eispRegisterInfo, eispRegisterInfo.org_id org_id_eispRegisterInfo, eispRegisterInfo.source_type source_type_eispRegisterInfo, eispRegisterInfo.contact contact_eispRegisterInfo, eispRegisterInfo.contact_num contact_num_eispRegisterInfo, eispRegisterInfo.id_card id_card_eispRegisterInfo, eispRegisterInfo.type type_eispRegisterInfo, eispRegisterInfo.enable_status enable_status_eispRegisterInfo, eispRegisterInfo.is_info_perfected is_info_perfected_eispRegisterInfo, eispRegisterInfo.is_old is_old_eispRegisterInfo, eispRegisterInfo.new_tax_no new_tax_no_eispRegisterInfo, eispRegisterInfo.new_name new_name_eispRegisterInfo, eispRegisterInfo.score_tel score_tel_eispRegisterInfo , eispTicketProduct.id id_eispTicketProduct, eispTicketProduct.name name_eispTicketProduct, eispTicketProduct.price price_eispTicketProduct, eispTicketProduct.ticket_num ticket_num_eispTicketProduct, eispTicketProduct.exceed_price exceed_price_eispTicketProduct, eispTicketProduct.remark remark_eispTicketProduct, eispTicketProduct.create_date create_date_eispTicketProduct, eispTicketProduct.modify_date modify_date_eispTicketProduct, eispTicketProduct.status status_eispTicketProduct, eispTicketProduct.province_id province_id_eispTicketProduct, eispTicketProduct.type type_eispTicketProduct, eispTicketProduct.day_count day_count_eispTicketProduct, eispTicketProduct.online_type online_type_eispTicketProduct, eispTicketProduct.original_price original_price_eispTicketProduct, eispTicketProduct.return_type return_type_eispTicketProduct, eispTicketProduct.return_money return_money_eispTicketProduct, eispTicketProduct.score score_eispTicketProduct , eispTicket.id id_eispTicket, eispTicket.org_id org_id_eispTicket, eispTicket.product_id product_id_eispTicket, eispTicket.register_info_id register_info_id_eispTicket, eispTicket.total total_eispTicket, eispTicket.surplus_ticket surplus_ticket_eispTicket, eispTicket.begin_date begin_date_eispTicket, eispTicket.end_date end_date_eispTicket, eispTicket.create_date create_date_eispTicket, eispTicket.modify_date modify_date_eispTicket, eispTicket.status status_eispTicket, eispTicket.order_id order_id_eispTicket , eispOrderInvoiceHead.id id_eispOrderInvoiceHead, eispOrderInvoiceHead.order_no order_no_eispOrderInvoiceHead, eispOrderInvoiceHead.invoice_title invoice_title_eispOrderInvoiceHead, eispOrderInvoiceHead.tax_no tax_no_eispOrderInvoiceHead, eispOrderInvoiceHead.invoice_info invoice_info_eispOrderInvoiceHead, eispOrderInvoiceHead.register_location register_location_eispOrderInvoiceHead, eispOrderInvoiceHead.register_tel register_tel_eispOrderInvoiceHead, eispOrderInvoiceHead.amount amount_eispOrderInvoiceHead, eispOrderInvoiceHead.bank bank_eispOrderInvoiceHead, eispOrderInvoiceHead.account account_eispOrderInvoiceHead, eispOrderInvoiceHead.recipient recipient_eispOrderInvoiceHead, eispOrderInvoiceHead.address_local address_local_eispOrderInvoiceHead, eispOrderInvoiceHead.contact_tel contact_tel_eispOrderInvoiceHead, eispOrderInvoiceHead.address_detail address_detail_eispOrderInvoiceHead, eispOrderInvoiceHead.device_no device_no_eispOrderInvoiceHead, eispOrderInvoiceHead.invoice_type invoice_type_eispOrderInvoiceHead, eispOrderInvoiceHead.invoice_status invoice_status_eispOrderInvoiceHead, eispOrderInvoiceHead.email email_eispOrderInvoiceHead, eispOrderInvoiceHead.create_date create_date_eispOrderInvoiceHead, eispOrderInvoiceHead.modify_date modify_date_eispOrderInvoiceHead , eispOrderDetail.id id_eispOrderDetail, eispOrderDetail.order_id order_id_eispOrderDetail, eispOrderDetail.product_id product_id_eispOrderDetail, eispOrderDetail.ticket_num ticket_num_eispOrderDetail, eispOrderDetail.product_info product_info_eispOrderDetail, eispOrderDetail.online_type online_type_eispOrderDetail FROM eisp_order eispOrder LEFT JOIN eisp_order_detail eispOrderDetail ON eispOrder.id = eispOrderDetail.order_id LEFT JOIN eisp_ticket_product eispTicketProduct ON eispTicketProduct.id = eispOrderDetail.product_id LEFT JOIN eisp_register_info eispRegisterInfo ON eispOrder.register_info_id = eispRegisterInfo.id LEFT JOIN eisp_ticket eispTicket ON eispOrder.id = eispTicket.order_id LEFT JOIN eisp_order_invoice_head eispOrderInvoiceHead ON eispOrder.order_no = eispOrderInvoiceHead.order_no WHERE eispOrder.del_status = ? and eispOrder.status <> ? and eispRegisterInfo.type = ? and (eispTicketProduct.online_type = '01' or eispOrderDetail.online_type = '01') order by eispOrder.create_date desc limit ? 
2018-12-17 16:58:23.662 DEBUG c.b.e.base.dao.EispOrderMapper.selectByUdfExample - ==> Parameters: 01(String), 1(String), 01(String), 20(Integer)
2018-12-17 16:58:23.903 DEBUG c.b.e.b.d.E.sumOrderAmountByUdfExample - <==      Total: 1

使用#的日志:

2018-12-17 16:46:23.553 DEBUG c.b.e.b.d.E.selectByUdfExample - ==>  Preparing: SELECT DISTINCT eispOrder.id id_eispOrder, eispOrder.register_info_id register_info_id_eispOrder, eispOrder.order_no order_no_eispOrder, eispOrder.amount amount_eispOrder, eispOrder.org_id org_id_eispOrder, eispOrder.pay_type pay_type_eispOrder, eispOrder.payment_date payment_date_eispOrder, eispOrder.create_date create_date_eispOrder, eispOrder.modify_date modify_date_eispOrder, eispOrder.status status_eispOrder, eispOrder.check_status check_status_eispOrder, eispOrder.return_tel return_tel_eispOrder, eispOrder.return_type return_type_eispOrder, eispOrder.return_money return_money_eispOrder, eispOrder.return_status return_status_eispOrder, eispOrder.source_type source_type_eispOrder, eispOrder.device_no device_no_eispOrder, eispOrder.order_type order_type_eispOrder, eispOrder.create_user create_user_eispOrder, eispOrder.create_user_name create_user_name_eispOrder, eispOrder.create_user_phone create_user_phone_eispOrder, eispOrder.back_money_status back_money_status_eispOrder, eispOrder.back_money_type back_money_type_eispOrder, eispOrder.back_money back_money_eispOrder, eispOrder.back_money_time back_money_time_eispOrder, eispOrder.transaction_no transaction_no_eispOrder, eispOrder.del_status del_status_eispOrder, eispOrder.pdf_url pdf_url_eispOrder, eispOrder.pdf_size pdf_size_eispOrder, eispOrder.pdf_status pdf_status_eispOrder, eispOrder.first_order first_order_eispOrder, eispOrder.online_type online_type_eispOrder, eispOrder.score score_eispOrder, eispOrder.score_tel score_tel_eispOrder , eispRegisterInfo.id id_eispRegisterInfo, eispRegisterInfo.user_id user_id_eispRegisterInfo, eispRegisterInfo.name name_eispRegisterInfo, eispRegisterInfo.tax_no tax_no_eispRegisterInfo, eispRegisterInfo.province_id province_id_eispRegisterInfo, eispRegisterInfo.city_id city_id_eispRegisterInfo, eispRegisterInfo.industry_id industry_id_eispRegisterInfo, eispRegisterInfo.tel tel_eispRegisterInfo, eispRegisterInfo.address address_eispRegisterInfo, eispRegisterInfo.bank_name bank_name_eispRegisterInfo, eispRegisterInfo.bank_account bank_account_eispRegisterInfo, eispRegisterInfo.mobile mobile_eispRegisterInfo, eispRegisterInfo.email email_eispRegisterInfo, eispRegisterInfo.device_type device_type_eispRegisterInfo, eispRegisterInfo.server_access_mode server_access_mode_eispRegisterInfo, eispRegisterInfo.remark remark_eispRegisterInfo, eispRegisterInfo.status status_eispRegisterInfo, eispRegisterInfo.create_date create_date_eispRegisterInfo, eispRegisterInfo.modify_date modify_date_eispRegisterInfo, eispRegisterInfo.oper_id oper_id_eispRegisterInfo, eispRegisterInfo.org_id org_id_eispRegisterInfo, eispRegisterInfo.source_type source_type_eispRegisterInfo, eispRegisterInfo.contact contact_eispRegisterInfo, eispRegisterInfo.contact_num contact_num_eispRegisterInfo, eispRegisterInfo.id_card id_card_eispRegisterInfo, eispRegisterInfo.type type_eispRegisterInfo, eispRegisterInfo.enable_status enable_status_eispRegisterInfo, eispRegisterInfo.is_info_perfected is_info_perfected_eispRegisterInfo, eispRegisterInfo.is_old is_old_eispRegisterInfo, eispRegisterInfo.new_tax_no new_tax_no_eispRegisterInfo, eispRegisterInfo.new_name new_name_eispRegisterInfo, eispRegisterInfo.score_tel score_tel_eispRegisterInfo , eispTicketProduct.id id_eispTicketProduct, eispTicketProduct.name name_eispTicketProduct, eispTicketProduct.price price_eispTicketProduct, eispTicketProduct.ticket_num ticket_num_eispTicketProduct, eispTicketProduct.exceed_price exceed_price_eispTicketProduct, eispTicketProduct.remark remark_eispTicketProduct, eispTicketProduct.create_date create_date_eispTicketProduct, eispTicketProduct.modify_date modify_date_eispTicketProduct, eispTicketProduct.status status_eispTicketProduct, eispTicketProduct.province_id province_id_eispTicketProduct, eispTicketProduct.type type_eispTicketProduct, eispTicketProduct.day_count day_count_eispTicketProduct, eispTicketProduct.online_type online_type_eispTicketProduct, eispTicketProduct.original_price original_price_eispTicketProduct, eispTicketProduct.return_type return_type_eispTicketProduct, eispTicketProduct.return_money return_money_eispTicketProduct, eispTicketProduct.score score_eispTicketProduct , eispTicket.id id_eispTicket, eispTicket.org_id org_id_eispTicket, eispTicket.product_id product_id_eispTicket, eispTicket.register_info_id register_info_id_eispTicket, eispTicket.total total_eispTicket, eispTicket.surplus_ticket surplus_ticket_eispTicket, eispTicket.begin_date begin_date_eispTicket, eispTicket.end_date end_date_eispTicket, eispTicket.create_date create_date_eispTicket, eispTicket.modify_date modify_date_eispTicket, eispTicket.status status_eispTicket, eispTicket.order_id order_id_eispTicket , eispOrderInvoiceHead.id id_eispOrderInvoiceHead, eispOrderInvoiceHead.order_no order_no_eispOrderInvoiceHead, eispOrderInvoiceHead.invoice_title invoice_title_eispOrderInvoiceHead, eispOrderInvoiceHead.tax_no tax_no_eispOrderInvoiceHead, eispOrderInvoiceHead.invoice_info invoice_info_eispOrderInvoiceHead, eispOrderInvoiceHead.register_location register_location_eispOrderInvoiceHead, eispOrderInvoiceHead.register_tel register_tel_eispOrderInvoiceHead, eispOrderInvoiceHead.amount amount_eispOrderInvoiceHead, eispOrderInvoiceHead.bank bank_eispOrderInvoiceHead, eispOrderInvoiceHead.account account_eispOrderInvoiceHead, eispOrderInvoiceHead.recipient recipient_eispOrderInvoiceHead, eispOrderInvoiceHead.address_local address_local_eispOrderInvoiceHead, eispOrderInvoiceHead.contact_tel contact_tel_eispOrderInvoiceHead, eispOrderInvoiceHead.address_detail address_detail_eispOrderInvoiceHead, eispOrderInvoiceHead.device_no device_no_eispOrderInvoiceHead, eispOrderInvoiceHead.invoice_type invoice_type_eispOrderInvoiceHead, eispOrderInvoiceHead.invoice_status invoice_status_eispOrderInvoiceHead, eispOrderInvoiceHead.email email_eispOrderInvoiceHead, eispOrderInvoiceHead.create_date create_date_eispOrderInvoiceHead, eispOrderInvoiceHead.modify_date modify_date_eispOrderInvoiceHead , eispOrderDetail.id id_eispOrderDetail, eispOrderDetail.order_id order_id_eispOrderDetail, eispOrderDetail.product_id product_id_eispOrderDetail, eispOrderDetail.ticket_num ticket_num_eispOrderDetail, eispOrderDetail.product_info product_info_eispOrderDetail, eispOrderDetail.online_type online_type_eispOrderDetail FROM eisp_order eispOrder LEFT JOIN eisp_order_detail eispOrderDetail ON eispOrder.id = eispOrderDetail.order_id LEFT JOIN eisp_ticket_product eispTicketProduct ON eispTicketProduct.id = eispOrderDetail.product_id LEFT JOIN eisp_register_info eispRegisterInfo ON eispOrder.register_info_id = eispRegisterInfo.id LEFT JOIN eisp_ticket eispTicket ON eispOrder.id = eispTicket.order_id LEFT JOIN eisp_order_invoice_head eispOrderInvoiceHead ON eispOrder.order_no = eispOrderInvoiceHead.order_no WHERE eispOrder.del_status = ? and eispOrder.status <> ? and eispRegisterInfo.type = ? and (eispTicketProduct.online_type = ? or eispOrderDetail.online_type = ?) order by eispOrder.create_date desc limit ? 
2018-12-17 16:46:23.557 DEBUG c.b.e.b.d.E.selectByUdfExample - ==> Parameters: 01(String), 1(String), 01(String), null, null, 20(Integer)
2018-12-17 16:46:23.783 DEBUG c.b.e.b.d.E.sumOrderAmountByUdfExample - <==      Total: 1

xml文件编写

parameterType代码:
public class OrderAndProductAndRegExample {


	private String onlineType;
	//订单表
	private EispOrderExample eispOrderExample;

	//注册信息表
	private EispRegisterInfoExample eispRegisterInfoExample;

	//产品信息表
	private EispTicketProductExample eispTicketProductExample;

	private EispOrderInvoiceHeadExample eispOrderInvoiceHeadExample;


	public OrderAndProductAndRegExample() {
		this.eispOrderExample = new EispOrderExample();
		this.eispRegisterInfoExample = new EispRegisterInfoExample();
		this.eispTicketProductExample = new EispTicketProductExample();
		this.eispOrderInvoiceHeadExample = new EispOrderInvoiceHeadExample();
	}

	public EispOrderExample getEispOrderExample() {
		return eispOrderExample;
	}

	public void setEispOrderExample(EispOrderExample eispOrderExample) {
		this.eispOrderExample = eispOrderExample;
	}

	public EispRegisterInfoExample getEispRegisterInfoExample() {
		return eispRegisterInfoExample;
	}

	public void setEispRegisterInfoExample(EispRegisterInfoExample eispRegisterInfoExample) {
		this.eispRegisterInfoExample = eispRegisterInfoExample;
	}

	public EispTicketProductExample getEispTicketProductExample() {
		return eispTicketProductExample;
	}

	public void setEispTicketProductExample(EispTicketProductExample eispTicketProductExample) {
		this.eispTicketProductExample = eispTicketProductExample;
	}

	public EispOrderInvoiceHeadExample getEispOrderInvoiceHeadExample() {
		return eispOrderInvoiceHeadExample;
	}

	public void setEispOrderInvoiceHeadExample(EispOrderInvoiceHeadExample eispOrderInvoiceHeadExample) {
		this.eispOrderInvoiceHeadExample = eispOrderInvoiceHeadExample;
	}

	public String getOnlineType() {
		return onlineType;
	}

	public void setOnlineType(String onlineType) {
		this.onlineType = onlineType;
	}

这其中的原理,暂时还不得而知。先解决问题,继续研究下,如果有知道的大神麻烦告诉我一下,感谢!!!

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值