mysql插入返回当前生成的主键


 1:sql中需要添加属性  keyColumn="base_price_id" keyProperty="basePriceId" useGeneratedKeys="true"

<insert id="insertBasePrice" parameterType="com.olymtech.bs.freight.trk.vo.BasePriceResultVO"

   keyColumn="base_price_id" keyProperty="basePriceId" useGeneratedKeys="true">

    insert into 
    truck_base_price (product_id, casenumber, base_price20, base_price40,remark)
    values 
    (#{productId,jdbcType=BIGINT}, #{casenumber,jdbcType=INTEGER}, #{basePrice20,jdbcType=DECIMAL}, #{basePrice40,jdbcType=DECIMAL},#{remark,jdbcType=VARCHAR})
  </insert>

2:返回到对应的实体中,如果要取到,则:

 

public Boolean addBasePrice(BasePriceResultVO basePriceResultVO)throws DataAccessException{
Boolean resultFlag=false;
try {
//先查询产品表该产品是否存在
Long productId = null;
TruckProduct trkProduct = truckProductDao.selectProductByIds(basePriceResultVO);
if(trkProduct == null){
truckProductDao.insertBaseProduct(basePriceResultVO);
productId = basePriceResultVO.getProductId();
}else{
productId = trkProduct.getProductId();
}
basePriceResultVO.setProductId(productId);
//TODO需要调车队相关的接口(暂时写死)
basePriceResultVO.setCasenumber(1);
truckBasePriceDao.insertBasePrice(basePriceResultVO);
Long basePriceId = basePriceResultVO.getBasePriceId();
if(basePriceId != null){
basePriceResultVO.setBasePriceId(basePriceId);
basePriceResultVO.setOperationType(TruckUtil.ADD);
Long resultId=truckBasePriceHistoryDao.insertTruckBasePriceHistory(basePriceResultVO);
if(resultId!=null){
resultFlag = true;
}
}
} catch (Exception ex) {
LOGGER.error("TruckBasePriceServiceImpl.addBasePrice异常" + ex);
}
return resultFlag;
}

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM