//dbconn.java
/**
* Title:用Javabean连接据?
* Description:用Bean把常用的数据库功能封装,在JSP中声明该Bean。
* How to use it:该javabean包含了三个操作,返回值分为两类,
* 第一类为数据集,主要用来做查询的返回值其中包含query动作。
* 第二类为二进制类型,用来判断执行结果是否正确。包括delete,update,opt这两种操作不用返回值但是需要判断是否正确。
* Copyright: nwnu.edu.cn Copyright © 2003
* version dbconn oracle1.0 版本
**/ package com.include;
import oracle.jdbc.driver.*;
import java.sql.*;
public class dbconn
{ String sDBDriver="oracle.jdbc.driver.OracleDriver";
String sConnStr="jdbc:oracle:thin:@202.201.48.9:1521:test";
String user="user";
String password="pass";
Connection conn=null;
ResultSet rs=null;
boolean result=false;
public static String tts,liststr;
//加载数据库驱动程序
public dbconn()
{
try{
Class.forName(sDBDriver);
}
catch(java.lang.ClassNotFoundException e)
{
System.err.println("数据库驱动文件错误:"+e.getMessage());
}
}
//数据库更新
public boolean update(String sql)
{
result=false;
try
{
conn=DriverManager.getConnection(sConnStr,user,password);
Statement stmt=conn.createStatement();
stmt.executeUpdate(sql);
result=true;
}
catch(SQLException ex)
{
System.err.println("无法更新数据库:"+ex.getMessage());
}
return result;
}
//数据库查询
public ResultSet query(String sql)
{
rs=null;
try
{
conn=DriverManager.getConnection(sConnStr,user,password);
Statement stmt=conn.createStatement();
rs=stmt.executeQuery(sql);
}
catch(SQLException ex)
{
System.err.println("无法查询记录:"+ex.getMessage());
}
return rs;
}
//数据库删除
public boolean delete(String sql)
{
result=false;
try
{
conn=DriverManager.getConnection(sConnStr,user,password);
Statement stmt=conn.createStatement();
stmt.executeUpdate(sql);
result=true;
}
catch(SQLException ex)
{
System.err.println("不能删除数据库:"+ex.getMessage());
}
return result;
}
//数据库相关无返回值操作,建库、建表、修改表结构……
public boolean opt(String sql)
{
result=false;
try
{
conn=DriverManager.getConnection(sConnStr,user,password);
Statement stmt=conn.createStatement();
stmt.executeUpdate(sql);
result=true;
}
catch(SQLException ex)
{
System.err.println("不能删除数据库:"+ex.getMessage());
}
return result;
}
public String sql(String sql,String pagestart)
{
//每页显示条数,后面在LIST中的20和这里的PAGESIZE一样
String pagesize;
pagesize="20";
String backsql="select * from (select rownum as m_rownum,m_table.* from ("+sql+") m_table where rownum<="+pagestart+"+"+pagesize+"-1) where m_rownum>="+pagestart;
return backsql;
}
public String sql(String sql,String pagestart,String pagesize)
{
String backsql="select * from (select rownum as m_rownum,m_table.* from ("+sql+") m_table where rownum<="+pagestart+"+"+pagesize+"-1) where m_rownum>="+pagestart;
return backsql;
}
//执行sql语句返回数据集
public ResultSet list(String sql,String pagestart,String pagesize )
{
//得到总的条数
int i=0;
try{
String tssql="select count(*) as ts from ("+sql+")";
ResultSet rs1=query(tssql);
rs1.next();
i=rs1.getInt("ts");
}
catch(SQLException exp)
{
System.out.print("空记录");
}
tts=String.valueOf(i);
if (i<Integer.parseInt(pagestart))
{
pagestart=String.valueOf(i-(i % Integer.parseInt(pagesize)));
}
if (i<0)
{
i=0;
}
String sqlext=sql(sql,pagestart,pagesize );
ResultSet rs=query(sqlext);
return rs;
} public ResultSet list(String sql,String pagestart )
{
//得到总的条数
String pagesize;
pagesize="20";
int i=0;
try{
String tssql="select count(*) as ts from ("+sql+")";
ResultSet rs1=query(tssql);
rs1.next();
i=rs1.getInt("ts");
}
catch(SQLException exp)
{
System.out.print("空记录");
}
tts=String.valueOf(i);
//得到当前条数
if (i<Integer.parseInt(pagestart))
{
pagestart=String.valueOf(i-(i % Integer.parseInt(pagesize)));
}
if (i<0)
{
i=0;
} String sqlext=sql(sql,pagestart);
ResultSet rs=query(sqlext);
return rs;
}
}
/**
* Title:用Javabean连接据?
* Description:用Bean把常用的数据库功能封装,在JSP中声明该Bean。
* How to use it:该javabean包含了三个操作,返回值分为两类,
* 第一类为数据集,主要用来做查询的返回值其中包含query动作。
* 第二类为二进制类型,用来判断执行结果是否正确。包括delete,update,opt这两种操作不用返回值但是需要判断是否正确。
* Copyright: nwnu.edu.cn Copyright © 2003
* version dbconn oracle1.0 版本
**/ package com.include;
import oracle.jdbc.driver.*;
import java.sql.*;
public class dbconn
{ String sDBDriver="oracle.jdbc.driver.OracleDriver";
String sConnStr="jdbc:oracle:thin:@202.201.48.9:1521:test";
String user="user";
String password="pass";
Connection conn=null;
ResultSet rs=null;
boolean result=false;
public static String tts,liststr;
//加载数据库驱动程序
public dbconn()
{
try{
Class.forName(sDBDriver);
}
catch(java.lang.ClassNotFoundException e)
{
System.err.println("数据库驱动文件错误:"+e.getMessage());
}
}
//数据库更新
public boolean update(String sql)
{
result=false;
try
{
conn=DriverManager.getConnection(sConnStr,user,password);
Statement stmt=conn.createStatement();
stmt.executeUpdate(sql);
result=true;
}
catch(SQLException ex)
{
System.err.println("无法更新数据库:"+ex.getMessage());
}
return result;
}
//数据库查询
public ResultSet query(String sql)
{
rs=null;
try
{
conn=DriverManager.getConnection(sConnStr,user,password);
Statement stmt=conn.createStatement();
rs=stmt.executeQuery(sql);
}
catch(SQLException ex)
{
System.err.println("无法查询记录:"+ex.getMessage());
}
return rs;
}
//数据库删除
public boolean delete(String sql)
{
result=false;
try
{
conn=DriverManager.getConnection(sConnStr,user,password);
Statement stmt=conn.createStatement();
stmt.executeUpdate(sql);
result=true;
}
catch(SQLException ex)
{
System.err.println("不能删除数据库:"+ex.getMessage());
}
return result;
}
//数据库相关无返回值操作,建库、建表、修改表结构……
public boolean opt(String sql)
{
result=false;
try
{
conn=DriverManager.getConnection(sConnStr,user,password);
Statement stmt=conn.createStatement();
stmt.executeUpdate(sql);
result=true;
}
catch(SQLException ex)
{
System.err.println("不能删除数据库:"+ex.getMessage());
}
return result;
}
public String sql(String sql,String pagestart)
{
//每页显示条数,后面在LIST中的20和这里的PAGESIZE一样
String pagesize;
pagesize="20";
String backsql="select * from (select rownum as m_rownum,m_table.* from ("+sql+") m_table where rownum<="+pagestart+"+"+pagesize+"-1) where m_rownum>="+pagestart;
return backsql;
}
public String sql(String sql,String pagestart,String pagesize)
{
String backsql="select * from (select rownum as m_rownum,m_table.* from ("+sql+") m_table where rownum<="+pagestart+"+"+pagesize+"-1) where m_rownum>="+pagestart;
return backsql;
}
//执行sql语句返回数据集
public ResultSet list(String sql,String pagestart,String pagesize )
{
//得到总的条数
int i=0;
try{
String tssql="select count(*) as ts from ("+sql+")";
ResultSet rs1=query(tssql);
rs1.next();
i=rs1.getInt("ts");
}
catch(SQLException exp)
{
System.out.print("空记录");
}
tts=String.valueOf(i);
if (i<Integer.parseInt(pagestart))
{
pagestart=String.valueOf(i-(i % Integer.parseInt(pagesize)));
}
if (i<0)
{
i=0;
}
String sqlext=sql(sql,pagestart,pagesize );
ResultSet rs=query(sqlext);
return rs;
} public ResultSet list(String sql,String pagestart )
{
//得到总的条数
String pagesize;
pagesize="20";
int i=0;
try{
String tssql="select count(*) as ts from ("+sql+")";
ResultSet rs1=query(tssql);
rs1.next();
i=rs1.getInt("ts");
}
catch(SQLException exp)
{
System.out.print("空记录");
}
tts=String.valueOf(i);
//得到当前条数
if (i<Integer.parseInt(pagestart))
{
pagestart=String.valueOf(i-(i % Integer.parseInt(pagesize)));
}
if (i<0)
{
i=0;
} String sqlext=sql(sql,pagestart);
ResultSet rs=query(sqlext);
return rs;
}
}
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货