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

📄 tools.java

📁 此java代码用以实现图书租赁系统
💻 JAVA
字号:
/**
 * 
 */
package edu.sccp.lhq.server;

import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.FileReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.util.HashMap;

import edu.sccp.lhq.bo.AdminBO;
import edu.sccp.lhq.domain.AdminInfo;

/**
 * 工具类
 * @author 刘华清
 * 2007-9-4
 */
public class Tools {
	private static BufferedReader br;
	public static String name;
	public static String password;
	public static int power;
	static AdminBO adminBO = new AdminBO();

	static{
		br = new BufferedReader(new InputStreamReader(System.in));
	}
	
	/*
	 * 登录界面
	 *
	 */
	public static boolean outPut(){
		 System.out.println("请输入用户名: ");
		 name = readLine();
		 System.out.println("请输入密 码");
		 password = readLine();
		 boolean b = validate(name);
		 return b;
	}
	
	
	/*
	 * 检查用户拼写的方法
	 * 用户名只能是6位以内的数字或字母
	 * return boolean
	 */
	public static boolean validate(String name){
		boolean flag = false;
		if(name.length()>6){
			System.out.println("用户名的长度不能超过6,请重新输入!:");
			flag = false;//用户名的长度超过6位,标志设为false
		}else{
			for(int i = 0; i<name.length(); i++){
				char ch = name.charAt(i);
				if(!Character.isLetterOrDigit(ch)){
					System.out.println("用户名只能由数字或字母组成,请重新输入!");
					flag = false;//用户名中有非数字和字母的字符,标志设为false
					break;//跳出循环
					
					
				}
		flag = true;//用户名符合规则,标志设为true
			}
		}
		
		return flag;//返回标志
	}
	
	
	/*
	 * 用户合法性检查
	 */
	public static int checkAccount(String username, String userPassword){
		HashMap hashMap = AdminHashMap.getHashMap();
		int i = 0;
		AdminInfo adminInfo = (AdminInfo)hashMap.get(username);
		
		if(adminInfo!=null){
			if(userPassword.equals(adminInfo.getUserPassword())){
				i = adminInfo.getUserPower();
			
			}else{
				i = 2;
			}
		}else{
			i = -1;
		}
		return i;
	}
	
	/*
	 * 从键盘接收数据
	 * return String 
	 */
	public static String readLine(){
		String s = null;
		try{
			s = br.readLine();
		}catch(Exception e){
			e.printStackTrace();
		}
		return s;
	}
	
	/*
	 *  字符流读取文件
	 *  将界面文件读入屏幕
	 */
	public static void readFile(String file){
		BufferedReader inStream = null;
		String str  = null;
		try{
			inStream= new BufferedReader(new FileReader(file));
			
			
			//按行输出文件
			while( (str=inStream.readLine())!= null){
				System.out.println(str);
			}
			
		}catch(Exception e){
			e.printStackTrace();
		}finally{
			try{
				//关闭流
				inStream.close();
			}catch(Exception e){
				e.printStackTrace();
			}
		
		}
	}
	
   /*
    * 读取文件中的HashMap
    * return HashMap
    */
	public static HashMap readHashMap(String file){
		ObjectInputStream in = null;
		HashMap hashMap = null;

		try {
			
			in = new ObjectInputStream(new FileInputStream(file));//创建输入对象流
			hashMap = (HashMap)in.readObject();//从流中读取对象转化为HashMap
			
		} catch (FileNotFoundException e) {	
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		}catch (Exception e){
			e.printStackTrace();
		}finally{
			try{
			//关闭流
				in.close();
			}catch(Exception e){
				e.printStackTrace();
			}
		}
		return hashMap;//返回HashMap
	}
	/*
	 * 将装好信息的HashMap
	 * 写入文件中
	 */
	public static  boolean  writeHashMap(String file,HashMap hashMap){
		boolean flag = false;
		ObjectOutputStream out = null;

		try {
			out = new ObjectOutputStream(new FileOutputStream(file));//创建输出对象流
			out.writeObject(hashMap);
		} catch (IOException e) {
			e.printStackTrace();
			
		}catch (Exception e){
			e.printStackTrace();
		}finally{
			try{
			//关闭流
				out.close();
				flag = true;
			}catch(Exception e){
				e.printStackTrace();
			}
		}
		return flag;
	}
	/*
	 * 从主界面根据用户输入的选择
	 * 调入相应的界面
	 */
	
	public static void  mainChoose(int power){
		System.out.println("请输入您的选择:");
		//用户输入的选择信息
		String s = readLine();
		int i = Integer.parseInt(s);
		
		if(power == 1){
			//根据用户的选择调用不同的界面
			switch(i){
				case 1:
					readFile("edu/sccp/lhq/text/admin.txt");//调入用户信息管理界面
					adminChoose();//根据用户的选择执行相应的操作
					break;
				case 4:
					System.out.println("欢迎您下次再来!");
					System.exit(0);
			}
		}else{
//			根据用户的选择调用不同的界面
			switch(i){
				case 1:
					readFile("edu/sccp/lhq/text/student.txt");//调入用户信息管理界面
					//studentChoose();//根据用户的选择执行相应的操作
				
			}
		}
	}
	
	/*
	 * 根据用户的选择
	 * 执行不同的操作
	 */
	
	public static  void adminChoose(){
		System.out.println("请输入您的选择:");
		
		
//		用户输入的选择信息
		String s = readLine();
		int i = Integer.parseInt(s);
		
		switch(i){
		 	case 1:
//		 		readFile("D:/lhq/studentmanager/edu/sccp/lhq/text/adminQuery.txt");
//		 		System.out.println("请输入您的选择:");
//		 		
//		 		switch(Integer.parseInt(readLine())){
//		 			case 1:
//		 				System.out.println("请输入您要查询的用户名:");
//		 				
//		 				adminBO.queryAdminByName(readLine());
//		 				
//		 				break;
//		 			case 2:
//		 				 adminBO.queryAllAdmin();
//		 			
//		 			break;
//		 		}
		        queryAdmin();
		 	    break;
		 	case 2:
//		 		System.out.println("请输入您要添加的用 户 名:");
//		 		String name = readLine();
//		 		while(!Tools.validate(name)){
//		 			
//		 			System.out.println("请输入您要添加的用 户 名:");
//		 			name = readLine();
//		 		}
//		 		while(adminBO.adminExist(name)){
//		 			System.out.println("对不起,您输入的用户名已存在,请重新输入!");
//		 			System.out.println("请输入您要添加的用 户 名:");
//		 			name = readLine();
//		 		}
//		 		System.out.println("请输入您要添加的用户密码: ");
//		 		String password = readLine();
//		 		System.out.println("请输入您要添加的用户权限:");
//		 		int power= Integer.parseInt(readLine());
//		 		
//		 		if(adminBO.addAdmin(name, password, power)){
//		 			System.out.println("添加成功!");
//		 		}else{
//		 			System.out.println("添加失败!");
//		 		}
		 		addAdmin();
		 		break;
		 	case 3:
//		 		System.out.println("请输入您要修改的用 户 名:");
//		 		while(!adminBO.adminExist(readLine())){
//		 			System.out.println("请输入您要修改的用 户 名:");
//		 		}
//		 			System.out.println("请输入您修改后的用 户 名:");
//		 			String name1 = readLine();
//		 			while(!Tools.validate(name1)){
//		 				System.out.println("请输入您修改后的用 户 名:");
//		 				name1 = readLine();
//		 			}
//		 			System.out.println("请输入您修改后的用户密码:");
//		 			String password1 = readLine();
//		 			System.out.println("请输入您修改后的用户权限:");
//		 			int power1= Integer.parseInt(readLine());
//		 		
//		 			if(adminBO.editAdmin(name1, password1, power1)){
//		 				System.out.println("修改成功!");
//		 			}else{
//		 				System.out.println("修改失败!");
//		 			}
		 		editAdmin();
		 		break;
		 	case 4:
//		 		System.out.println("请输入您要删除的用户名:");
//		 		while(!adminBO.adminExist(readLine())){
//		 			System.out.println("请输入您要删除的用户名:");
//		 		}
//		 		
//		 		String name2 = readLine();
//		 		
//		 	
//		 		if(adminBO.delAdmin(name2)){
//		 			System.out.println("删除成功!");
//		 		}else{
//		 			System.out.println("删除失败!");
//		 		}
		 		delAdmin();
		 	}	
		}
	
	/*
	 * 用户查询操作
	 */
	public static void queryAdmin(){
		readFile("edu/sccp/lhq/text/adminQuery.txt");
 		System.out.println("请输入您的选择:");
 		
 		switch(Integer.parseInt(readLine())){
 			case 1:
 				System.out.println("请输入您要查询的用户名:");
 				
 				adminBO.queryAdminByName(readLine());
 				
 				break;
 			case 2:
 				 adminBO.queryAllAdmin();
 				 break;
 		}
	}
	
	/*
	 * 用户添加操作
	 */
	public static void addAdmin(){
		System.out.println("请输入您要添加的用 户 名:");
 		String name = readLine();
 		while(!Tools.validate(name)){
 			
 			System.out.println("请输入您要添加的用 户 名:");
 			name = readLine();
 		}
 		while(adminBO.adminExist(name)){
 			System.out.println("对不起,您输入的用户名已存在,请重新输入!");
 			System.out.println("请输入您要添加的用 户 名:");
 			name = readLine();
 		}
 		System.out.println("请输入您要添加的用户密码: ");
 		String password = readLine();
 		System.out.println("请输入您要添加的用户权限:");
 		int power= Integer.parseInt(readLine());
 		
 		if(adminBO.addAdmin(name, password, power)){
 			System.out.println("添加成功!");
 		}else{
 			System.out.println("添加失败!");
 		}
 		
	}
	
	/*
	 * 用户修改操作
	 */
	public static void editAdmin(){
		
		System.out.println("请输入您要修改的用 户 名:");
		String name = readLine();
 		while(!adminBO.adminExist(name)){
 			System.out.println("对不起,您输入的用户名不存在!请重新输入!");
 			System.out.println("请输入您要修改的用 户 名:");
 			name = readLine();
 		}
 		adminBO.queryAdminByName(name);
 		System.out.println("请输入您修改后的用 户 名:");
 		String name1 = readLine();
 		while(!Tools.validate(name1)){
 			System.out.println("请输入您修改后的用 户 名:");
 			name1 = readLine();
 		}
 		System.out.println("请输入您修改后的用户密码:");
 		String password1 = readLine();
 		System.out.println("请输入您修改后的用户权限:");
 		int power1= Integer.parseInt(readLine());
 	
 		if(adminBO.editAdmin(name1, password1, power1)){
 			System.out.println("修改成功!");
 		}else{
 			System.out.println("修改失败!");
 		}
 		
	}
	
	/*
	 * 用户删除操作
	 */
	public static void delAdmin(){
		
		System.out.println("请输入您要删除的用户名:");
 		while(!adminBO.adminExist(readLine())){
 			System.out.println("请输入您要删除的用户名:");
 		}
 		
 		String name2 = readLine();
 		
 	
 		if(adminBO.delAdmin(name2)){
 			System.out.println("删除成功!");
 		}else{
 			System.out.println("删除失败!");
 		}
	}
}

⌨️ 快捷键说明

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