`
jin8000608172
  • 浏览: 139875 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

机选福利彩票程序V2.0-批量插入,比V1.0效率高

阅读更多
今天上班没什么事情干,很无聊,于是拿出中午吃饭时买的彩票,开始研究,然后打开双色球走势图网页,感觉双色球的号码,就是一组随机数,无规律可循,靠的都是运气,于是想通过自己写的程序给自己选四组号码,看看能不能给自己带来好运!本程序按照双色球的出球顺序依次产生号码。并对产生的号码进行了排序展示
V1.0:
package com.jincm.wflt.util;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.util.ArrayList;
import java.util.Collections;
import java.util.HashMap;
import java.util.List;
import java.util.Map;


public class LuckyNumber {

	public static void main(String[] args) {
		LuckyNumber luckyNum=new LuckyNumber();
		/**
		 * 机选4注
		 */
		for(int i=0;i<1;i++){
			System.out.println("-----------第"+(i+1)+"注----------");
			luckyNum.getLuckyNumber();	
		}		
	}
	public void getLuckyNumber(){
		Map<Integer,Integer> luckyMap=new HashMap<Integer, Integer>();
		StringBuffer luckySb=new StringBuffer();
		/**
		 * 避免重复的号码产生
		 */
		for(int i=0;i<6;i++){
			int luckyRed=(int)(Math.random()*33+1);
			if(luckyMap.containsKey(luckyRed)){
				i--;
			}else{
				luckyMap.put(luckyRed, luckyRed);
			    luckySb.append(luckyRed+" ");
			}
		}
		int luckyBlue=(int)(Math.random()*16+1);
		luckySb.append(luckyBlue);
		System.out.println(luckySb.toString());//按彩票产生的顺序输出
		String[] luckyStr=luckySb.toString().split(" ");
		List<Integer> luckyList=new ArrayList<Integer>();
		for(int i=0;i<luckyStr.length;i++){
			if(i!=6){
			luckyList.add(Integer.parseInt(luckyStr[i]));
			}
		}
		Collections.sort(luckyList);//对产生的彩票号码进行排序
		StringBuffer luckyBuff=new StringBuffer();
		for(int i=0;i<luckyList.size();i++){
			luckyBuff.append(luckyList.get(i)+" ");
		}
		luckyBuff.append(luckyStr[6]);
		System.out.println(luckyBuff.toString());//将排序后的彩票输出
		insert(luckyBuff.toString(),luckyBlue);
	}
	/**
	 * 
	 * @return
	 */
	public static Connection getConn(){
		Connection conn=null;
		try {
			Class.forName("oracle.jdbc.driver.OracleDriver");
			conn=DriverManager.getConnection("jdbc:oracle:thin:@127.0.0.1:1521:ORACL", "wflt", "wflt");
		} catch (Exception e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		return conn;
	}
	
	public void insert(String luckyNum,Integer blue){
		String[] red=luckyNum.split(" ");
		Connection conn;
		PreparedStatement ps;
		PreparedStatement ps2;
		ResultSet rs;
		try {
			conn = getConn();
			ps2=conn.prepareStatement("select  jincm_wflt_seq.nextval from dual");
			rs=ps2.executeQuery();
			Long id=0L;
			while(rs.next()){
				id=rs.getLong(1);
			}
			ps=conn.prepareStatement("insert into jincm_wflt(id_,red1_,red2_,red3_,red4_,red5_,red6_,blue_,createtime_,createby_) values(?,?,?,?,?,?,?,?,sysdate,'金聪敏')");
			ps.setLong(1, id);
			ps.setInt(2, Integer.parseInt(red[0]));
			ps.setInt(3, Integer.parseInt(red[1]));
			ps.setInt(4, Integer.parseInt(red[2]));
			ps.setInt(5, Integer.parseInt(red[3]));
			ps.setInt(6, Integer.parseInt(red[4]));
			ps.setInt(7, Integer.parseInt(red[5]));
			ps.setInt(8, blue);
			ps.execute();
		} catch (Exception e) {
			e.printStackTrace();
		}
	}
}

V2.0:
package com.jincm.wflt.util;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.util.ArrayList;
import java.util.Collections;
import java.util.HashMap;
import java.util.List;
import java.util.Map;


public class LuckyNumber {

	public static void main(String[] args) {
		LuckyNumber luckyNum=new LuckyNumber();
		/**
		 * 机选4注
		 */
		List<String[]> luckyList=new ArrayList<String[]>();
		for(int i=0;i<1000;i++){
			System.out.println("-----------第"+(i+1)+"注----------");
			String luckyStr=luckyNum.getLuckyNumber();	
			String[] lucky=luckyStr.split(" ");
			luckyList.add(lucky);
		}
		luckyNum.insertBatch(luckyList);
		
	}
	public String getLuckyNumber(){
		Map<Integer,Integer> luckyMap=new HashMap<Integer, Integer>();
		StringBuffer luckySb=new StringBuffer();
		/**
		 * 避免重复的号码产生
		 */
		for(int i=0;i<6;i++){
			int luckyRed=(int)(Math.random()*33+1);
			if(luckyMap.containsKey(luckyRed)){
				i--;
			}else{
				luckyMap.put(luckyRed, luckyRed);
			    luckySb.append(luckyRed+" ");
			}
		}
		int luckyBlue=(int)(Math.random()*16+1);
		luckySb.append(luckyBlue);
		System.out.println(luckySb.toString());//按彩票产生的顺序输出
		String[] luckyStr=luckySb.toString().split(" ");
		List<Integer> luckyList=new ArrayList<Integer>();
		for(int i=0;i<luckyStr.length;i++){
			if(i!=6){
			luckyList.add(Integer.parseInt(luckyStr[i]));
			}
		}
		Collections.sort(luckyList);//对产生的彩票号码进行排序
		StringBuffer luckyBuff=new StringBuffer();
		for(int i=0;i<luckyList.size();i++){
			luckyBuff.append(luckyList.get(i)+" ");
		}
		luckyBuff.append(luckyStr[6]);
		System.out.println(luckyBuff.toString());//将排序后的彩票输出
		//insert(luckyBuff.toString(),luckyBlue);
		String returnLucky=luckyBuff.toString()+" "+luckyBlue;
		return returnLucky;
	}
	/**
	 * 
	 * @return
	 */
	public static Connection getConn(){
		Connection conn=null;
		try {
			Class.forName("oracle.jdbc.driver.OracleDriver");
			conn=DriverManager.getConnection("jdbc:oracle:thin:@127.0.0.1:1521:ORACL", "wflt", "wflt");
		} catch (Exception e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		return conn;
	}
	
	public void insert(String luckyNum,Integer blue){
		String[] red=luckyNum.split(" ");
		Connection conn;
		PreparedStatement ps;
		PreparedStatement ps2;
		ResultSet rs;
		try {
			conn = getConn();
			ps2=conn.prepareStatement("select  jincm_wflt_seq.nextval from dual");
			rs=ps2.executeQuery();
			Long id=0L;
			while(rs.next()){
				id=rs.getLong(1);
			}
			ps=conn.prepareStatement("insert into jincm_wflt(id_,red1_,red2_,red3_,red4_,red5_,red6_,blue_,createtime_,createby_) values(?,?,?,?,?,?,?,?,sysdate,'金聪敏')");
			ps.setLong(1, id);
			ps.setInt(2, Integer.parseInt(red[0]));
			ps.setInt(3, Integer.parseInt(red[1]));
			ps.setInt(4, Integer.parseInt(red[2]));
			ps.setInt(5, Integer.parseInt(red[3]));
			ps.setInt(6, Integer.parseInt(red[4]));
			ps.setInt(7, Integer.parseInt(red[5]));
			ps.setInt(8, blue);
			ps.execute();
		} catch (Exception e) {
			e.printStackTrace();
		}
	}
	
	public void insertBatch(List<String[]> luckyList){
		Connection conn;
		PreparedStatement ps;
		PreparedStatement ps2;
		ResultSet rs;
		try {
			conn = getConn();
			conn.setAutoCommit(false);
			ps2=conn.prepareStatement("select  id_ from (select  id_,rownum rn from jincm_wflt where rownum<=1  order by id_ desc) where rn>0");
			rs=ps2.executeQuery();
			Long id=0L;
			while(rs.next()){
				id=rs.getLong(1);
			}
			ps=conn.prepareStatement("insert into jincm_wflt(id_,red1_,red2_,red3_,red4_,red5_,red6_,blue_,createtime_,createby_) values(?,?,?,?,?,?,?,?,sysdate,'金聪敏')");
			for(int i=0;i<luckyList.size();i++){
				String[] lucky=luckyList.get(i);
				id++;
				ps.setLong(1, id);
				ps.setInt(2, Integer.parseInt(lucky[0]));
				ps.setInt(3, Integer.parseInt(lucky[1]));
				ps.setInt(4, Integer.parseInt(lucky[2]));
				ps.setInt(5, Integer.parseInt(lucky[3]));
				ps.setInt(6, Integer.parseInt(lucky[4]));
				ps.setInt(7, Integer.parseInt(lucky[5]));
				ps.setInt(8, Integer.parseInt(lucky[6]));
				ps.addBatch();
			}
			ps.executeBatch();
			conn.commit();
		} catch (Exception e) {
			e.printStackTrace();
		}
	}
}


package com.jincm.wflt.util;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.util.ArrayList;
import java.util.Collections;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

public class LuckyNumber implements Runnable {
	private int count;

	public LuckyNumber() {
	}

	public LuckyNumber(int count) {
		this.count = count;
	}

	public int getCount() {
		return count;
	}

	public void setCount(int count) {
		this.count = count;
	}

	public static void main(String[] args) {
		for (int i = 0; i < 30; i++) {
			Thread t = new Thread(new LuckyNumber(i + 1));
			t.start();
		}

	}

	public String getLuckyNumber() {
		Map<Integer, Integer> luckyMap = new HashMap<Integer, Integer>();
		StringBuffer luckySb = new StringBuffer();
		/**
		 * 避免重复的号码产生
		 */
		for (int i = 0; i < 6; i++) {
			int luckyRed = (int) (Math.random() * 33 + 1);
			if (luckyMap.containsKey(luckyRed)) {
				i--;
			} else {
				luckyMap.put(luckyRed, luckyRed);
				luckySb.append(luckyRed + " ");
			}
		}
		int luckyBlue = (int) (Math.random() * 16 + 1);
		luckySb.append(luckyBlue);
		System.out.println(luckySb.toString());// 按彩票产生的顺序输出
		String[] luckyStr = luckySb.toString().split(" ");
		List<Integer> luckyList = new ArrayList<Integer>();
		for (int i = 0; i < luckyStr.length; i++) {
			if (i != 6) {
				luckyList.add(Integer.parseInt(luckyStr[i]));
			}
		}
		Collections.sort(luckyList);// 对产生的彩票号码进行排序
		StringBuffer luckyBuff = new StringBuffer();
		for (int i = 0; i < luckyList.size(); i++) {
			luckyBuff.append(luckyList.get(i) + " ");
		}
		luckyBuff.append(luckyStr[6]);
		System.out.println(luckyBuff.toString());// 将排序后的彩票输出
		// insert(luckyBuff.toString(),luckyBlue);
		String returnLucky = luckyBuff.toString() + " " + luckyBlue;
		return returnLucky;
	}

	/**
	 * 
	 * @return
	 */
	public static Connection getConn() {
		Connection conn = null;
		try {
			Class.forName("oracle.jdbc.driver.OracleDriver");
			conn = DriverManager.getConnection(
					"jdbc:oracle:thin:@127.0.0.1:1521:ORACL", "wflt", "wflt");
		} catch (Exception e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		return conn;
	}

	public void insert(String luckyNum, Integer blue) {
		String[] red = luckyNum.split(" ");
		Connection conn;
		PreparedStatement ps;
		PreparedStatement ps2;
		ResultSet rs;
		try {
			conn = getConn();
			ps2 = conn
					.prepareStatement("select  jincm_wflt_seq.nextval from dual");
			rs = ps2.executeQuery();
			Long id = 0L;
			while (rs.next()) {
				id = rs.getLong(1);
			}
			ps = conn
					.prepareStatement("insert into jincm_wflt(id_,red1_,red2_,red3_,red4_,red5_,red6_,blue_,createtime_,createby_) values(?,?,?,?,?,?,?,?,sysdate,'金聪敏')");
			ps.setLong(1, id);
			ps.setInt(2, Integer.parseInt(red[0]));
			ps.setInt(3, Integer.parseInt(red[1]));
			ps.setInt(4, Integer.parseInt(red[2]));
			ps.setInt(5, Integer.parseInt(red[3]));
			ps.setInt(6, Integer.parseInt(red[4]));
			ps.setInt(7, Integer.parseInt(red[5]));
			ps.setInt(8, blue);
			ps.execute();
		} catch (Exception e) {
			e.printStackTrace();
		}
	}

	public void insertBatch(List<String[]> luckyList) {
		Connection conn;
		PreparedStatement ps;
		PreparedStatement ps2;
		ResultSet rs;
		try {
			conn = getConn();
			conn.setAutoCommit(false);
			// ps2 = conn
			// .prepareStatement("select  id_ from (select  id_,rownum rn from jincm_wflt where rownum<=1  order by id_ desc) where rn>0");
			// rs = ps2.executeQuery();
			// Long id = 0L;
			// while (rs.next()) {
			// id = rs.getLong(1);
			// }
			// id+=(getCount())*luckyList.size();
			ps = conn
					.prepareStatement("insert into jincm_wflt(id_,red1_,red2_,red3_,red4_,red5_,red6_,blue_,createtime_,createby_) values(jincm_wflt_seq.nextval,?,?,?,?,?,?,?,sysdate,'金聪敏')");
			if (luckyList != null && luckyList.size() > 0) {
				for (int i = 0; i < luckyList.size(); i++) {
					String[] lucky = luckyList.get(i);
					// id++;
					// ps.setLong(1, id);
					ps.setInt(1, Integer.parseInt(lucky[0]));
					ps.setInt(2, Integer.parseInt(lucky[1]));
					ps.setInt(3, Integer.parseInt(lucky[2]));
					ps.setInt(4, Integer.parseInt(lucky[3]));
					ps.setInt(5, Integer.parseInt(lucky[4]));
					ps.setInt(6, Integer.parseInt(lucky[5]));
					ps.setInt(7, Integer.parseInt(lucky[6]));
					// ps.setLong(1, id);
					// ps.setInt(2, Integer.parseInt(lucky[0]));
					// ps.setInt(3, Integer.parseInt(lucky[1]));
					// ps.setInt(4, Integer.parseInt(lucky[2]));
					// ps.setInt(5, Integer.parseInt(lucky[3]));
					// ps.setInt(6, Integer.parseInt(lucky[4]));
					// ps.setInt(7, Integer.parseInt(lucky[5]));
					// ps.setInt(8, Integer.parseInt(lucky[6]));
					ps.addBatch();
				}
			}
			ps.executeBatch();
			conn.commit();
		} catch (Exception e) {
			e.printStackTrace();
		}
	}

	@Override
	public void run() {
		LuckyNumber luckyNum = new LuckyNumber();
		/**
		 * 机选4注
		 */
		List<String[]> luckyList = new ArrayList<String[]>();
		for (int i = 0; i < 5000; i++) {
			System.out.println("线程" + count +"-----------第" + (i + 1) + "注----------");
			String luckyStr = luckyNum.getLuckyNumber();
			String[] lucky = luckyStr.split(" ");
			luckyList.add(lucky);
		}
		luckyNum.insertBatch(luckyList);
		System.out.println("线程" + count + "数据插入成功!");
	}

}

分享到:
评论

相关推荐

    红金羚企业管理系统 REDERP v2.0-ASP源码.zip

    《红金羚企业管理系统 REDERP v2.0-ASP源码》是一款基于ASP技术的企业级管理软件,旨在为企业提供高效、便捷的信息化解决方案。这款系统的核心在于其源代码的开放性,允许用户根据自身需求进行定制和二次开发,极大...

    e网企业v2.0-20041225_ewebs20.zip

    《e网企业v2.0-20041225_ewebs20》是一款基于Web的企业级管理系统,其源码可供开发者参考学习。本文将深入探讨该系统的核心功能、技术架构以及可能涉及的关键知识点,以帮助读者理解并从中获取有价值的信息。 一、...

    ASP.NET-[人才房产]cn-web人才网系统v1.0Beta.zip

    它是.NET Framework的一部分,提供了一种高效、高性能的方式来开发和部署基于Web的应用程序。ASP.NET提供了丰富的功能,包括自动状态管理、事件驱动模型、页面生命周期管理以及内置的安全性支持。 在"ASP.NET-[人才...

    购物-纳百汇商城平台 v1.0 安卓版.zip

    在教育教学场景下,纳百汇商城平台 v1.0 安卓版的出现,不仅简化了教育资源采购流程,也推动了教育资源的数字化进程,有助于提高教学效率,促进教育公平。无论是学校管理者、教师还是学生家长,都能从中受益,实现...

    工资核算程序 v2.0

    《工资核算程序 v2.0》是一款用于企业管理的软件,主要功能是进行员工工资的计算与管理。在这款程序中,用户可以通过登录界面进入系统,其默认登录地址为`http://127.0.0.1/index.asp`,初始账号和密码设置为`admin/...

    一个福利彩票选号小程序

    标题 "一个福利彩票选号小程序" 提供了一个关于软件开发的简单应用场景,即利用编程技术创建一个辅助工具来随机生成彩票号码。这个小程序是针对福利彩票的35选7玩法,意味着用户可以从35个号码中选取7个,程序会自动...

    Python实现的彩票机选器实例

    ### Python实现的彩票机选器实例详解 在本篇文章中,我们将深入探讨如何利用Python语言开发一个彩票机选器,并通过具体的代码示例来展示其实现过程。此彩票机选器能够模拟双色球和大乐透两种类型的彩票号码随机生成...

    Personnel-Management-SystemV1.0.rar_企业人

    《企业人事管理系统V1.0:打造高效人力资源管理》 在现代企业管理中,人力资源的管理是至关重要的一个环节。一个高效、完善的人事管理系统能够帮助企业更好地进行员工信息管理、职责分配、人员调动等一系列工作,...

    职业技能实训平台2.0版--中级财务会计(二).doc

    文档标题和描述提到的是“职业技能实训平台2.0版--中级财务会计(二)”,这表明内容主要涉及中级财务会计的理论知识和实践题目。标签为“资料”,说明这是一个学习资料,可能是一份练习题或者教学材料。 以下是根据...

    OA系统 全管C5-OA协同办公系统 v1.0

    全管C5-OA协同办公系统是一款针对企业日常办公需求设计的综合性管理软件,其v1.0版本在提供高效协作环境的同时,也注重对企业各项业务的全面覆盖。这款系统的核心在于通过集成化的功能模块,帮助企业提升工作效率,...

    亿达公司管理系统V2.0

    在.NET框架下,亿达公司管理系统V2.0利用C#或VB.NET进行业务逻辑层的编写,该框架提供的强大功能包括类型安全、垃圾回收、异常处理以及丰富的类库,使得开发者能够高效地构建稳定、高性能的应用程序。同时,.NET ...

    Delphi福利彩票选号机

    【Delphi福利彩票选号机】是一个基于Delphi编程环境开发的应用程序,旨在模拟福利彩票的随机选号过程。在Delphi中,这样的项目通常涉及对随机数生成、控件交互以及用户界面设计等核心技能的运用。在这个作业中,学生...

    工资管理系统 V2.0.0.0

    《工资管理系统V2.0.0.0:高效企业薪酬管理新纪元》 在现代企业管理中,人力资源的管理占据着举足轻重的地位,而其中薪酬管理是人力资源管理的重要一环。工资管理系统V2.0.0.0便是专为解决这一问题而设计的专业软件...

    C#工资管理系统V2.0

    《C#工资管理系统V2.0》是一款针对院校管理工资的软件系统,相较于V1.0版本,它在代码质量和程序结构上都有所提升,同时引入了更多元化的技术知识。该系统内置了数据库,旨在为学校的财务管理提供更加便捷、高效的...

    [信息办公]凯撒java版SaaS OA协同办公软件 v2.0_saas-oa2.zip

    【信息办公】凯撒java版SaaS OA协同办公软件 v2.0,是一款基于Java技术构建的高效能、可扩展的协同办公系统。SaaS(Software as a Service)模式是现代企业信息化的重要趋势,它允许用户通过互联网访问并使用软件...

    HSHXDJ(黑色幻想舞曲程序)v2.0正式版 20130316.rar

    HSHXDJ(黑色幻想舞曲程序)v2.0 20130316更新日志: 1:增加采集规则 ,用户可以自由采集 2:增加3D云标签,使网站更华丽 3:前台/会员中心全面美化处理 4:修正部分用户无法安装的问题 4:修正部分用户无法连...

    25vv网址导航 清爽版 v2.0.rar

    V2.0 (2012年04月15日发布) ------------------------------------------------------------------------ ├增加一套简洁的绿色风格模板,可后台自由切换; ├加入后台同步官方数据功能,无需手动更新数据即可...

    福利彩票双色球抽奖演示程序v0.2版本

    福利彩票双色球抽奖演示程序v0.2版本已完成双色球单注/复式/机选/手动随机投注功能. BallsGame_2018-6-20 25427.zip 为源码. 开发运行环境jre1.7版本.

    金蝶s-HR V8.5用户操作手册

    1. **薪酬专员**:《金蝶s-HR V8.5 SP1系统操作手册(面向薪酬专员)》主要介绍如何进行薪酬计算、福利管理、薪酬发放和报表生成。这包括设定薪酬结构、处理工资调整、社保公积金计算,以及与财务系统的集成,确保...

Global site tag (gtag.js) - Google Analytics