📄 tagload.java
字号:
package com.beiktech.tag;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.Hashtable;
import java.util.List;
import org.hibernate.Session;
import com.beiktech.hib.HibernateSessionFactory;
import com.beiktech.hib.dao.PropertyManager;
import com.beiktech.hib.dao.ReflectHelper;
import com.beiktech.hib.dao.SjzdImp;
import com.beiktech.hib.dao.SjzdInterface;
import com.beiktech.hib.po.SjzdPo;
public class TagLoad {
private Hashtable obTh = null;
private static TagLoad instance= null;
private SjzdInterface imp;
private String impClassname = "com.beiktech.hib.dao.SjzdImp";
public void impinit() {
if(PropertyManager.getProperty("impClassname")!=null) impClassname=PropertyManager.getProperty("impClassname");
Class clazz = null;
try {
clazz = ReflectHelper.classForName(impClassname); //初始化处理商业类
}
catch (ClassNotFoundException ex) {
}
try {
imp = (SjzdInterface) clazz.newInstance();
}
catch (IllegalAccessException ex1) {
ex1.printStackTrace();
}
catch (InstantiationException ex1) {
ex1.printStackTrace();
}
}
public TagLoad(){
impinit();
obTh = new Hashtable();
try {
load("boda_xtsz_sjzd");
} catch (SQLException e) {
e.printStackTrace();
}
}
public void reload() throws SQLException{ //数据字典的重载
obTh.clear();
//obTh = new Hashtable();
instance.load(imp.getSjzdTableName());
}
public Hashtable load(String tableName) throws SQLException{ //数据字典的装载
List obList = new ArrayList();
SjzdPo tproot = new SjzdPo();
tproot.setCode("ROOT");
tproot.setFcode("-1");
tproot.setFfcode("-1");
tproot.setName("ROOT");
String keyroot=tproot.getCode()+"_"+tproot.getFcode();
obTh.put(keyroot, tproot);
// Session session = HibernateSessionFactory.getSession();
Connection cn = imp.getConnection();
Statement st = cn.createStatement();
String sqlstr = "select * from "+ tableName;
ResultSet rs = st.executeQuery(sqlstr);
while(rs.next()){
SjzdPo sp = new SjzdPo();
sp.setCode(rs.getString("SJZD_CODE"));
sp.setFcode(rs.getString("SJZD_FCODE"));
sp.setFfcode(rs.getString("SJZD_FFCODE"));
sp.setName(rs.getString("SJZD_NAME"));
sp.setPos(rs.getInt("SJZD_POS"));
sp.setValid(rs.getString("SJZD_ZT"));
obList.add(sp);
String key=rs.getString("SJZD_CODE")+"_"+rs.getString("SJZD_FCODE"); // 构造HASHTABLE的KEY(CODE_FCODE)
obTh.put(key, sp);
}
for(int j=0; j<obList.size();j++){
SjzdPo csp = (SjzdPo)obList.get(j);
SjzdPo fsp=(SjzdPo)obTh.get(csp.getFcode()+"_"+csp.getFfcode());
if(fsp!=null)
fsp.addChlid(csp);
csp.setFsp(fsp);
}
Object o=obTh.get("ROOT_-1");
return obTh;
}
public static void main(String[] arg) throws SQLException{
SjzdPo sp =(SjzdPo)TagLoad.getInstance().getObTh().get("SEX_ROOT");
List l= sp.getChildList();
System.out.println(l);
}
public static TagLoad getInstance() { //构造单例
if(instance==null){
instance=new TagLoad();
}
return instance;
}
public Hashtable getObTh() {
return obTh;
}
public void setObTh(Hashtable obTh) {
this.obTh = obTh;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -