/** access mysql database through JDBC Driver */
package mypack.util;
import java.sql.*;
import javax.naming.*;
import javax.sql.*;
import java.util.*;public class OfficeDB { private String dbUrl = "jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=officedb";
private String dbUser="sa";
private String dbPwd="fortune"; public OfficeDB () throws Exception{
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
} public Connection getConnection()throws Exception{
return java.sql.DriverManager.getConnection(dbUrl,dbUser,dbPwd);
} public void closeConnection(Connection con){
try{
if(con!=null) con.close();
}catch(Exception e){
e.printStackTrace();
}
} public void closePrepStmt(PreparedStatement prepStmt){
try{
if(prepStmt!=null) prepStmt.close();
}catch(Exception e){
e.printStackTrace();
}
} public void closeStmt(Statement Stmt){
try{
if(Stmt!=null) Stmt.close();
}catch(Exception e){
e.printStackTrace();
}
}
public void closeResultSet(ResultSet rs){
try{
if(rs!=null) rs.close();
}catch(Exception e){
e.printStackTrace();
}
}
}
======================================
package mypack.util;import java.sql.*;
public class login{
private Connection conn;
private Statement stmt;
private ResultSet rs;
private OfficeDB mydb;
public login(){
String sqlstr;
try{
conn=mydb.getConnection();
stmt=conn.createStatement();
sqlstr="select * from usertab ";
rs=stmt.executeQuery(sqlstr);
while(rs.next())
{
System.out.println("user="+rs.getString("userid")+"username="+rs.getString("username"));
}
}
catch(Exception e){System.out.println("connect db is error!");}
finally{
mydb.closeResultSet(rs);
mydb.closeStmt(stmt);
mydb.closeConnection(conn);
}
}
public static void main(String[] args){
OfficeDB mydb=new OfficeDB();
}
}
package mypack.util;
import java.sql.*;
import javax.naming.*;
import javax.sql.*;
import java.util.*;public class OfficeDB { private String dbUrl = "jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=officedb";
private String dbUser="sa";
private String dbPwd="fortune"; public OfficeDB () throws Exception{
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
} public Connection getConnection()throws Exception{
return java.sql.DriverManager.getConnection(dbUrl,dbUser,dbPwd);
} public void closeConnection(Connection con){
try{
if(con!=null) con.close();
}catch(Exception e){
e.printStackTrace();
}
} public void closePrepStmt(PreparedStatement prepStmt){
try{
if(prepStmt!=null) prepStmt.close();
}catch(Exception e){
e.printStackTrace();
}
} public void closeStmt(Statement Stmt){
try{
if(Stmt!=null) Stmt.close();
}catch(Exception e){
e.printStackTrace();
}
}
public void closeResultSet(ResultSet rs){
try{
if(rs!=null) rs.close();
}catch(Exception e){
e.printStackTrace();
}
}
}
======================================
package mypack.util;import java.sql.*;
public class login{
private Connection conn;
private Statement stmt;
private ResultSet rs;
private OfficeDB mydb;
public login(){
String sqlstr;
try{
conn=mydb.getConnection();
stmt=conn.createStatement();
sqlstr="select * from usertab ";
rs=stmt.executeQuery(sqlstr);
while(rs.next())
{
System.out.println("user="+rs.getString("userid")+"username="+rs.getString("username"));
}
}
catch(Exception e){System.out.println("connect db is error!");}
finally{
mydb.closeResultSet(rs);
mydb.closeStmt(stmt);
mydb.closeConnection(conn);
}
}
public static void main(String[] args){
OfficeDB mydb=new OfficeDB();
}
}
OfficeDB mydb=new OfficeDB();
}
只創建了OfficeDB對象, login類好像沒有實例化呀.
login類沒起作用呀.
}catch(Exception e){
}
要放在方法中才行!
package mypack.util;import java.sql.*;
public class login{
private Connection conn;
private Statement stmt;
private ResultSet rs;
private OfficeDB mydb;
private String sqlstr;
public login(String sqlstr){
this.sqlstr = sqlstr;
}
public login(){
}
public void execSQL(){
try{
mydb = new OfficeDB();
conn=mydb.getConnection();
stmt=conn.createStatement();
rs=stmt.executeQuery(sqlstr);
while(rs.next())
{
System.out.println("user="+rs.getString("userid")+"username="+rs.getString("username"));
}
}
catch(Exception e){System.out.println("connect db is error!");}
finally{
mydb.closeResultSet(rs);
mydb.closeStmt(stmt);
mydb.closeConnection(conn);
}
} public static void main(String[] args) throws Exception{
login mylog =new login("select * from usertab ");
mylog.execSQL();
}
}
在类login中創建了OfficeDB對象,不可以在login类中调用OfficeDB的方法吗?错误信息:
unreported exception java.lang.exception;must caught or decalared to be thrown
OfficeDB mydb=new OfficeDB();
^
1 error
放入到 public class login{
private Connection conn;
private Statement stmt;
private ResultSet rs;
private OfficeDB mydb;
private String sqlstr;
之后.
->
public static void main(String[] args) throws Exception{