📄 teacher.java
字号:
package javaBeanClass.Teacher;
import javaBeanClass.DatabaseConn;
import javaBeanClass.Teacher.TeacherData;
import javaBeanClass.MyException;
import java.util.*;
import java.sql.*;
public class Teacher
{
private DatabaseConn db;
private int pageNumber=1;//要显示的页码数,默认为1
private int totalPage;//总页数
private int ID;
private String Name;
private String Passwd;
private String Power;
private String sql;
public void setPageNumber(int pageNumber){this.pageNumber=pageNumber;}
public int getPageNumber(){return this.pageNumber;}
public void setTotalPage(int totalPage){this.totalPage=totalPage;}
public int getTotalPage(){return this.totalPage;}
public void setID(int ID){this.ID=ID;}
public int getID(){return this.ID;}
public void setName(String Name)
{this.Name=Name;}
public String getName(){return this.Name;}
public void setPasswd(String Passwd)
{this.Passwd=Passwd;}
public String getPasswd(){return this.Passwd;}
public void setPower(String Power){this.Power=Power;}
public String getPower(){return this.Power;}
public Teacher(){db=new DatabaseConn();}
public TeacherData findByPrimaryKey()throws SQLException
{
sql="select * from Teacher where ID=?";
Connection con;
PreparedStatement ps=null;
ResultSet rs=null;
try{con=db.connectToDB();}
catch(Exception ex){throw new SQLException("Connect database failed!");}
try
{
ps=con.prepareStatement(sql);
ps.setInt(1,ID);
rs=ps.executeQuery();
if(rs.next())
{return new TeacherData(rs.getInt(1),rs.getString(2),rs.getString(3),rs.getString(4));}
}
catch(Exception ex)
{
System.out.println("FindByPrimaryKey Teacher failed:"+ex.getMessage());
throw new SQLException("FindByPrimaryKey Teacher failed!");
}
finally
{
try{con.close();ps.close();}
catch(SQLException sqlex){System.out.println("FindByPrimaryKey Close Teacher Error:"+sqlex.getMessage());}
}
return null;
}
public Vector findAll(int pageSizes)throws SQLException
{
String tableName="Teacher";
String whereStr="where Del='0'"+(this.Power.equals("000")?"":" And Power<>'000'");
String orderByStr="order by Power";
Vector vResults=new Vector(1,1);
boolean bResult=false;
//sql="select * from Teacher where Del='0'";
Connection con;
CallableStatement ps=null;
ResultSet rs=null;
try{con=db.connectToDB();}
catch(Exception ex){throw new SQLException("Connect database failed!");}
try
{
ps=con.prepareCall("{call pr_splitPage(?,?,?,?,?)}");
ps.registerOutParameter(1,java.sql.Types.INTEGER);
ps.setString(2,tableName);
ps.setInt(3,88888888);//用于返回总页数
ps.setInt(4,pageSizes);
ps.setString(5,whereStr);
ps.executeUpdate();//首先返回总页数,存储过程不能即返回总页数又返回记录集,具体用法还要再研究
this.totalPage=ps.getInt(1);
ps=con.prepareCall("{call pr_splitPage(?,?,?,?,?,?)}");
ps.registerOutParameter(1,java.sql.Types.INTEGER);//用于返回记录集,此参数可不带
ps.setString(2,tableName);
ps.setInt(3,pageNumber);
ps.setInt(4,pageSizes);
ps.setString(5,whereStr);
ps.setString(6,orderByStr);
rs=ps.executeQuery();
bResult=rs.next();
if(bResult)
{
do
{
vResults.add(new TeacherData(rs.getInt(1),rs.getString(2),rs.getString(3),rs.getString(4)));
}while(rs.next());
}
}
catch(Exception ex)
{
System.out.println("FindAll Teacher failed:"+ex.getMessage());
throw new SQLException("FindAll Teacher failed!");
}
finally
{
try{con.close();ps.close();}
catch(SQLException sqlex){System.out.println("FindAll Close Teacher Error:"+sqlex.getMessage());}
}
if(bResult)
{return vResults;}
else
{return null;}
}
public Vector findAllDeleted(int pageSizes)throws SQLException
{
String tableName="Teacher";
String whereStr="where Del='1'"+(this.Power.equals("000")?"":" And Power!='000'");
String orderByStr="order by Power";
Vector vResults=new Vector(1,1);
boolean bResult=false;
//sql="select * from Teacher where Del='1'";
Connection con;
CallableStatement ps=null;
ResultSet rs=null;
try{con=db.connectToDB();}
catch(Exception ex){throw new SQLException("Connect database failed!");}
try
{
ps=con.prepareCall("{call pr_splitPage(?,?,?,?,?)}");
ps.registerOutParameter(1,java.sql.Types.INTEGER);
ps.setString(2,tableName);
ps.setInt(3,88888888);//用于返回总页数
ps.setInt(4,pageSizes);
ps.setString(5,whereStr);
ps.executeUpdate();//首先返回总页数,存储过程不能即返回总页数又返回记录集,具体用法还要再研究
this.totalPage=ps.getInt(1);
ps=con.prepareCall("{call pr_splitPage(?,?,?,?,?,?)}");
ps.registerOutParameter(1,java.sql.Types.INTEGER);//用于返回记录集,此参数可不带
ps.setString(2,tableName);
ps.setInt(3,pageNumber);
ps.setInt(4,pageSizes);
ps.setString(5,whereStr);
ps.setString(6,orderByStr);
rs=ps.executeQuery();
bResult=rs.next();
if(bResult)
{
do
{
vResults.add(new TeacherData(rs.getInt(1),rs.getString(2),rs.getString(3),rs.getString(4)));
}while(rs.next());
}
}
catch(Exception ex)
{
System.out.println("FindAllDeleted Teacher failed:"+ex.getMessage());
throw new SQLException("FindAllDeleted Teacher failed!");
}
finally
{
try{con.close();ps.close();}
catch(SQLException sqlex){System.out.println("FindAllDeleted Close Teacher Error:"+sqlex.getMessage());}
}
if(bResult)
{return vResults;}
else
{return null;}
}
public void insert()throws SQLException,MyException
{
Connection con;
PreparedStatement ps=null;
ResultSet rs=null;
try{con=db.connectToDB();}
catch(Exception ex){throw new SQLException("Connect database failed!");}
boolean bTemp;
try
{
sql="select ID from Teacher where Name=?";
ps=con.prepareStatement(sql);
ps.setString(1,this.Name);
rs=ps.executeQuery();
if(rs.next()) throw new MyException("此登录帐号已存在!");
sql="insert into Teacher (Name,Passwd,Power) values(?,?,?)";
ps=con.prepareStatement(sql);
ps.setString(1,this.Name);
ps.setString(2,this.Passwd);
ps.setString(3,this.Power);
int rowCount=ps.executeUpdate();
if(rowCount==0)
{
throw new SQLException("Insert Teacher failed!");
}
}
catch(SQLException sqlex)
{
System.out.println("Insert Teacher Error:"+sqlex.getMessage());
throw new SQLException("Insert Teacher Error!");
}
finally
{
try{con.close();ps.close();}
catch(SQLException sqlex){System.out.println("Insert Close Teacher Error:"+sqlex.getMessage());}
}
}
public void update()throws SQLException,Exception
{
Connection con;
PreparedStatement ps=null;
ResultSet rs=null;
try{con=db.connectToDB();}
catch(Exception ex){throw new SQLException("Connect database failed!");}
try
{
sql="select ID from Teacher where Name=?";
ps=con.prepareStatement(sql);
ps.setString(1,this.Name);
rs=ps.executeQuery();
if(rs.next()) throw new MyException("此登录帐号已存在!");
if(this.Passwd!=null&&!this.Passwd.equals(""))
{
sql="update Teacher set Name=?,Power=?,Passwd=? where ID=?";
}
else
{
sql="update Teacher set Name=?,Power=? where ID=?";
}
ps=con.prepareStatement(sql);
ps.setString(1,this.Name);
ps.setString(2,this.Power);
if(this.Passwd!=null&&!this.Passwd.equals(""))
{
ps.setString(3,this.Passwd);
ps.setInt(4,this.ID);
}
else
{
ps.setInt(3,ID);
}
int rowCount=ps.executeUpdate();
if(rowCount==0)
{
throw new SQLException("Update Teacher failed!");
}
}
catch(SQLException sqlex)
{
System.err.println("Update Teacher Error:"+sqlex.getMessage());
throw new SQLException("Update Teacher Error");
}
finally
{
try{con.close();ps.close();}
catch(SQLException sqlex){System.out.println("Update Close Teacher Error:"+sqlex.getMessage());}
}
}
public void delete()throws SQLException
{
sql="update Teacher set Del='1' where ID=?";
Connection con;
PreparedStatement ps=null;
try{con=db.connectToDB();}
catch(Exception ex){throw new SQLException("Connect database failed!");}
try
{
ps=con.prepareStatement(sql);
ps.setInt(1,ID);
int rowCount=ps.executeUpdate();
if(rowCount==0)
{
throw new SQLException("Delete Teacher failed!");
}
}
catch(SQLException sqlex)
{
System.out.println("Delete Teacher Error:"+sqlex.getMessage());
throw new SQLException("Delete Teacher Error");
}
finally
{
try{con.close();ps.close();}
catch(SQLException sqlex){System.out.println("Delete Close Teacher Error:"+sqlex.getMessage());}
}
}
public void realDelete()throws SQLException
{
sql="delete Teacher where ID=?";
Connection con;
PreparedStatement ps=null;
try{con=db.connectToDB();}
catch(Exception ex){throw new SQLException("Connect database failed!");}
try
{
ps=con.prepareStatement(sql);
ps.setInt(1,ID);
int rowCount=ps.executeUpdate();
if(rowCount==0)
{
throw new SQLException("realDelete Teacher failed!");
}
}
catch(SQLException sqlex)
{
System.out.println("realDelete Teacher Error:"+sqlex.getMessage());
throw new SQLException("realDelete Teacher Error");
}
finally
{
try{con.close();ps.close();}
catch(SQLException sqlex){System.out.println("realDelete Close Teacher Error:"+sqlex.getMessage());}
}
}
public void restor()throws SQLException
{
sql="update Teacher set Del='0' where ID=?";
Connection con;
PreparedStatement ps=null;
try{con=db.connectToDB();}
catch(Exception ex){throw new SQLException("Connect database failed!");}
try
{
ps=con.prepareStatement(sql);
ps.setInt(1,ID);
int rowCount=ps.executeUpdate();
if(rowCount==0)
{
throw new SQLException("Restor Teacher failed!");
}
}
catch(SQLException sqlex)
{
System.out.println("Restor Teacher Error:"+sqlex.getMessage());
throw new SQLException("Restor Teacher Error");
}
finally
{
try{con.close();ps.close();}
catch(SQLException sqlex){System.out.println("Restor Close Teacher Error:"+sqlex.getMessage());}
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -