package main;
|
import java.sql.Connection;
|
import java.sql.SQLException;
|
import java.util.ArrayList;
|
import java.util.Date;
|
import java.util.List;
|
|
import com.base.Com;
|
import com.config.AppConfig;
|
import com.config.AppParam;
|
import com.dev.data.ConfigData;
|
import com.dev.data.Dev_UDPServer_Thread;
|
import com.dev.data.Dev_UDPServer_Thread_SQL;
|
import com.dev.data.Device_Timing_Thread;
|
import com.dev.data.Device_inf;
|
import com.dev.data.HistoryData_RealDelete_Thread;
|
import com.dev.data.InverterPowerUDPServer_Thread;
|
import com.dev.data.ReadConfigFile;
|
import com.dev.data.SteamTurbineUDPServer_Thread;
|
import com.sql.MysqlConnPool;
|
|
public class main_MonitorServer_EquieDeviceData {
|
/**************************************************************************/
|
/**************************************************************************/
|
/**************************************************************************/
|
/********************* Ï·½É豸ֻÄÜÑ¡ÔñÒ»¸ö *******************************/
|
public final static boolean is_app_for_cmcc_only = false;
|
public final static boolean is_app_for_fbo_data_only = false;
|
public final static boolean is_app_for_fbs_free_only = false;
|
public final static boolean is_app_for_bpm7100_only = false;
|
public final static boolean is_app_for_FBS9100S_only = true;
|
/**************************************************************************/
|
/**************************************************************************/
|
/**************************************************************************/
|
/**************************************************************************/
|
public final static boolean app_debug = false;
|
public final static double m_VersionNum = 1.203;
|
public final static String m_Version = "Welcome To Use main_MonitorServer_EquieDeviceData V"
|
+ m_VersionNum ;
|
/**************************************************************************/
|
/**************************************************************************/
|
public static final int DEF_MysqlServerFBS9100S_Port = 3360;
|
public static final int DEF_MysqlServer_Port = 5306;
|
public static final int DEF_MysqlServerFBS_Port = 5307;
|
public static final int DEF_MysqlServerFBO_Port = 5308;
|
public static final int DEF_MysqlServerBPM7100_Port = 5309;
|
|
public static final int DEF_Socket_Server_Port = 1982;
|
public static final int DEF_Socket_ServerFBS_Port = 1992;
|
public static final int DEF_Socket_ServerFBO_Port = 2002;
|
public static final int DEF_Socket_ServerBPM7100_Port = 2001;
|
|
public static final int DEF_Socket_Server_FBI_Port = 1983;
|
public static final int DEF_Socket_Server_FBIFBS_Port = 1993;
|
public static final int DEF_Socket_Server_FBIFBO_Port = 2003;
|
|
public static final int DEF_Socket_Server_IDCE8200_Port = 8200;
|
public static final int DEF_Socket_Server_IDCE8200FBS_Port = 8210;
|
public static final int DEF_Socket_Server_IDCE8200FBO_Port = 8220;
|
|
public static final int DEF_Socket_Server_MOBILE_Port = 2016;
|
public static final int DEF_Socket_Server_MOBILEFBS_Port = 2026;
|
public static final int DEF_Socket_Server_MOBILEFBO_Port = 2036;
|
public static final int DEF_Socket_Server_MOBILEBPM7100_Port = 2037;
|
|
public static final int DEF_FTP_Server_Port = 2110;
|
public static final int DEF_FTP_ServerFBS_Port = 2116;
|
public static final int DEF_FTP_ServerFBO_Port = 2122;
|
public static final int DEF_FTP_ServerBPM7100_Port = 2123;
|
|
public static int MysqlServer_Port = DEF_MysqlServer_Port;
|
public static int Socket_Server_Port = DEF_Socket_Server_Port;
|
public static int Socket_Server_FBI_Port = DEF_Socket_Server_FBI_Port;
|
public static int Socket_Server_IDCE8200_Port = DEF_Socket_Server_IDCE8200_Port;
|
public static int Socket_Server_Mobile_Port = DEF_Socket_Server_MOBILE_Port;
|
public static int FTP_Server_Port = DEF_FTP_Server_Port;
|
|
private static AppConfig m_AppConfig;
|
|
private static MysqlConnPool GB_MysqlConnPool;
|
public static AppParam GB_App_Param;
|
/*********************************************************************************************/
|
/*********************************************************************************************/
|
public static void main(String[] args) {
|
String ver = m_Version;
|
if(is_app_for_fbs_free_only)
|
{
|
ver += " app_for_fbs_free_only";
|
if(is_app_for_bpm7100_only) {
|
ver += " and app_for_bms7100_only";
|
}
|
MysqlServer_Port = DEF_MysqlServerFBS_Port;
|
Socket_Server_Port = DEF_Socket_ServerFBS_Port;
|
Socket_Server_FBI_Port = DEF_Socket_Server_FBIFBS_Port;
|
Socket_Server_IDCE8200_Port = DEF_Socket_Server_IDCE8200FBS_Port;
|
Socket_Server_Mobile_Port = DEF_Socket_Server_MOBILEFBS_Port;
|
FTP_Server_Port = DEF_FTP_ServerFBS_Port;
|
}
|
if(is_app_for_bpm7100_only)
|
{
|
ver += " and app_for_bms7100_only";
|
MysqlServer_Port = DEF_MysqlServerBPM7100_Port;
|
Socket_Server_Port = DEF_Socket_ServerBPM7100_Port;
|
Socket_Server_Mobile_Port = DEF_Socket_Server_MOBILEBPM7100_Port;
|
FTP_Server_Port = DEF_FTP_ServerBPM7100_Port;
|
}
|
if(is_app_for_fbo_data_only)
|
{
|
ver += " app_for_fbo_data_only";
|
MysqlServer_Port = DEF_MysqlServerFBO_Port;
|
Socket_Server_Port = DEF_Socket_ServerFBO_Port;
|
Socket_Server_FBI_Port = DEF_Socket_Server_FBIFBO_Port;
|
Socket_Server_IDCE8200_Port = DEF_Socket_Server_IDCE8200FBO_Port;
|
Socket_Server_Mobile_Port = DEF_Socket_Server_MOBILEFBO_Port;
|
FTP_Server_Port = DEF_FTP_ServerFBO_Port;
|
}
|
if(is_app_for_FBS9100S_only) {
|
ver += " app_for_FBS9100S_only ";
|
MysqlServer_Port = DEF_MysqlServerFBS9100S_Port;
|
Socket_Server_Port = DEF_Socket_ServerFBS_Port;
|
Socket_Server_FBI_Port = DEF_Socket_Server_FBIFBS_Port;
|
Socket_Server_IDCE8200_Port = DEF_Socket_Server_IDCE8200FBS_Port;
|
Socket_Server_Mobile_Port = DEF_Socket_Server_MOBILEFBS_Port;
|
FTP_Server_Port = DEF_FTP_ServerFBS_Port;
|
}
|
//System.out.println(ver+"%%%%%%%%%%%%%");
|
System.out.println("/****************************************************************");
|
System.out.println("*****************************************************************");
|
System.out.println("****************************************************************/");
|
System.out.println(ver);
|
System.out.println("Server Started At DateTime: " + Com.getDateTimeFormat(new Date(), Com.DTF_YMDhms));
|
//´´½¨config.xmlÎļþ
|
m_AppConfig = new AppConfig();
|
|
System.out.println("SQLserver IP£º" + m_AppConfig.getMysqlServerIp() + ", port: "+MysqlServer_Port);
|
//³õʼ»¯Á¬½Ó³ØÖеĸ÷ÖÖ²ÎÊýÐÅÏ¢
|
GB_MysqlConnPool = new MysqlConnPool(m_AppConfig.getMysqlServerIp(), MysqlServer_Port,
|
m_AppConfig.getMysqlConnCountMax());
|
|
/*
|
//ÔÚÁ¬½Ó³ØÖлñÈ¡Á¬½Ó
|
Sql_Mysql sql_ck = new Sql_Mysql(GB_MysqlConnPool.getConn());
|
try {
|
//´´½¨´ó¶àÊý¾Ý¿âÒÔ¼°Êý¾Ý¿âÖеıí¸ñ£¬²¢¸øÄ³Ð©±í¸ñÉèÖµ
|
sql_ck.checkAndCreateDB();
|
} catch (SQLException e1) {
|
e1.printStackTrace();
|
} f999+inally {
|
sql_ck.close_con();
|
}
|
*/
|
|
//´´½¨tb_app_param±í,²¢ÇÒÉèÖñíÖеÄÊý¾Ý
|
GB_App_Param = new AppParam(GB_MysqlConnPool);
|
|
checkingMySQLServerStart(); //¼ì²âÊý¾Ý¿â·þÎñÊÇ·ñÆô¶¯
|
/*********************************************************************************/
|
/*********************************************************************************/
|
Dev_UDPServer_Thread_SQL threadSql = new Dev_UDPServer_Thread_SQL();
|
threadSql.initDB(GB_MysqlConnPool); //³õʼ»¯Êý¾Ý¿â±í
|
|
//¹¹ÔìÉ豸Êý¾Ý
|
List<Device_inf> devices = Device_inf.initDevice();
|
|
ReadConfigFile readdata = new ReadConfigFile(m_AppConfig);
|
|
//´Óftp·þÎñÆ÷½âÎöÅäÖÃÎļþ
|
List<ConfigData> configs = readdata.readConfigData();
|
|
|
List<ConfigData> SteamTurCfgs = new ArrayList<ConfigData>();
|
//·ÖÎöÅäÖÃÎļþÖеÄÊý¾Ý
|
readdata.analyConfigFile(configs,devices,SteamTurCfgs);
|
|
|
//Ôݲ»¼Ç¼¸æ¾¯¼Ç¼
|
//for (Device_inf device_inf : devices) {
|
// //System.out.println(device_inf);
|
// Dev_UDPServer_Thread_SQL.createDevAlarmDataTable(GB_MysqlConnPool, device_inf);
|
//}
|
|
threadSql.insertTb_device_inf(GB_MysqlConnPool,devices);
|
|
threadSql.initRtDataCfgTable(GB_MysqlConnPool,devices);
|
// for (ConfigData cfg : configs) {
|
// System.out.println(cfg);
|
// }
|
System.out.println(configs.size());
|
|
Dev_UDPServer_Thread_SQL.insertOrUpdateTb_DevData_RtTable(GB_MysqlConnPool,devices);
|
/*******************************************************************/
|
//UDP×ÓվͨѶ·þÎñÏß³Ì
|
Dev_UDPServer_Thread udp_thread = new Dev_UDPServer_Thread(GB_MysqlConnPool,devices,configs,m_AppConfig);
|
new Thread(udp_thread).start();
|
|
|
//Äæ±äµçԴͨѶ·þÎñÏß³Ì
|
InverterPowerUDPServer_Thread nibian_thread = new InverterPowerUDPServer_Thread(GB_MysqlConnPool,devices,m_AppConfig);
|
new Thread(nibian_thread).start();
|
|
|
//FTPÎļþ±¸·ÝÏß³Ì
|
//FTPFileBackUp_Thread backup_thread = new FTPFileBackUp_Thread(m_AppConfig);
|
//new Thread(backup_thread).start();
|
|
|
//ÀúÊ·Êý¾ÝÑ»·É¾³ýÏß³Ì
|
HistoryData_RealDelete_Thread hist_thread = new HistoryData_RealDelete_Thread(GB_MysqlConnPool,m_AppConfig,devices);
|
new Thread(hist_thread).start();
|
|
//É豸ʱ¼äͬ²½Ïß³Ì
|
Device_Timing_Thread time_thread = new Device_Timing_Thread();
|
new Thread(time_thread).start();
|
|
|
//ÆûÂÖ·¢µç»úÊý¾Ý½âÎö³ÌÐò
|
SteamTurbineUDPServer_Thread steam_thread = new SteamTurbineUDPServer_Thread(GB_MysqlConnPool,devices,SteamTurCfgs,m_AppConfig);
|
new Thread(steam_thread).start();
|
/*******************************************************************/
|
|
while(true) {
|
try {
|
Thread.sleep(5000);
|
} catch (InterruptedException e) {
|
e.printStackTrace();
|
}
|
}
|
/*********************************************************************************/
|
}
|
|
public static void checkingMySQLServerStart(){
|
//MysqlServer_Port = 3306;
|
System.out.println("IP£º"+m_AppConfig.getMysqlServerIp()+"port"+MysqlServer_Port);
|
//³õʼ»¯Á¬½Ó³ØÖеĸ÷ÖÖ²ÎÊýÐÅÏ¢ m_AppConfig.getMysqlServerIp()
|
GB_MysqlConnPool = new MysqlConnPool(m_AppConfig.getMysqlServerIp(), MysqlServer_Port, 5);
|
while(true){
|
Connection conn = null;
|
try {
|
System.out.println(" ¿ªÊ¼¼ì²âÊý¾Ý¿âÁ¬½Ó "+Com.getDateTimeFormat(new Date(), Com.DTF_YMDhms));
|
conn = GB_MysqlConnPool.getConn();
|
if(conn != null){
|
System.out.println("¼ì²âÊý¾Ý¿âÁ¬½Ó³É¹¦");
|
break;
|
}
|
} catch (Exception e) {
|
try {
|
Thread.sleep(1000);
|
} catch (InterruptedException e1) {
|
e1.printStackTrace();
|
}
|
System.out.println(" MySQL_FBSDEV not Start ... ");
|
} finally {
|
if(conn != null) {
|
try {
|
conn.close();
|
} catch (SQLException e) {
|
e.printStackTrace();
|
}
|
}
|
}
|
}
|
}
|
}
|