📄 smselectsender.java
字号:
package com.tssx.ebiz.sgip;
import java.sql.*;
import java.io.*;
import java.util.*;
import com.tssx.ebiz.common.*;
import com.tssx.ebiz.smscenter.*;
/**
* <p>类名: SMSelectSender</p>
* <p>功能: 应用程序,对48小时前未发送成功的短信重新发送</p>
* <p>版权: Copyright (c) 2003</p>
* <p>公司: 深讯信科</p>
* <p>版本: 1.0</p>
* @程序 wgysure
* @修改纪录
*/
public class SMSelectSender {
/**<p>数据库连接参数<p>*/
public static String driverName1 = "oracle.jdbc.driver.OracleDriver";
public static String url1 = "jdbc:oracle:thin:@192.168.8.227:1521:orcl";
public static String user1="hnuninet";
public static String password1="hnuninet";
/**
* <p>功能:构造函数</p>
*/
public SMSelectSender() {
}
/**
* <p>方法名:getConnection</p>
* <p>功 能:获取一个数据库连接</p>
* <p>参 数:String driverName,String url,String user,String password</p>
* <p>返 回:Connection</p>
* <p>附 注:</p>
*/
protected static Connection getConnection(String driverName,String url,String user,String password) throws Exception {
Connection con = null;
// con=ConnPoolHandler.getConnection();
//连接数据库
Class.forName(driverName).newInstance();
con = DriverManager.getConnection(url,user,password);
return con;
}
/**
* <p>方法名:init</p>
* <p>功 能:初始化数据库连接参数</p>
* <p>参 数:</p>
* <p>返 回:</p>
* <p>附 注:读属性文件db.properties</p>
*/
private static void init() throws FileNotFoundException,IOException{
File f=new File("db.properties");
InputStream is=new BufferedInputStream(new FileInputStream(f));
Properties dbProps = new Properties();
dbProps.load(is);
driverName1 = dbProps.getProperty("driverName1");
url1 = dbProps.getProperty("url1");
user1 = dbProps.getProperty("user1");
password1 = dbProps.getProperty("password1");
is.close();
}
public static void main(String[] args) {
Connection m_dbConn = null;
final int NUM = -3;
try {
//初始化参数,数据库连接
init();
m_dbConn = getConnection(driverName1,url1,user1,password1);
PreparedStatement stmt = null;
ResultSet rs = null;
String tableName="";
String sql = "";
SMSQueue smsqueue=null;
//获取要检查的表
Calendar myDate=java.util.Calendar.getInstance();
myDate.add(myDate.DATE,NUM);
String myDay=Integer.toString(myDate.get(myDate.DATE));
if(myDay.length()==1) myDay="0"+myDay;
tableName = "VSMS00"+myDay;
//获取未发送成功的包月短信记录
sql = "select * from "
+ tableName;
// + " where feeType = 3 and state=2 and reportType=0";
stmt = m_dbConn.prepareStatement(sql);
rs = stmt.executeQuery();
Vector vector = new Vector();
while (rs.next()) {
smsqueue=new SMSQueue();
smsqueue.setSourceAddr(rs.getString("chargeNumber"));//
smsqueue.setDestinationAddr(rs.getString("userNumber"));
smsqueue.setContent(rs.getString("messageContent"));
smsqueue.setSubmitMulti((short)0);//
smsqueue.setFileNum((short)0);
smsqueue.setSpNumber(rs.getString("spNumber"));
smsqueue.setCorpID(rs.getString("corpID"));
smsqueue.setServiceType(rs.getString("serviceType"));
smsqueue.setFeeType(rs.getInt("feeType"));
smsqueue.setFeeValue(rs.getString("feeValue"));
smsqueue.setGivenValue(rs.getString("givenValue"));
smsqueue.setMorelatetoMTFlag(rs.getInt("morelatetoMTFlag"));
smsqueue.setReportFlag(rs.getInt("reportFlag"));
vector.add(smsqueue);
}
stmt.close();
//插入短信发送队列
for(int i = 0;i<vector.size();i++){
smsqueue = (SMSQueue)vector.get(i);
long queueID=KeyContainer.getNewSequence(m_dbConn,"tsmsqueuid");
smsqueue.insert(m_dbConn,queueID,smsqueue.getSourceAddr(),smsqueue.getDestinationAddr(),smsqueue.getContent(),smsqueue.getSubmitMulti(),smsqueue.getFileNum(),smsqueue.getSpNumber(),smsqueue.getCorpID(),
smsqueue.getServiceType(),smsqueue.getFeeType(),smsqueue.getFeeValue(),smsqueue.getGivenValue(),smsqueue.getMorelatetoMTFlag(),smsqueue.getReportFlag());
}
}
catch (FileNotFoundException e) {
System.out.println("没有找到属性文件:"+e.getMessage());
}
catch (IOException e) {
System.out.println("读属性文件出错:"+e.getMessage());
}
catch (SQLException e) {
System.out.println("查询数据出错:"+e.getMessage());
}
catch (Exception ex) {
System.out.println(ex);
}
finally{
try{
if(m_dbConn != null){
m_dbConn.close();
}
}
catch(Exception e){
System.out.println("关闭数据库错误."+e.getMessage());
}
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -