jooq基本增删改查

人盡茶涼 提交于 2019-12-03 08:15:43

1.首先导包

import static org.jooq.impl.DSL.using;

2.

protected ConsumerCartDaoImpl(Configuration configuration) {
    super(ConsumerCart.CONSUMER_CART,ConsumerCartPojo.class, configuration);
}
@Override
protected Long getId(ConsumerCartPojo consumerCartPojo) {
    return consumerCartPojo.getId();
}

3.为要查询的表起别名

Shop _s = Shop.SHOP.as("_s");
ShopType _st = ShopType.SHOP_TYPE.as("_st");

4.1基本查询

public ShopDetilVo findShopDetilByShopId(long shopId) {
    //select s.*,st.typeName from shop s,shop_type st
    //where s.shopTypeId = st.id and shopId = ?
    return using(configuration())
            .select(_s.BRANDS,_s.SCOPES,_s.CONTACT,_s.SHOPNAME,_st.TYPENAME)//select不填参数默认全查找
            .from(_s,_st)
            .where(_s.SHOPTYPEID.eq(_st.ID).and(_s.ID.eq(shopId)))
            .fetchOneInto(ShopDetilVo.class);//FetchOneInto把一条结果映射到一个类,fetchInto把一个结果集映射到一个类
}

4.2基本更新

public void updateCommondityAmount(long consumerId, AddCartReq req) {
    ConsumerCart _c = ConsumerCart.CONSUMER_CART.as("_c");
    using(configuration())
            .update(_c)
            .set(_c.QUANTITY,req.getQuantity())
          .set(_c.QUANTITY2,req.getQuantity());
}

4.3基本添加

直接调用继承的insert方法

4.4基本删除

public void delCartByConsumerIdAndCommodityId(long consumerId, DelCartReq req) {
    //DELETE FROM consumer_cart
    //WHERE consumerId=123456 AND commodityId=123456789 AND shopId=11
    ConsumerCart _c = ConsumerCart.CONSUMER_CART.as("_c");
    using(configuration())
            .deleteFrom(_c)
            .where(_c.CONSUMERID.eq(consumerId).and(_c.COMMODITYID.eq(req.getCommodityId())).and(_c.SHOPID.eq(req.getShopId())))
            .execute();

}

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!