package org.evilbinary.db;
import java.sql.*;
import java.util.Vector;
public class DBUtil {
private String userName;
private String password;
private String connectUrl;
private String driverName;
private Statement statement;
private PreparedStatement preparedStatement;
private Connection connection;
private ResultSet resultSet;
private CallableStatement callStatement;
public DBUtil(){
driverName="com.mysql.jdbc.Driver";
connectUrl="jdbc:mysql://localhost:3306/oj";
userName="root";
password="123";
connect();
}
public DBUtil(String connectUrl,String userName,String password){
driverName="com.mysql.jdbc.Driver";
this.connectUrl=connectUrl;
this.userName=userName;
this.password=password;
connect();
}
public void connect(){
if(connection!=null)
return;
try {
Class.forName(driverName);
connection=DriverManager.getConnection(connectUrl,userName,password);
} catch (ClassNotFoundException e) {
System.out.println("jdbc driver can not found!"+e.getMessage());
} catch (SQLException e) {
System.out.println("connect failed!"+e.getMessage());
}catch(Exception e){
System.out.println("Error!"+e.getMessage());
}
}
public void close(){
try {
if(statement!=null&&!statement.isClosed())
statement.close();
if(callStatement!=null&&!callStatement.isClosed())
callStatement.close();
if(preparedStatement!=null&&!preparedStatement.isClosed())
preparedStatement.close();
if(connection!=null&&!connection.isClosed())
connection.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
public void executeQuery(String sql){
try {
statement=connection.createStatement();
resultSet=statement.executeQuery(sql);
} catch (SQLException e) {
// TODO Auto-generated catch block
System.out.println("executeQuery failed!"+e.getMessage());
}catch(Exception e){
System.out.println("executeQuery error!"+e.getMessage());
}
}
public void executeQuery(String sql,String parameters[]){
try {
preparedStatement=connection.prepareStatement(sql);
for(int i=0;i getResultsVectorStrings(){
ResultSetMetaData resultSetMetaData;
Vector vv=new Vector();
try {
resultSetMetaData = resultSet.getMetaData();
int numCols=resultSetMetaData.getColumnCount();
while(resultSet.next())
{
String[] v=new String[numCols];
for(int i=0;i getResultsVectorStrings(int page,int quantity){
ResultSetMetaData resultSetMetaData;
Vector vv=new Vector();
try {
resultSetMetaData = resultSet.getMetaData();
int numCols=resultSetMetaData.getColumnCount();
int first=(page-1)*quantity;
int temp=0;
if(first!=0){
resultSet.absolute(first);
}
while(resultSet.next()&&(temp vv=new Vector();
try {
resultSet.beforeFirst();
// resultSetMetaData = resultSet.getMetaData();
//int numCols=resultSetMetaData.getColumnCount();
while(resultSet.next())
{
String s=resultSet.getString(1+columnIndex);
vv.addElement(s);
}
//resultSet.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}catch(Exception e){
System.out.println(e.getMessage());
}
return vv;
}
public Vector getResultsVectorRow(int rowIndex){
ResultSetMetaData resultSetMetaData;
Vector vv=new Vector();
try {
resultSet.beforeFirst();
resultSetMetaData = resultSet.getMetaData();
int numCols=resultSetMetaData.getColumnCount();
resultSet.absolute(rowIndex+1);
for(int i=0;i
使用例子:
public class Main { /** * @param args */ public static void output(Vectorvv){ for(int i=0;i vv=db.getResultsVectorStrings(); //// output(vv); //// db.executeQuery("select a from s"); //// vv=db.getResultsVectorStrings(); //// output(vv); //// Vector v=db.getResultsVectorColum(2); //// for(int i=0;i