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

📄 borrowbean.java

📁 利用JavaBean和JSP实现学校图书馆管理系统。分5个模块:图书查询、借阅管理、图书管理、借阅证管理和读者规则管理。
💻 JAVA
字号:
/**********************************************************
Copyright (C),2004-8-12, Beijing  USTB.
All rights reserved.
Filename: BorrowBean.java
Author: 邹晨
Version 1.0
Date:2004-8-12
Description: 书刊借阅
Other:
Variable List:

Function List:
History:

 
***********************************************************/
package kjb2.library.bean;

import java.text.*;
import java.util.*;
import java.lang.*;
import java.io.*;
import java.sql.*;
import kjb.main.*;

public class BorrowBean extends ParentBean
{
	private static String strZero="0";
	private static String strOne="1";
	private String id = "-1";
	
	//设置借阅ID
	public void setID(String i)
	{
		id = i;
	}

	//取得所有信息内容
	public Vector getData() 
	{
		String sql = "";
		sql = "select * from KJB2_KJXX_JYB where ZT='"+strZero+"' order by JYID";
		return searchData(sql);
	}
	
	//分页取得所有信息
	public Vector getPageData(int page)
	{
		String sql ="";
		sql="select * from KJB2_KJXX_JYB where ZT='"+strZero+"' order by JYID";
		return  getOnePage(sql,page,20);
	}

	//根据借阅号取得此详细信息
	public Hashtable getOneData(String id)
	{
		String sql="";
		sql = "select * from KJB2_KJXX_JYB where JYID="+id+"";
		return searchOneData(sql);
	}

	//删除库信息
	public int delJYXX(String id)
	{
		String sql="";
		sql="delete from KJB2_KJXX_JYB where JYID="+id;
		return deleteRecord(sql);
	}

	//新增借阅记录,参数
	public int[] addBorrow(Hashtable hash)
	{
		System.out.println("批量处理新增借阅。。。。。。");
		String sql="";
		int intID = makeID("KJB2_KJXX_JYB","JYID","","",true);
		String strID=String.valueOf(intID);
		String strZJH = ds.toString((String)hash.get("ZJH"));//证件号
		String strSQH = ds.toString((String)hash.get("SQH"));//索取号
		String strJYSJ = ds.toString((String)hash.get("JYSJ"));//借阅时间

		String strREADERID = "";
		String strBOOKID = "";
		String strDQSJ = "";
		String strXJCS = "";
		
		//根据读者证件号取的读者ID//根据读者ID取得规则ID,然后取得可以借阅天数,
		sql=" select KJB2_KJXX_READER.RULEID,KJB2_KJXX_READER.READERID,KJB2_KJXX_RULE.KJYSJ "
		   +" from KJB2_KJXX_READER,KJB2_KJXX_RULE "
		   +" where KJB2_KJXX_READER.ZJH='"+strZJH+"' and KJB2_KJXX_READER.RULEID=KJB2_KJXX_RULE.RULEID ";
		Hashtable hashReId=(Hashtable)searchOneData(sql);
		strREADERID=ds.toString((String)hashReId.get("READERID"));
		String strKJYSJ=ds.toString((String)hashReId.get("KJYSJ"));

		//根据索取号取得书本ID
	    sql="select BOOKID from KJB2_KJXX_STORE where SQH='"+strSQH+"'";
		Hashtable hashBKID=(Hashtable)searchOneData(sql);
		strBOOKID = ds.toString((String)hashBKID.get("BOOKID"));

		//新增操作
		createStatement();
		clearBatch();
		sql=" insert into KJB2_KJXX_JYB(JYID,READERID,BOOKID,JYSJ,DQSJ,ZT,XJCS) "
			+" values("+strID+","+strREADERID+","+strBOOKID+",'"+strJYSJ
			+"',to_char((to_date('"+strJYSJ+"','yyyy-MM-dd')+"+strKJYSJ+"),'yyyy-MM-dd')"
			+",'"+strZero+"','"+strZero+"')";
		
		addBatch(sql);
		sql="update KJB2_KJXX_STORE set ZT='借出' where BOOKID="+strBOOKID;
		addBatch(sql);
		sql="update KJB2_KJXX_READER set LJJS=LJJS+1 where READERID="+strREADERID;
		addBatch(sql);
		int result[]=executeBatch();	
		closeStm();
		return result;
	}

	//取消借阅11
	public int[] delBorrow(String id)
	{
		System.out.println("批量处理取消借阅。。。。。");
		String sql="";
		sql="select BOOKID from KJB2_KJXX_JYB where JYID="+id;
		Hashtable hash=(Hashtable)searchOneData(sql);
		String strBOOKID=(String)hash.get("BOOKID");

		createStatement();
		clearBatch();
		sql="update KJB2_KJXX_JYB set ZT='"+strOne+"' where JYID="+id;
		addBatch(sql);	
		sql="update KJB2_KJXX_STORE set ZT='可借' where BOOKID="+strBOOKID;
		addBatch(sql);	
		int result[]=executeBatch();	
		closeStm();

		return result;
	}
	
	//判断证件号的合法性
	public boolean isValidate(String zjh)
	{
		String sql="";
		sql="select * from KJB2_KJXX_READER where ZJH='"+zjh+"' and ZT='注册'";
		Hashtable hash=(Hashtable)searchOneData(sql);
		if(hash.isEmpty())
			return false;
		else
			return true;
	}
	
	//判断某书是否可以被借
	public boolean ifCanBorrow(String sqh)
	{
		String sql="";
		sql="select * from KJB2_KJXX_STORE where ZT='可借'";
		Vector vect=(Vector)searchData(sql);
		if(vect.isEmpty())
			return false;
		else
			return true;
	}

	//还书,参数为索取号
	public int[] backBorrow(String sqh)
	{
		System.out.println("批量处理还书。。。。。");
		String sql="";
		String strBOOKID=ds.toString((String)toName("KJB2_KJXX_STORE","SQH","BOOKID",sqh));

		String strNow = ds.getDateTime();
		strNow = strNow.substring(0,10);

		createStatement();
		clearBatch();
		sql="update KJB2_KJXX_JYB set ZT='"+strOne+"',GHRQ='"+strNow+"' where BOOKID="+strBOOKID+" and ZT='"+strZero+"'";
		System.out.println("sql1:"+sql);
		addBatch(sql);	
		sql="update KJB2_KJXX_STORE set ZT='可借' where BOOKID="+strBOOKID;
		System.out.println("sql2:"+sql);
		addBatch(sql);	
		int result[]=executeBatch();	
		closeStm();
		return result;
	}

	//根据所还书的索取号取得,此书的信息和是否过期等信息
	public Hashtable checkBook(String sqh)
	{
		String sql="";
		String strBOOKID=ds.toString((String)toName("KJB2_KJXX_STORE","SQH","BOOKID",sqh));
		if(strBOOKID.equals("")) strBOOKID="-1";
		String strBOOKCLASSID=ds.toString((String)toName("KJB2_KJXX_STORE","SQH","BOOKCLASSID",sqh));
		if(strBOOKCLASSID.equals("")) strBOOKCLASSID="-1";
		sql="select TITLE,AUTHOR,ISBN,CBSJ,DJ,PCJE,READERID,JYSJ,DQSJ "
			+" from KJB2_KJXX_BOOK,KJB2_KJXX_JYB "
			+" where KJB2_KJXX_BOOK.BOOKCLASSID="+strBOOKCLASSID+" and KJB2_KJXX_JYB.BOOKID="+strBOOKID+" and KJB2_KJXX_JYB.ZT='"+strZero+"'";
		return searchOneData(sql);
	}

	//............................................................................................//
	//个人信息

	//取得书籍
	public Vector getBorBooks(String zgbh,String type)
	{	
		String sql="";
		String strNow = ds.getDateTime();
		strNow = strNow.substring(0,10);
		sql="select READERID from KJB2_KJXX_READER where GH='"+zgbh+"' and(ZT='注册' or ZT='挂失')";
		Hashtable hash = (Hashtable)searchOneData(sql);
		String strREADERID=ds.toString((String)hash.get("READERID"));
		
		//在借的所有书籍
		if(type.equals("0"))
		{
			sql="select * from KJB2_KJXX_JYB where READERID="+strREADERID+" and ZT='"+strZero+"'";
		}

		//借阅历史
		if(type.equals("1"))
		{
			sql="select * from KJB2_KJXX_JYB where READERID="+strREADERID+" and ZT='"+strOne+"'";
		}

		//所有有效预约书
		if(type.equals("2"))
		{
			sql=" select * from KJB2_KJXX_YYB "
			   +" where READERID="+strREADERID+" and ZT='生效' and DQSJ>='"+strNow+"'";
		}

		return searchData(sql);
	}

	//分页取得书籍
	public Vector getPageBorBooks(String zgbh,String type,int page)
	{	
		String sql="";
		String strNow = ds.getDateTime();
		strNow = strNow.substring(0,10);
		sql="select READERID from KJB2_KJXX_READER where GH='"+zgbh+"' and(ZT='注册' or ZT='挂失')";
		Hashtable hash = (Hashtable)searchOneData(sql);
		String strREADERID=ds.toString((String)hash.get("READERID"));
		if(strREADERID.equals("")) strREADERID="-1";
		//在借的所有书籍
		if(type.equals("0"))
		{
			sql="select * from KJB2_KJXX_JYB where READERID="+strREADERID+" and ZT='"+strZero+"' order by JYSJ";
			System.out.println(sql);
		}

		//借阅历史
		if(type.equals("1"))
		{
			sql="select * from KJB2_KJXX_JYB where READERID="+strREADERID+" and ZT='"+strOne+"' order by GHRQ";
		}

		//所有有效预约书
		if(type.equals("2"))
		{
			sql=" select * from KJB2_KJXX_YYB "
			   +" where READERID="+strREADERID+" and ZT='生效' and DQSJ>='"+strNow+"'";
		}
		return getOnePage(sql,page,20);
	}

	//续借
	public int[] setContinue(String zgbh,String jyid)
	{
		String sql="";
		sql="select KXJSJ from KJB2_KJXX_RULE,KJB2_KJXX_READER "
			+" where KJB2_KJXX_READER.GH='"+zgbh+"' and KJB2_KJXX_READER.RULEID=KJB2_KJXX_RULE.RULEID ";
		Hashtable hash = (Hashtable)searchOneData(sql);
		String strKXJSJ=ds.toString((String)hash.get("KXJSJ"));

		sql=" update KJB2_KJXX_JYB set XJCS=XJCS+1,DQSJ=to_char((to_date(DQSJ,'yyyy-MM-dd')+"+strKXJSJ+"),'yyyy-MM-dd') "
			+" where JYID="+jyid+"";
		System.out.println("sqlsql:"+sql);
		/*return deleteRecord(sql);*/

		createStatement();
		clearBatch();
		addBatch(sql);	
		int result[]=executeBatch();	
		closeStm();
		return result;
	}
	
	//取消预约
	public int setConcel(String yyid)
	{
		String sql="";
		sql="update KJB2_KJXX_YYB set ZT='取消' where YYID="+yyid;
		return deleteRecord(sql);
	}
	

	//查找所有的统一函数
	private Vector searchData(String sql) 
	{
		Vector vect = new Vector();
		ResultSet rs = selectRecord(sql);

		//取得列数和列名
		Statement stmt = null;
		try{
			ResultSetMetaData rsmd = rs.getMetaData();
			int cols = rsmd.getColumnCount();
			while(rs.next())
			{	
				Hashtable hash = new Hashtable();
				for(int i=1;i<=cols;i++)
				{
					String field = ds.toString(rsmd.getColumnName(i));
					String value = ds.toString(rs.getString(i));
					hash.put(field,value);
				}
				vect.add(hash);
			}
		}catch(Exception e){System.out.println("运行时出错:"+e);}
		finally{
			if(rs!=null)try{ stmt = rs.getStatement(); rs.close();}catch(Exception e){System.out.println("关闭记录集rs时出错"+e);}
			if(stmt!=null) try{stmt.close();}catch(Exception e){System.out.println("关闭声明时statement出错"+e);}		
		}
		return vect;	
	}

	//查找一条记录统一函数
	private Hashtable searchOneData(String sql) 
	{
		Hashtable hash = new Hashtable();
		ResultSet rs = selectRecord(sql);

		Statement stmt = null;
		try{
			//取得列数和列名
			ResultSetMetaData rsmd = rs.getMetaData();
			int cols = rsmd.getColumnCount();
			if(rs.next())
			{	
				for(int i=1;i<=cols;i++)
				{
					String field = ds.toString(rsmd.getColumnName(i));
					String value = ds.toString(rs.getString(i));
					hash.put(field,value);
				}
			}
		}catch(Exception e){System.out.println("运行时出错:"+e);}
		finally{
			if(rs!=null)try{ stmt = rs.getStatement(); rs.close();}catch(Exception e){System.out.println("关闭记录集rs时出错"+e);}
			if(stmt!=null) try{stmt.close();}catch(Exception e){System.out.println("关闭声明时statement出错"+e);}		
		}
		return hash;
	}	
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -