实用,简单 ibatis demo (包含多对一;一对多)

xiaoxiao2026-04-11  4

一、POJO public class Customer {      private Long id;      private String name;      private String address;      private String postcode;      private String sex;      private List<Orders> orderlist = new ArrayList<Orders>();       public String toString() {         return "Customer{" +                 "id=" + id +                 ", name='" + name + '\'' +                 ", address='" + address + '\'' +                 ", postcode='" + postcode + '\'' +                 ", sex='" + sex + '\'' +                 ", orderlist=" + orderlist.size() +                 '}';     }   public class Orders {      private Long id;      private String code;      private Long customerId;      private Customer customer;       public String toString() {         return "Orders{" +                 "id=" + id +                 ", code='" + code + '\'' +                 ", customerId=" + customerId +                 '}';     }   二、SqlMap   Customer.xml <? xml version ="1.0" encoding ="UTF-8" ?> <!DOCTYPE sqlMap PUBLIC "-//ibatis.apache.org//DTD SQL Map 2.0//EN" "http://ibatis.apache.org/dtd/sql-map-2.dtd" > < sqlMap namespace ="customer" >      < typeAlias alias ="customer" type ="com.lavasoft.ssi.domain.Customer" />      < resultMap id ="result_base" class ="customer" >          < result property ="id" column ="id" />          < result property ="name" column ="name" />          < result property ="address" column ="address" />          < result property ="postcode" column ="postcode" />          < result property ="sex" column ="sex" />      </ resultMap >      < resultMap id ="result" class ="customer" extends ="result_base" >          < result property ="orderlist" column ="id" select ="orders.findByCustomerId" />      </ resultMap >      < insert id ="insert" parameterClass ="customer" >         insert into customer(address,postcode,sex,name) values(#address#,#postcode#,#sex#,#name#)          < selectKey keyProperty ="id" resultClass ="long" >             select LAST_INSERT_ID()          </ selectKey >      </ insert >      < select id ="getById" parameterClass ="long" resultMap ="result_base" >         select * from customer where id = #value#      </ select >      < select id ="getWithCashById" parameterClass ="long" resultMap ="result" >         select * from customer where id = #value#      </ select >      < select id ="getWithCashByIdInnerjoin" parameterClass ="long" resultClass ="customer" resultMap ="result" >         select c.* from customer c inner join orders o on c.id=o.customerId      </ select > </ sqlMap >   Orders.xml <? xml version ="1.0" encoding ="UTF-8" ?> <!DOCTYPE sqlMap PUBLIC "-//ibatis.apache.org//DTD SQL Map 2.0//EN" "http://ibatis.apache.org/dtd/sql-map-2.dtd" > < sqlMap namespace ="orders" >      < typeAlias alias ="orders" type ="com.lavasoft.ssi.domain.Orders" />      < resultMap id ="result_base" class ="orders" >          < result property ="id" column ="id" />          < result property ="code" column ="code" />          < result property ="customerId" column ="customerId" />      </ resultMap >      < resultMap id ="result" class ="orders" extends ="result_base" >          < result property ="customer" column ="customerId" select ="customer.getById" />      </ resultMap >      < insert id ="insert" parameterClass ="orders" >         insert into orders(id,code,customerId) values(#id#,#code#,#customerId#)          < selectKey keyProperty ="id" resultClass ="long" >             select LAST_INSERT_ID()          </ selectKey >      </ insert >      < select id ="findByCustomerId" resultMap ="result_base" parameterClass ="long" >         select * from orders where customerId = #value#      </ select >      < select id ="getById" parameterClass ="long" resultMap ="result_base" >         select * from orders where id = #value#      </ select >      < select id ="getByIdWithCash" resultMap ="result" resultClass ="orders" parameterClass ="long" >         select * from orders where id = #value#      </ select > </ sqlMap > 相关资源:ibatis的一个简单demo用户登录
转载请注明原文地址: https://www.6miu.com/read-5047197.html

最新回复(0)