📄 groupsend2user.java
字号:
package com.wayout.wayoutsp.custom;import java.sql.*;import java.util.StringTokenizer;import com.wayout.wayoutsp.operation.OperManager;import com.wayout.wayoutsp.publics.*;import com.wayout.wayoutsp.communication.*;/** * <p>Title: </p> * <p>Description: 短信平台</p> * <p>Copyright: Copyright (c) 2003</p> * <p>Company: wayout</p> * @author wayout * @version 1.0 */public class GroupSend2User extends Thread{ private static Connection conn=null; private static PreparedStatement getCompereToUserSQLpstmt=null; private static PreparedStatement updateToUserpstmt=null; private static PreparedStatement deleteToUserpstmt=null; private String getCompereToUserSQL="select NUMINERFCGUID,VC2DEST_ADDR,VC2SRC_ADDR,VC2MSG_CONTENT,NUMREGISTERED_DELIVERY,VC2SERVICE_ID," +"VC2FEE_TERMINAL_ID,NUMFEE_USER_TYPE,NUMFEE_TYPE,NUMFEE_CODE,VC2LINK_ID from WL_SYS_INTERFACE " +"where DATESEND_TIME < sysdate and NUMSEND_STATUS = 1 and NUMDISTCODE=?"; private String updateTouserSQL="update WL_SYS_INTERFACE set NUMSEND_STATUS=2,DATESUBMIT_TIME=sysdate where NUMINERFCGUID=? ";// private String deleteTouserSQL="delete from t_sm_interface where seq_id=? "; private static GroupSend2User compereToUser=null; public static GroupSend2User getInstanceCompereToUser(){ if(compereToUser==null) compereToUser=new GroupSend2User(); return compereToUser; } public GroupSend2User() { connectDatabase(); try{ getCompereToUserSQLpstmt=conn.prepareStatement(getCompereToUserSQL); updateToUserpstmt=conn.prepareStatement(updateTouserSQL); //deleteToUserpstmt=conn.prepareStatement(deleteTouserSQL); }catch(Exception e){ PublicConstants.writeLog.info("init CompereToUser db error:"+e); } } private static void connectDatabase(){ conn=DatabaseAccess.connectDatabase(PublicConstants.CONNECTION_URL,PublicConstants.DB_USER,PublicConstants.DB_PASS); } public void run() { //休眠10秒 com.wayout.wayoutsp.publics.PublicFuction.threadSleep(10000); while(true) { int messageID=0; //休眠5秒 com.wayout.wayoutsp.publics.PublicFuction.threadSleep(1000*5); try{ if(conn==null){ connectDatabase(); getCompereToUserSQLpstmt=conn.prepareStatement(getCompereToUserSQL); } ////发送数量 500 //getCompereToUserSQLpstmt.setInt(1,500); //查询条件是地区代码 getCompereToUserSQLpstmt.setInt(1,IsmgInfo.IsmgSectionFlag); ResultSet rst=getCompereToUserSQLpstmt.executeQuery(); while(rst.next()){ SendDataBean send = new SendDataBean(); send.clearAllDest(); messageID=rst.getInt("NUMINERFCGUID") ; String destAddr=rst.getString("VC2DEST_ADDR").trim() ; //移动一般不要加86,联通一般要86// if(destAddr.startsWith("8613")){// destAddr=destAddr.substring(2);// } send.addDestAddr(destAddr); send.srcAddr =rst.getString("VC2SRC_ADDR").trim(); String MTcontent=rst.getString("VC2MSG_CONTENT"); send.registeredDelivery=rst.getByte("NUMREGISTERED_DELIVERY"); send.servieceType=rst.getString("VC2SERVICE_ID"); send.feeTerminalId=rst.getString("VC2FEE_TERMINAL_ID").trim() ; send.feeUserType=rst.getByte("NUMFEE_USER_TYPE"); send.feeType=rst.getByte("NUMFEE_TYPE"); send.infoFee=rst.getInt("NUMFEE_CODE"); send.linkId = rst.getString("VC2LINK_ID"); if(MTcontent.length()>70){ MTcontent=MTcontent.substring(0,70)+"##" +MTcontent.substring(70,MTcontent.length()); } StringTokenizer st = new StringTokenizer(MTcontent,"##"); int index = 0; while (st.hasMoreTokens()) { send.pkTotal = (byte)st.countTokens(); send.pkNumber = (byte)++index; send.sendData = st.nextToken().trim(); OperManager.getInstance().sendShortMessage(send) ; } updateAlreadysend2User(messageID); PublicConstants.writeLog.info("getCompereToUserSQLpstmt Onc: "+send.feeTerminalId+": "+MTcontent,2); } }catch(NullPointerException ex) { System.out.println(" getCompereToUserSQLpstmt NullPointerException!: "+ex) ; PublicConstants.writeLog.error("getCompereToUserSQLpstmt NullPointerException!:"+ex); //出异常由删掉 //deleteAlreadyAttendUser(messageID); }catch(Exception e) { System.out.println(" getCompereToUserSQLpstmt error!: "+e) ; PublicConstants.writeLog.error("getCompereToUserSQLpstmt error!:"+e); } } }//更新己发送给用户的记录 private boolean updateAlreadysend2User(int id){ try{ updateToUserpstmt.setInt(1,id); if(updateToUserpstmt.executeUpdate()>1) return true; }catch(Exception e){ PublicConstants.writeLog.error("updateAlreadysend2User!:"+e); System.out.println(" updateToUserpstmt error!: "+e) ; } return false; } //删除己处理过的用户// private boolean deleteAlreadyAttendUser(int id){// try{// deleteToUserpstmt.setInt(1,id);// if(deleteToUserpstmt.executeUpdate()>1)// return true;// }catch(Exception e){// PublicConstants.writeLog.error("deleteAlreadyAttendUser:"+e);// System.out.println(" deleteAlreadyAttendUser error!: "+e) ;}// return true;// }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -