⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 teacher.java

📁 基于java的jsp开发的在线考试系统 基于java的jsp开发的在线考试系统
💻 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 + -