⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 intery2db.java

📁 中国网通SP侧短信网关--CNGP协议实现Java源代码-根据《中国网通.PHS短消息网关技术规范》
💻 JAVA
字号:
package cn.netjava.cngpclient;

import java.util.Vector;
import java.sql.*;
import java.util.Calendar;

import cn.netjava.cngpclient.connection.ShortMsgCmpp;
import cn.netjava.cngpclient.log.LogManage;
import cn.netjava.cngpclient.publics.DatabaseAccess;
import cn.netjava.cngpclient.publics.PublicConstants;
import cn.netjava.cngpclient.publics.PublicFuction;

import java.util.logging.*;

/**
 * 将接收到的消息存入接口表数据的线程
 * 中国网通短信网关客户端--蓝杰实训项目
 * @author www.NetJava.cn
 *
 */
public class Intery2DB extends Thread {

	public Intery2DB() {
		interyV = new Vector(5000);
		conn = connectDatabase();
	}

	public static Vector interyV;

	private static Connection conn = null;

	public void run() {
		String tableFlag = "";
		while (true) {
			while (interyV.size() > 0) {
				if (conn == null)
					conn = connectDatabase();
				ShortMsgCmpp myMsg = (ShortMsgCmpp) interyV.get(0);
				saveCmppDeliverMsg(myMsg);
				interyV.remove(0);
			}
			try {
				Thread.sleep(1000);
			} catch (Exception e) {
			}
		}
	}

	private Connection connectDatabase() {
		try {
			if (conn == null)
				conn = DatabaseAccess.connectDatabase(
						PublicConstants.CONNECTION_intery,
						PublicConstants.DB_USER_intery,
						PublicConstants.DB_PASS_intery);
			return conn;
		} catch (Exception e) {
			System.out.println("Intery2DB error: " + e);
			conn = null;
			return conn;
		}

	}

	private boolean saveCmppDeliverMsg(ShortMsgCmpp sm) {
		String deliverSqlStatement = "insert into cngp_interface_deliver(SPCode,MobileCode,SMS_Msg)"
				+ " values(?,?,?)";
		try {
			PreparedStatement pstmt3 = conn
					.prepareStatement(deliverSqlStatement);
			pstmt3.setString(1, sm.msgDestAddr);
			pstmt3.setString(2, sm.msgSrcAddr);
			if (sm.msgContent.length() > 70)
				sm.msgContent = sm.msgContent.substring(0, 70);
			pstmt3.setString(3, sm.msgContent);
			pstmt3.executeUpdate();
			return true;
		} catch (Exception e) {
			LogManage.ins().myLog.logp(Level.SEVERE, "", "",
					" save Intery  data failed." + "\nmsgId:"
							+ sm.submit_msg_id + "\nmsgMode:" + sm.msgMode
							+ "\nmsgServiceType:" + sm.msgServiceType
							+ "\nmsgDestAddr:" + sm.msgDestAddr
							+ "\nmsgDataCoding:" + sm.msgDataCoding
							+ "\nmsgSrcAddr:" + sm.msgSrcAddr + "\nmsgContent:"
							+ sm.msgContent + "\nexception:" + e.toString());
			try {
				conn.close();
				conn = null;
			} catch (Exception ee) {
			}
			return false;
		}

	}//

	private String timeStamp() {
		Calendar now = Calendar.getInstance();
		String yyyy = String.valueOf(now.get(java.util.Calendar.YEAR));
		String mm = String.valueOf(now.get(Calendar.MONTH) + 1);
		String dd = String.valueOf(now.get(Calendar.DAY_OF_MONTH));
		String hh = String.valueOf(now.get(Calendar.HOUR_OF_DAY));
		String ff = String.valueOf(now.get(Calendar.MINUTE));
		String ss = String.valueOf(now.get(Calendar.SECOND));
		mm = (1 == mm.length()) ? ("0" + mm) : mm;
		dd = (1 == dd.length()) ? ("0" + dd) : dd;
		hh = (1 == hh.length()) ? ("0" + hh) : hh;
		ff = (1 == ff.length()) ? ("0" + ff) : ff;
		ss = (1 == ss.length()) ? ("0" + ss) : ss;
		String ts = yyyy + mm + dd + hh + ff + ss;
		return ts;
	}

}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -