多线程举例

直接上代码

   public int uplive(int id){
        //独立处理coupon_info表 start
        CouponCount count = new CouponCount();
        count.setId(id);
        List<CouponCount> list1 = dao.find(count);
        if(list1.size()>0){
            count =list1.get(0);
        }
        CouponCard cc = new CouponCard();
        List<CouponCard> list0 = cardDao.findById(count.getCard_id());
        if (list0.size() > 0) {
            cc = list0.get(0);
        }
        //将活动置为上线 start
        activityDao.liveup(cc.getActivity_id());
        cardDao.updateStatus(cc.getId());
        dao.updateStatus(id);
        //将活动置为上线 end
            int res = 0;
            int businessid = AccountShiroUtil.getCurrentUser().getBusinessId();
                CouponInfo info = new CouponInfo();
                info.setBusinessid(businessid);
                info.setName(cc.getCard_name());
                info.setCard_text(cc.getRule());
                info.setDiscount(cc.getDiscount());
                info.setCard_things(cc.getCard_things());
                info.setCard_money(cc.getCard_money());
                info.setCard_status(1);
                //调用多线程
SaveInfoDataThread thread = new SaveInfoDataThread(businessid,cc.getCard_name(),cc.getRule(),cc.getDiscount(),cc.getCard_things(),cc.getCard_money(),count.getTotal_quantity());
                thread.run();
                res = 1 ;
             return res;
    }
    //单独线程处理循环向数据库插入数据
    private class SaveInfoDataThread extends Thread{
        private List<Object[]> list;
        private  int businessid;
        private  String name;
        private  String cardtext;
        private  double disacount;
        private  String cardthings;
        private  double cardmoney;
        private int a ;
        public SaveInfoDataThread(int business_id,String card_name,String card_text,double discounts,String card_things,double card_money,int length){
            businessid=business_id;
            name=card_name;
            cardtext=card_text;
            disacount=discounts;
            cardthings=card_things;
            cardmoney=card_money;
            a = length;
        }
        public void run(){
            for (int i = 0; i < a; i++) {
                CouponInfo indo = new CouponInfo();
                indo.setBusinessid(businessid);
                indo.setName(name);
                indo.setCard_text(cardtext);
                indo.setDiscount(disacount);
                indo.setCard_things(cardthings);
                indo.setCard_money(cardmoney);
                indo.setCard_status(1);
                indo.setCard_number(Tools.getCardNum());
                infodao.insert(indo);
            }

        }
    }

猜你喜欢

转载自blog.csdn.net/plazyj/article/details/81235172
今日推荐