private static SQLStore sqlstore = null;
private static DBAccess db = null;
private DBAccess() {
init();
}
//实例化该单例
public static DBAccess getInstance() {
if (db == null)
db = new DBAccess();
return db;
}
//进行初始化,载入sqlstore
private void init() {
if (sqlstore == null)
sqlstore = SQLStore.getInstance();
}
//得到一个连接
public Connection getConnection() {
DataSource ds = null;
Connection conn = null;
try {
Context ctx = new InitialContext();
ds = (DataSource) ctx.lookup("java:comp/env/jdbc/oswf");
conn = ds.getConnection();
} catch (NamingException ne) {
ne.printStackTrace();
} catch (SQLException sqle) {
sqle.printStackTrace();
}
return conn;
}
public Vector baseSQLSearch(String sql, Vector params) {
Connection conn = null;
ResultSet rs = null;
Vector<GeneralValueObject> result = new Vector<GeneralValueObject>();
try {
conn = getConnection(); //建立连接
PreparedStatement ps = conn.prepareStatement(sql);
String strParams = "";
//将参数传入去
if (params != null && params.size() > 0) {
for (int i = 0, s = params.size(); i < s; i++) {
String param = (String) params.get(i);
ps.setString(i + 1, param);
strParams = strParams + " " + param;
}
}
// 输出sql语句以及参数,用于调试....
System.out.println("Execute:" + sql);
System.out.println("Params:" + strParams);
rs = ps.executeQuery();
ResultSetMetaData rsmd = ps.getMetaData();
int columnCount = rsmd.getColumnCount();
//组装数据
while (rs.next()) {
GeneralValueObject gvo = new GeneralValueObject();
System.out.println("columnCount=" + columnCount);
if (columnCount > 0)
for (int i = 1; i <= columnCount; i++) {
System.out.println(rsmd.getColumnLabel(i));
System.out.println(rs.getString(i));
String str = rs.getString(i);
if (str == null)
str = "";
gvo.add(rsmd.getColumnLabel(i).toUpperCase(), str);
}
result.add(gvo);
}
ps.close();
rs.close();
} catch (SQLException sqle) {
sqle.printStackTrace();
} finally {
try {
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
return result;
}
分享到:
相关推荐
哈哈.跟大家分享.-atoolIReportstatementsonth.rar53607887testIReport一个关于报表工具IReport的例子应用程序.哈哈.跟大家分享.-atoolIReportstatementsonth.rar53607887testIReport一个关于报表工具IReport的例子...
文件视频今天我还哈哈还哈哈.zip
Quizapp1 试图为我的测验应用程序的主题寻求一些与众不同的想法,我最终花光了时间把所有东西都投入进去并像应该的那样工作....最终只是喂饱了我自己的冒名顶替综合症,哈哈.. ..希望它能帮助某个人!
哈哈.vbs
配电网三相潮流计算程序小毅毅哈哈.doc
哈哈哈.sp.exe
使用json数据动态生成N级栏目也可以改成树,本人自己的写的,感觉很强大,很好用,代码精简,内有...哈哈,用的很爽,如果你DIV and CSS很强的化,可以改成Json树哦~~~如果不懂的可以问我,但是得要100分哦,哈哈.....
下载本程序后请对admin/haha9.asp改名,并相应修改conn.asp、admin/conn.asp文件以防止数据库被下载;... 根目录里zwhua.asp为用户上传的文件,为了安全,我没有用,如果你想用的话就用吧! ...数据库在admin/haha9.asp ...
哈哈计时.apk
哈哈哈.exe
【批量重命名哈哈哈哈哈.zip】这个压缩包文件的标题暗示了其内容可能涉及一个关于批量修改文件或文件夹名称的教程或工具。批量重命名在IT行业中是一项常见且实用的操作,尤其是在处理大量文件时,例如整理照片、文档...
添加后可以在网页直接显示pdf文件,而不是下载。 ################################################### ...添加方法: ...找到 ; Module Settings ;...在上部调用的模块里...估计很多朋友跟我一样找这个补丁很久了,哈哈....
添加后可以在网页直接显示pdf文件,而不是下载。 ################################################### ...添加方法: ...找到 ; Module Settings ;...在上部调用的模块里...估计很多朋友跟我一样找这个补丁很久了,哈哈....
唯一的完全指导,哇哈哈哈哈......唯一的完全指导,哇哈哈哈哈......
标题 "shp2mysql哈哈哈.zip" 提供的信息表明这是一个压缩包,其中包含了将SHP(Shapefile)格式的数据转换为SQL文件,以便导入MySQL数据库的相关工具。Shapefile是一种常见的地理空间数据格式,常用于GIS(地理信息...
你需要不断依据提示,输入信息,以便解除二进制炸弹,一旦出错,哇哈哈.... 以前尝试正确的密码,可以写入到bomb.key文件中,一个密码一行 请输入第1级的密码:dfaadfddfdf 牛刀小试~你已经通过了第1级考验! 请输入...