Human h = qr.query(sql1, new BeanHandler<Human>(Human.class), id);

package com.tfy.itheima.dao.impl;


import org.apache.commons.dbutils.QueryRunner;
import org.apache.commons.dbutils.handlers.BeanHandler;


import com.tfy.itheima.domain.Human;
import com.tfy.itheima.domain.IdCard;
import com.tfy.itheima.jdbc.util.DbcpUtil;


public class HumanDaoImpl {
private QueryRunner qr=new QueryRunner(DbcpUtil.getDataSource());
public void addHuman(Human h){
try{
String sql1="insert into human (id,name) values(?,?)";
Object []params1={h.getId(),h.getName()};
qr.update(sql1, params1);
IdCard idCard=h.getIdCard();
if(idCard!=null){
String sql2="insert into idcard (id,num,city) values(?,?,?)";
Object []params2={h.getId(),idCard.getNum(),idCard.getCity()};
qr.update(sql2, params2);
}
}catch(Exception e){
e.printStackTrace();
throw new RuntimeException(e);
}
}
//对于少的一方,默认都需要查出来
public Human findHumanById(Integer id){
try{
String sql1="select * from human where id=?";
Human h = qr.query(sql1, new BeanHandler<Human>(Human.class), id);
if(h!=null){
String sql2="select * from idcard where id=?";
IdCard idCard = qr.query(sql2, new BeanHandler<IdCard>(IdCard.class), id);
h.setIdCard(idCard);
}
return h;
}catch(Exception e){
e.printStackTrace();
throw new RuntimeException(e);
}
}
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值