java线程池例子
来源:互联网 发布:看电影啥软件好? 编辑:程序博客网 时间:2024/06/06 18:35
java线程池例子,多线程
场景描述:
在工作中一个秒杀的业务场景中,在后台系统秒杀活动管理中有一个名单录入功能,需要录入一个excel表格,当excel表格中数据达到三万时出现了sql的异常 ORA-01745;
批量插入数据的DAO代码:
int insertBatch(List<FsoActivityUserList> itemList);
批量插入数据的xml代码:
<insert id="insertBatch" parameterType="java.util.List"> insert into FSO_ACTIVITY_USER_LIST (ID, PRODUCT_CODE, U_ID, IS_WHITE_BLACK) select <include refid="TABLE_SEQUENCE" />,A.* from( <foreach collection="list" item="item" index="index" separator="union all" > select #{item.productCode},#{item.uId},#{item.isWhiteBlack} from dual </foreach> ) A</insert>
import java.util.ArrayList;import java.util.List;import java.util.Map;import org.apache.log4j.Logger;import cn.creditease.zeus.server.model.normandy.fso.FsoActivityUserList;import cn.creditease.zeus.server.service.normandy.ActivityUserListService;/** * 鐢ㄤ簬娣诲姞涓囨潯浠ヤ笂鐨別xcel鏁版嵁 * @author charlotte * */public class ActivityExcelDataSaveRunnable implements Runnable { private static final Logger log = Logger .getLogger(ActivityController.class); private ActivityUserListService activityUserListService; private List<FsoActivityUserList> excelDataList = new ArrayList<FsoActivityUserList>();//excel瑙f瀽鍚庣殑鏁版嵁闆嗗悎 public ActivityExcelDataSaveRunnable(ActivityUserListService activityUserListService, List<FsoActivityUserList> excelDataList) { this.activityUserListService = activityUserListService ; this.excelDataList = excelDataList; } public void run() { try { Map<String, Object> addUserListBatchResult = activityUserListService.addUserListBatch(excelDataList);//鎵归噺鎻掑叆娲诲姩鍚嶅崟鏁版嵁 if ("1".equals(addUserListBatchResult.get("code"))) {//寮傚父澶勭悊 log.info("ActivityController#addActivity()----[zeus erro]..."); throw new Exception("zeus鎻掑叆鏁版嵁澶辫触,璇锋鏌eus鏃ュ織!"); } } catch (Exception e) { e.printStackTrace(); } }}
使用:
private static ExecutorService pool=Executors.newCachedThreadPool();private ActivityUserListService activityUserListService;public staitc void main(String[] args){List<FsoActivityUserList> saveList = new ArrayList<FsoActivityUserList>();ActivityExcelDataSaveRunnable run = new ActivityExcelDataSaveRunnable(activityUserListService,saveList);pool.execute(run);}
0 0
- JAVA线程池例子
- JAVA线程池例子
- JAVA线程池例子
- JAVA线程池例子
- JAVA线程池例子
- JAVA线程池例子
- JAVA线程池例子
- JAVA线程池例子
- Java线程池例子
- JAVA线程池例子
- JAVA线程池例子
- JAVA线程池例子
- JAVA线程池例子
- JAVA线程池例子
- JAVA线程池例子
- JAVA线程池例子
- JAVA线程池例子
- Java线程池例子
- MySQL日期数据类型、MySQL时间类型使用总结
- css使用text-shadow实现字体模糊效果
- 字符数组的最大值和次大值
- 大数据分析处理实践的一点心得
- Android加密策略
- java线程池例子
- github上值得关注的前端项目
- 怎么让每个li之间有距离
- jenkins报错PermGen space
- 115. Distinct Subsequences--动态规划的方法
- Spring整合Redis用作缓存-注解方式
- SQL系统表和兼容性视图使用
- uva10256 The Great Divide
- nginx1.6编译安装