📄 packageconstants.java
字号:
package com.sunyard.dataanalyze;
import java.sql.Connection;
import java.sql.DatabaseMetaData;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import org.apache.log4j.Logger;
public class PackageConstants {
public static final int PACKAGE_RQ = 1;//请求包
public static final int PACKAGE_RS = 2;//应答包
public static final int HEAD_SHORT = 14;//短包头长度
public static final int HEAD_LONG = 22;//长包头长度
public static final int TRADENO_START_SHORT = 8;//短包头交易码起始位置
public static final int TRADENO_START_LONG = 16;//长包头交易码起始位置
public static final int TRADENO_LENGTH = 6;//交易码长度
public static final int LISTEN_PORT = 60006;//监听端口
public static final int COMMIT_NUM = 100;//批量提交记录条数
public static final long LIMIT_COMMIT_TIME = 60*1000;//提交记录的最大时间间隔
public static final String PACKAGE_SPLIT_STR = "!";//交易包分割字符
public static final String SEND_PACKAKGE_ROOT = "TradeData";//发送XML文件根节点
public static final String FLOW_DB = "FLOWDB";
public static final String CFG_DB = "CFGDB";
//public static String TARGET_ADDR = "192.168.52.10";
//public static int TARGET_PORT = 4567;
private static Map FIELD_TYPE_MAPPIG_MAP = new HashMap();//字段类型映射
//private static Map FIELD_MAPPING_MAP = new HashMap();//字段映射表
private static List SQL_LIST = new SQLList();//SQL语句
private static Map NOT_NULLABLE_FIELD_MAP = new HashMap();//不能为空的字段
public static Logger log = Logger.getLogger("realflow");
public static Map getFieldTypeMap(){
if(FIELD_TYPE_MAPPIG_MAP.size()==0){
resetTypeMap();
System.out.println("初始化FIELDTYPEMAP");
}
return FIELD_TYPE_MAPPIG_MAP;
}
/*public static Map getFieldMapping(){
if(FIELD_MAPPING_MAP.size()==0){
resetFieldMapping();
System.out.println("初始化FIELD_MAPPING_MAP");
}
return FIELD_MAPPING_MAP;
}*/
public static void resetTypeMap(){
ConnectionFactory cf = new ConnectionFactoryImpl();
Connection conn = cf.getConnection(FLOW_DB);
try{
DatabaseMetaData dm = conn.getMetaData();
ResultSet rs = dm.getColumns(null, "%", "fl_flow_tb", "%");
while(rs.next()){
String columnName = (rs.getString("COLUMN_NAME")).toUpperCase();
String columnType = rs.getString("TYPE_NAME");
int nullable = rs.getInt("NULLABLE");
FIELD_TYPE_MAPPIG_MAP.put(columnName, columnType);
if(nullable == 0){
NOT_NULLABLE_FIELD_MAP.put(columnName, columnType);
}
}
NOT_NULLABLE_FIELD_MAP.remove("SEQ_ID");
rs.close();
conn.close();
}catch(SQLException e){
e.printStackTrace();
}
}
public static Map getNotNullableFieldMap(){
return NOT_NULLABLE_FIELD_MAP;
}
public static List getSQLs(){
return SQL_LIST;
}
public static void resetSQLs(){
SQL_LIST.clear();
}
/*public static void resetFieldMapping(){
ConnectionFactory cf = new ConnectionFactoryImpl();
Connection conn = cf.getConnection(CFG_DB);
Statement stmt = null;
ResultSet rs = null;
try{
stmt = conn.createStatement();
rs = stmt.executeQuery("SELECT * FROM SM_FIELDMAPPING_TB");
while(rs.next()){
String packageField = (rs.getString("PACKAGE_FIELD")).toUpperCase();
String flowField = (rs.getString("FLOWTB_FIELD")).toUpperCase();
FIELD_MAPPING_MAP.put(packageField, flowField);
}
rs.close();
stmt.close();
}catch (SQLException e){
e.printStackTrace();
}
}*/
public static void main(String args[]){
resetTypeMap();
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -