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

📄 agendaservice.java

📁 使用java开发的一个会议管理程序
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
/* * To change this template, choose Tools | Templates * and open the template in the editor. */package agendaservice1;import java.io.BufferedReader;import java.io.FileNotFoundException;import java.io.FileReader;import java.sql.*;import java.util.Scanner;import java.text.DateFormat;import java.text.ParseException;public class Agendaservice {    String driver = "sun.jdbc.odbc.JdbcOdbcDriver";    String url = "jdbc:odbc:agenda";    //String user = "";   // String pwd = "";    Connection conn;    Statement stmt;    ResultSet rs;    Agendaservice(){    }    void connecte(){      //建立与数据库的连接        try{// 装载驱动            Class.forName(driver);        }        catch( ClassNotFoundException e )        {            System.out.println( "加载数据库驱动时出错!" );            System.out.println( "错误信息:" + e.getMessage() );        }        try { //建立连接           // conn = DriverManager.getConnection(url,user,pwd);            conn = DriverManager.getConnection(url);            stmt = conn.createStatement();        } catch (Exception e) {            System.out.println(e);        }        /*try{            stmt = conn.createStatement();        }        catch( SQLException e )        {            System.out.println( "建立Statement时出错 !! " );        }*/    }    void close(){//关闭与数据库的连接        try {                          //然后关闭查询操作            stmt.close();            //然后关闭链接            conn.close();        }        catch( SQLException e )        {            System.out.println( "数据库关闭出错 !!!" );            System.out.println( "错误信息: " + e.getMessage() );        }    }    void input(){ //命令行输入操作指令        String temp;//保存输入        int i=0;//保存命令参数        Scanner reader=new Scanner(System.in);        while(true){//键盘输入一行非空命令,忽略用户未输入命令,而直接按回车的操作            System.out.print("$");            temp=reader.nextLine();            if(!temp.equals(""))                break;        }        Scanner s=new Scanner(temp);//对输入命令进行处理,把参数存入command中        while(s.hasNext())        {               command[i]=s.next();          if(command[i].equals(""))//忽略所有空格              continue;           i++;        }        lenght=i;    }   void analyze() throws ParseException, SQLException//按照输入指令,执行相应操作   {      if(command[0].equals("register")){          if(lenght==3)              registerUser();          else System.out.println("输入命令参数有误");      }      else if(command[0].equals("add")){          if(lenght==7)              add();          else System.out.println("输入命令参数有误");      }      else if(command[0].equals("query")){          if(lenght==5)              query();          else System.out.println("输入命令参数有误");      }      else if(command[0].equals("delete")){          if(lenght==4)              delete();          else System.out.println("输入命令参数有误");      }      else if(command[0].equals("clear")){          if(lenght==3)              clearAll();          else System.out.println("输入命令参数有误");      }      else if(command[0].equals("batch")){          if(lenght==2)              batch(command[1]);          else System.out.println("输入命令参数有误");      }      else if(command[0].equals("quit")){          if(lenght==1)              quit();          else System.out.println("输入命令参数有误");      }      else {          func=7;          System.out.println("系统不支持此命令,请重新输入");      }    }    void registerUser() { //用户注册        connecte();//连接数据库        sql = "select * from person";        boolean exist=false;        try{            rs = stmt.executeQuery( sql );         //从结果集中取出数据            while( rs.next() )//判断用户名是否已经存在,如果存在则提示错误并跳出注册操作            {                String str=rs.getString("用户名");                if(str.equals(command[1])){                    exist=true;                    break;                }            }        }        catch( SQLException e )        {            System.out.println( "执行查询时出错 !! " );            System.out.println( "出错信息: " + e.getMessage() );        }        if(exist){//提示用户名已经存在            System.out.println("该用户名已存在,请重新注册");        }        else{//把用户名与密码添加进数据库            try{                stmt.executeUpdate("insert into person (用户名,密码) values ('"+command[1]+"','"+command[2]+"')");               rs=stmt.executeQuery("select * from person");               System.out.println("注册成功,请记住用户名与密码");            }            catch(SQLException e){                System.out.println( "执行添加时出错 !! " );                System.out.println( "出错信息: " + e.getMessage() );            }        }        close();    }    void add() throws ParseException{//添加会议        connecte();        String inStart=turnIntoDate(command[4]);//将输入的开始时间格式化        String inEnd=turnIntoDate(command[5]);//将输入的开始时间格式化        if(checkUserName()){//检测用户名与密码            boolean exit=false;//预约用户是否存在            boolean conflict=false;            try {//确定存在预约用户                rs = stmt.executeQuery("select * from person");                while(rs.next()){                    if(rs.getString("用户名").equals(command[3])){                        exit=true;                        System.out.println("预约用户不存在");                        return ;                                         }                }            } catch (SQLException e) {               System.out.println( "查询时出错 " );                System.out.println( "出错信息: " + e.getMessage() );            }            try{//确定新建会议与之前的无冲突                rs=stmt.executeQuery("select * from meeting");                while(rs.next()){                    if(rs.getString("创建者").equals(command[1])||rs.getString("预约用户").equals(command[3])){                        if(rs.getString("会议标识").equals(command[6])){//新建会议与已有会议的标识是否冲突                            conflict=true;                            System.out.println("已存在会议:"+command[6]);                            return;                        }                        else {//新建会议的参与者与之前会议无时间冲突                            conflict = timeConflict(inStart, inEnd, rs.getString("开始时间"), rs.getString("结束时间"));                            if(conflict){                                System.out.println("时间与会议"+rs.getString("会议标识")+"冲突");                                return;                            }                        }                    }

⌨️ 快捷键说明

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