通讯录

 

 

 App.java

 1 package com.yunruo.test;
 2 
 3 /**
 4  * 这是一个测试类
 5  * 该类中无成员属性
 6  * 该类有两个方法
 7  * 一个main方法
 8  *             该方法是一个主方法,用来测试
 9  * 一个start方法
10  *             该方法直接调用Menu类中的主菜单
11  * @author Administrator
12  *
13  */
14 
15 public class App {
16     
17     public static void main(String[] args)
18     {
19         App p = new App();
20         
21         p.start();
22     }
23     
24     public void start()
25     {
26         try
27         {
28             Menu a = new Menu();
29             
30             a.mainMenu();
31         }
32         catch (Exception e)
33         {
34             System.out.println("输入有误!!!");
35         }
36     }
37 
38 }

Menu.java

package com.yunruo.test;

import java.util.List;
import java.util.Scanner;

/**
 * 这是一个菜单类
 * 该类中无成员属性
 * 给类主要实现:
 * 主菜单
 *             该方法用来调用下面的子菜单方法
 * 添加用户菜单
 * 查找用户菜单
 * 修改用户信息主菜单
 * 修改用户信息子菜单
 * 删除用户信息菜单
 * 排序用户信息菜单
 * @author Administrator
 *
 */
public class Menu 
{
    
    public void mainMenu()
    {
        System.out.println("********************");
        System.out.println("***  1.添加记录  ***");
        System.out.println("***  2.查找记录  ***");
        System.out.println("***  3.修改记录  ***");
        System.out.println("***  4.删除记录  ***");
        System.out.println("***  5.排序记录  ***");
        System.out.println("***  6.退出系统  ***");
        System.out.println("********************");
        System.out.println("请输入正确的数字;最小是1,最大是6。");
    
        while(true)
        {
            switch(new TelNoteRegex().menuRegex(1,6))
            {
            case -1 :
                System.out.println("您输入的数字超出范围!!!");
                System.out.println("请重新选择要执行的功能。");
                continue;
            case 0 :
                System.out.println("只能输入数字!");
                System.out.println("请重新选择要执行的功能。");
            case 1 :
                addMenu();
                break;
            case 2 :
                searchMenu();
                break;
            case 3 :
                modifyMenu();
                break;
            case 4 :
                deleteMenu();
                break;
            case 5 :
                orderMenu();
                break;
            case 6 :
                System.out.println("closing ------>>>>>");
                break;
            }
            
        }
    }    
        public void addMenu()           //添加用户
        {
            System.out.println("**********************");
            System.out.println("***  1.添加新记录  ***");
            System.out.println("***  2.查看新记录  ***");
            System.out.println("***  3.返回上一级  ***");
            System.out.println("**********************");
            System.out.println("请输入正确的数字;最小为1,最大为3");
            
            new Operate().addLogic();
        }
        
        public void searchMenu()
        {
            System.out.println("**********************");
            System.out.println("**  1.按姓名查找  **");
            System.out.println("**  2.按年龄查找  **");
            System.out.println("**  3.按性别查找  **");
            System.out.println("**  4.按号码查找  **");
            System.out.println("**  5.按住址查找  **");
            System.out.println("**  6.查看全纪录  **");
            System.out.println("**  7.返回上一级  **");
            System.out.println("**********************");
            System.out.println("请输入正确的数字,最大是:7  最小是:1");
        
            new Operate().searchLogic();
        }
        
        public void modifyMenu()             //修改用户信息主菜单
        {
            System.out.println("*************************");
            System.out.println("**   1.查看全纪录     **");
            System.out.println("**   2.修改指定纪录 **");
            System.out.println("**   3.返回上一级     **");
            System.out.println("*************************");
            System.out.println("请输入正确的数字,最大是:3  最小是:1");
            
            switch(new TelNoteRegex().menuRegex(1, 3))
            {
            case -1 :
                System.out.println("您输入的数字超出范围!");
                new Menu().modifyMenu() ;
                break  ;
            case 0 :
                System.out.println("只能输入数字!");
                new Menu().modifyMenu() ;
                break ;
            case 1 :
                //查看全部用户
                List<Person> list = new Operate().showAll() ;
                
                for(Person p : list)
                {
                    System.out.println(p); 
                }
                new Menu().modifyMenu() ;
                break ;
            case 2 :
                subModifyMenu() ;
                break ;
            case 3 :
                mainMenu() ;
                break ;
            }
            
        }
        
        public void subModifyMenu()         //修改用户信息子菜单
        {
            System.out.println("*******************");
            System.out.println("**  1.姓名修改  **");
            System.out.println("**  2.年龄修改  **");
            System.out.println("**  3.性别修改  **");
            System.out.println("**  4.号码修改  **");
            System.out.println("**  5.住址修改  **");
            System.out.println("**  6.看全纪录  **");
            System.out.println("**  7.返回上级  **");
            System.out.println("*******************");
            System.out.println("请输入正确的数字,最大是:7  最小是:1");
            
            new Operate().modifyLogicLogic();
        }
        
        public void deleteMenu()                 //删除用户信息菜单
        {
            System.out.println("**************************");
            System.out.println("**  1.查看全记录        **");
            System.out.println("**  2.删除指定记录    **");
            System.out.println("**  3.删除全记录        **");
            System.out.println("**  4.返回上一级        **");
            System.out.println("**************************");
            System.out.println("请输入正确的数字,最大是:4  最小是:1");
            
            new Operate().deleteLogic();
        }
        
        
        public void orderMenu()                 //排序用户信息菜单
        {
            System.out.println("**********************");
            System.out.println("**  1.按姓名排序  **");
            System.out.println("**  2.按年龄排序  **");
            System.out.println("**  3.按性别排序  **");
            System.out.println("**  4.查看全纪录  **");
            System.out.println("**  5.返回上一级  **");
            System.out.println("**********************");
            System.out.println("请输入正确的数字,最大是:5  最小是:1");
            
            new Operate().orderLogic() ;
        }
    
    

}

Operate.java

   1 package com.yunruo.test;
   2 
   3 import java.sql.Connection;
   4 import java.sql.PreparedStatement;
   5 import java.sql.ResultSet;
   6 import java.sql.SQLException;
   7 import java.sql.Statement;
   8 import java.util.ArrayList;
   9 import java.util.List;
  10 import java.util.Scanner;
  11 
  12 import com.mchange.v2.c3p0.ComboPooledDataSource;
  13 
  14 /**
  15  * 这是一个功能类
  16  * 该类中没有成员属性
  17  * 该类主要实现:
  18  * 用户添加信息业务逻辑控制
  19  * 用户查询信息业务逻辑控制
  20  * 修改信息业务逻辑控制
  21  * 删除信息业务逻辑控制
  22  * 排序信息业务逻辑控制
  23  * 添加新用户信息
  24  * 查询全部用户信息
  25  * 按姓名查询用户信息
  26  * 按年龄查询用户信息
  27  * 按性别查询用户信息
  28  * 按电话号码查询用户信息
  29  * 按地址查询用户信息
  30  * 修改指定记录信息
  31  * 删除指定用户信息
  32  * 删除全部用户信息
  33  * 按用户姓名排序信息
  34  * 按用户年龄排序信息
  35  * 按用户性别排序信息
  36  * @author Administrator
  37  *
  38  */
  39 
  40 public class Operate {
  41     
  42     private List<Person> list   ;            //集合
  43 
  44     public void addLogic()                 //用户添加信息业务逻辑控制
  45     {
  46         while(true)
  47         {
  48             switch(new TelNoteRegex().menuRegex(1,3))
  49             {
  50             case -1 :
  51                 System.out.println("您输入的数字超出范围!");
  52                 new Menu().addMenu() ;
  53                 break  ;
  54             case 0 :
  55                 System.out.println("只能输入数字!");
  56                 new Menu().addMenu() ;
  57                 break ;
  58             case 1 :
  59                 addOperation(new TelNoteRegex().nameRegex(), new TelNoteRegex().ageRegex(), new TelNoteRegex().sexRegex(), new TelNoteRegex().telNumRegex(), new TelNoteRegex().addressRegex()) ;
  60                 new Menu().addMenu();
  61                 break ;
  62             case 2 : 
  63                 //查看全部用户
  64                 list = new Operate().showAll() ;
  65                 
  66                 for(Person p : list)
  67                 {
  68                     System.out.println(p); 
  69                 }
  70                 new Menu().addMenu() ;
  71                 break ;
  72             case 3 :
  73                 new Menu().mainMenu();
  74                 break ;//返回上一级
  75                 
  76             }
  77             break ;
  78         }
  79     }
  80 
  81     
  82     public void searchLogic()             //用户查询信息业务逻辑控制
  83     {
  84         while(true)
  85         {
  86             switch(new TelNoteRegex().menuRegex(1, 7))
  87             {
  88             case -1 :
  89                 System.out.println("您输入的数字超出范围!");
  90                 new Menu().searchMenu();
  91                 break  ;
  92             case 0 :
  93                 System.out.println("只能输入数字!");
  94                 new Menu().searchMenu();
  95                 break ;
  96             case 1 :
  97                 list = new Operate().searchByName(new TelNoteRegex().nameRegex()) ; 
  98                 
  99                 for(Person p : list)
 100                 {
 101                     System.out.println(p); 
 102                 }
 103                 new Menu().searchMenu();
 104                 break ;
 105             case 2 :
 106                 list = new Operate().searchByAge(new TelNoteRegex().ageRegex()) ;
 107                 
 108                 for(Person p : list)
 109                 {
 110                     System.out.println(p); 
 111                 }
 112                 new Menu().searchMenu();
 113                 break ;
 114             case 3 :
 115                 list = new Operate().searchBySex(new TelNoteRegex().sexRegex()) ;
 116                 
 117                 for(Person p : list)
 118                 {
 119                     System.out.println(p); 
 120                 }
 121                 new Menu().searchMenu();
 122                 break ;
 123             case 4 :
 124                 list = new Operate().searchByTelNum(new TelNoteRegex().telNumRegex()) ;
 125                 
 126                 for(Person p : list)
 127                 {
 128                     System.out.println(p); 
 129                 }
 130                 new Menu().searchMenu();
 131                 break ;
 132             case 5 :
 133                 list = new Operate().searchByAdd(new TelNoteRegex().addressRegex()) ; 
 134                 
 135                 for(Person p : list)
 136                 {
 137                     System.out.println(p); 
 138                 }
 139                 new Menu().searchMenu();
 140                 break ;
 141             case 6 :
 142                 //查看全部用户
 143                 list = new Operate().showAll() ;
 144                 
 145                 for(Person p : list)
 146                 {
 147                     System.out.println(p); 
 148                 }
 149                 new Menu().searchMenu();
 150                 break ;
 151             case 7 :
 152                 new Menu().mainMenu();
 153                 break ;  //返回上一层
 154             }
 155             break ;
 156         }
 157     }
 158     
 159     public void modifyLogicLogic()     //修改信息业务逻辑控制
 160     {
 161         while(true)
 162         {
 163             try
 164             {
 165                 switch(new TelNoteRegex().menuRegex(1, 7))
 166                 {
 167                 case -1 :
 168                     System.out.println("您输入的数字超出范围!");
 169                     new Menu().subModifyMenu();
 170                     break  ;
 171                 case 0 :
 172                     System.out.println("只能输入数字!");
 173                     new Menu().subModifyMenu();
 174                     break ;
 175                 case 1 :
 176                     System.out.println("请输入指定ID:");
 177                     
 178                     Scanner sc = new Scanner(System.in) ;
 179                     
 180                     int id = sc.nextInt() ;
 181                     
 182                     String name = new TelNoteRegex().nameRegex() ;
 183                     
 184                     modifyName(id, name) ;
 185                     new Menu().subModifyMenu();
 186                     break ;
 187                 case 2 :
 188                     System.out.println("请输入指定ID:");
 189                     
 190                     Scanner sc2 = new Scanner(System.in) ;
 191                     
 192                     int id2 = sc2.nextInt() ;
 193                     
 194                     int age = new TelNoteRegex().ageRegex() ;
 195                     
 196                     modifyAge(id2, age) ;
 197                     new Menu().subModifyMenu();
 198                     break ;
 199                 case 3 :
 200                     System.out.println("请输入指定ID:");
 201                     
 202                     Scanner sc4 = new Scanner(System.in) ;
 203                     
 204                     int id3 = sc4.nextInt() ;
 205                     
 206                     String sex = new TelNoteRegex().sexRegex() ;
 207                     
 208                     modifySex(id3, sex) ;
 209                     new Menu().subModifyMenu();
 210                     break ;
 211                 case 4 :
 212                     System.out.println("请输入指定ID:");
 213                     
 214                     Scanner sc6 = new Scanner(System.in) ;
 215                     
 216                     int id4 = sc6.nextInt() ;
 217                     
 218                     String telNum = new TelNoteRegex().telNumRegex() ;
 219                     
 220                     modifyTelNum(id4, telNum) ;
 221                     new Menu().subModifyMenu();
 222                     break ;
 223                 case 5 :
 224                     System.out.println("请输入指定ID:");
 225                     
 226                     Scanner sc8 = new Scanner(System.in) ;
 227                     
 228                     int id5 = sc8.nextInt() ;
 229                     
 230                     String address = new TelNoteRegex().addressRegex() ;
 231                     
 232                     modifyAddress(id5, address) ;
 233                     new Menu().subModifyMenu();
 234                     break ;
 235                 case 6 :
 236                     //查看全部用户
 237                     list = new Operate().showAll() ;
 238                     
 239                     for(Person p : list)
 240                     {
 241                         System.out.println(p); 
 242                     }
 243                     new Menu().subModifyMenu();
 244                     break ;
 245                 case 7 :
 246                     new Menu().mainMenu();
 247                     break ;  //返回上一层
 248                 }
 249             }
 250             catch(Exception e)
 251             {
 252                 System.out.println("请输入数字");
 253                 new Menu().subModifyMenu();
 254             }
 255             break ;
 256         }
 257     }
 258     
 259     
 260     public void deleteLogic()                 //删除信息业务逻辑控制
 261     {
 262         while(true)
 263         {
 264             switch(new TelNoteRegex().menuRegex(1, 4))
 265             {
 266             case -1 :
 267                 System.out.println("您输入的数字超出范围!");
 268                 new Menu().deleteMenu();
 269                 break  ;
 270             case 0 :
 271                 System.out.println("只能输入数字!");
 272                 new Menu().deleteMenu();
 273                 break ;
 274             case 1 :
 275                 //查看全部用户
 276                 list = new Operate().showAll() ;
 277                 
 278                 for(Person p : list)
 279                 {
 280                     System.out.println(p); 
 281                 }
 282                 new Menu().deleteMenu();
 283                 break ;
 284             case 2 :
 285                 System.out.println("请输入记录序号:");
 286                 
 287                 Scanner sc = new Scanner(System.in) ;
 288                 
 289                 int id = sc.nextInt() ;
 290                 
 291                 System.out.println("是否确认删除:yes or no ");
 292                 
 293                 Scanner sc1 = new Scanner(System.in) ;
 294                 
 295                 String pan = sc1.nextLine() ;
 296                 
 297                 if(pan.equals("yes")) 
 298                 {
 299                     delete(id) ;
 300                     new Menu().deleteMenu() ;
 301                     break ;
 302                 }
 303                 else if(pan.equals("no"))
 304                 {
 305                     System.out.println("返回上一级");
 306                     new Menu().deleteMenu() ;
 307                     break ;
 308                 }
 309                 else
 310                 {
 311                     System.out.println("输入有误!") ; 
 312                     new Menu().deleteMenu() ;
 313                     break ;
 314                 }
 315             case 3 :
 316                 System.out.println("是否确认全部删除:yes or no ");
 317                 
 318                 Scanner sc2 = new Scanner(System.in) ;
 319                 
 320                 String panduan = sc2.nextLine() ;
 321                 
 322                 if(panduan.equals("yes")) 
 323                 {
 324                     deleteAll() ;
 325                     new Menu().deleteMenu() ;
 326                     break ;
 327                 }
 328                 else if(panduan.equals("no"))
 329                 {
 330                     System.out.println("返回上一级");
 331                     new Menu().deleteMenu() ;
 332                     break ;
 333                 }
 334                 else
 335                 {
 336                     System.out.println("输入有误!") ; 
 337                     new Menu().deleteMenu() ;
 338                     break ;
 339                 }
 340             case 4 :
 341                 new Menu().mainMenu();
 342                 break ;  //返回上级
 343             }
 344             break ;
 345         }
 346     }
 347     
 348     
 349     public void orderLogic()     //排序信息业务逻辑控制
 350     {
 351         while(true)
 352         {
 353             switch(new TelNoteRegex().menuRegex(1, 5))
 354             {
 355             case -1 :
 356                 System.out.println("您输入的数字超出范围!");
 357                 new Menu().orderMenu();
 358                 break  ;
 359             case 0 :
 360                 System.out.println("只能输入数字!");
 361                 new Menu().orderMenu();
 362                 break ;
 363             case 1 :
 364                 list = new Operate().orderName() ;
 365                 
 366                 for(Person p : list)
 367                 {
 368                     System.out.println(p); 
 369                 }
 370                 new Menu().orderMenu();
 371                 break ;
 372             case 2 :
 373                 list = new Operate().orderAge() ;
 374                 
 375                 for(Person p : list)
 376                 {
 377                     System.out.println(p); 
 378                 }
 379                 new Menu().orderMenu();
 380                 break ;
 381             case 3 :
 382                 list = new Operate().orderSex() ;
 383                 
 384                 for(Person p : list)
 385                 {
 386                     System.out.println(p); 
 387                 }
 388                 new Menu().orderMenu();
 389                 break ;
 390             case 4 :
 391                 //查看全部用户
 392                 list = new Operate().showAll() ;
 393                 
 394                 for(Person p : list)
 395                 {
 396                     System.out.println(p); 
 397                 }
 398                 new Menu().orderMenu();
 399                 break ;
 400             case 5 :
 401                 new Menu().mainMenu();
 402                 break ;
 403             }
 404             break ;
 405         }
 406     }
 407     public boolean addOperation(String name, int age, String sex, String telNum, String address)                //添加新用户信息
 408     {
 409         boolean rtn = false ;
 410         
 411         ComboPooledDataSource cp = new ComboPooledDataSource("helloc3p0");    //配置连接池
 412         Connection conn = null ;
 413         PreparedStatement ps = null ;
 414         try 
 415         {
 416             conn = cp.getConnection() ;//获得连接
 417             
 418             String sql = "insert into person values(test_seq.nextval,?,?,?,?,?)" ;
 419             
 420             ps = conn.prepareStatement(sql) ;   //预编译SQL语句
 421             
 422             ps.setString(1, name);
 423             ps.setInt(2, age);
 424             ps.setString(3, sex);
 425             ps.setString(4, telNum);
 426             ps.setString(5, address);
 427             
 428             rtn = ps.executeUpdate() == 1 ;
 429             
 430             System.out.println("添加联系人成功!");
 431         }
 432         catch (Exception e) 
 433         {
 434             System.out.println("联系人添加失败!");
 435             //e.printStackTrace();
 436         }
 437         finally
 438         {
 439             try {
 440                 ps.close();
 441             } catch (SQLException e) {
 442                 // TODO 自动生成的 catch 块
 443                 e.printStackTrace();
 444             }
 445             try {
 446                 conn.close();
 447             } catch (SQLException e) {
 448                 // TODO 自动生成的 catch 块
 449                 e.printStackTrace();
 450             }
 451             cp.close();
 452         }
 453         return rtn;
 454     }
 455     public List<Person> showAll()//查询全部用户信息
 456     {
 457         list = new ArrayList<>() ;
 458         
 459         ComboPooledDataSource cp = new ComboPooledDataSource("helloc3p0") ;
 460         
 461         Connection conn = null ;
 462         
 463         Statement ps = null ;
 464         
 465         ResultSet rs = null ;
 466         try
 467         {
 468             conn = cp.getConnection() ;
 469             
 470             String sql = "select * from person" ;
 471             
 472             ps = conn.createStatement() ;
 473             
 474             rs = ps.executeQuery(sql) ;
 475             
 476             while(rs.next())
 477             {
 478                 Person p = new Person() ;
 479                 
 480                 p.setId(rs.getInt("id"));
 481                 p.setName(rs.getString("name"));
 482                 p.setAge(rs.getString("age"));
 483                 p.setSex(rs.getString("sex"));
 484                 p.setTelNum(rs.getString("telnum"));
 485                 p.setAddress(rs.getString("address"));
 486                 
 487                 list.add(p) ;
 488              }
 489         }
 490         catch (SQLException e) 
 491         {
 492             // TODO 自动生成的 catch 块
 493             e.printStackTrace();
 494         }
 495         finally
 496         {
 497             try {
 498                 rs.close();
 499             } catch (SQLException e) {
 500                 // TODO 自动生成的 catch 块
 501                 e.printStackTrace();
 502             }
 503             try {
 504                 ps.close();
 505             } catch (SQLException e) {
 506                 // TODO 自动生成的 catch 块
 507                 e.printStackTrace();
 508             }
 509             try {
 510                 conn.close();
 511             } catch (SQLException e) {
 512                 // TODO 自动生成的 catch 块
 513                 e.printStackTrace();
 514             }
 515             cp.close();
 516         }
 517         return list;
 518     }
 519     public List<Person> searchByName(String name)             //按姓名查询用户信息
 520     {
 521         list = new ArrayList<>() ;
 522         
 523         ComboPooledDataSource cp = new ComboPooledDataSource("helloc3p0") ;
 524         
 525         Connection conn = null ;
 526         
 527         try {
 528             conn = cp.getConnection();
 529             
 530             String sql = "select * from person where name = ? " ;
 531             
 532             PreparedStatement pt = conn.prepareStatement(sql) ;
 533             
 534             pt.setString(1, name);
 535             
 536             ResultSet rt = pt.executeQuery() ;
 537             
 538             if(!rt.next())
 539             {
 540                 System.out.println("联系人不存在!");
 541             }
 542             else
 543             {
 544                 rt = pt.executeQuery() ;
 545                 
 546                 while(rt.next())
 547                 {
 548                     Person p = new Person() ;
 549                     
 550                     p.setId(rt.getInt("id")); 
 551                     p.setName(rt.getString("name"));
 552                     p.setAge(rt.getString("age"));
 553                     p.setSex(rt.getString("sex"));
 554                     p.setTelNum(rt.getString("telnum"));
 555                     p.setAddress(rt.getString("address"));
 556                     
 557                     list.add(p) ;
 558                 }
 559             }
 560             
 561             rt.close();
 562             pt.close();
 563             conn.close();
 564             cp.close();
 565             
 566         } catch (SQLException e) {
 567             // TODO 自动生成的 catch 块
 568             e.printStackTrace();
 569         }
 570     
 571         return list ;
 572         
 573     }
 574     public List<Person> searchByAge(int age)             //按年龄查询用户信息
 575     {
 576         list = new ArrayList<>() ;
 577         
 578         ComboPooledDataSource cp = new ComboPooledDataSource("helloc3p0") ;
 579         
 580         Connection conn = null ;
 581         
 582         try {
 583             conn = cp.getConnection();
 584             
 585             String sql = "select * from person where age = ? " ;
 586             
 587             PreparedStatement pt = conn.prepareStatement(sql) ;
 588             
 589             pt.setInt(1, age);
 590             
 591             ResultSet rt = pt.executeQuery() ;
 592             
 593             if(!rt.next())
 594             {
 595                 System.out.println("未找到该联系人!");
 596             }
 597             else
 598             {
 599                 rt = pt.executeQuery() ;
 600                 
 601                 while(rt.next())
 602                 {
 603                     Person p = new Person() ;
 604                     
 605                     p.setId(rt.getInt("id")); 
 606                     p.setName(rt.getString("name"));
 607                     p.setAge(rt.getString("age"));
 608                     p.setSex(rt.getString("sex"));
 609                     p.setTelNum(rt.getString("telnum"));
 610                     p.setAddress(rt.getString("address"));
 611                     
 612                     list.add(p) ;
 613                 }
 614             }
 615             
 616             rt.close();
 617             pt.close();
 618             conn.close();
 619             cp.close();
 620             
 621         } catch (SQLException e) {
 622             // TODO 自动生成的 catch 块
 623             e.printStackTrace();
 624         }
 625     
 626         return list ;
 627         
 628     }
 629     public List<Person> searchBySex(String sex)             //按性别查询用户信息
 630     {
 631         list = new ArrayList<>() ;
 632         
 633         ComboPooledDataSource cp = new ComboPooledDataSource("helloc3p0") ;
 634         
 635         Connection conn = null ;
 636         
 637         try {
 638             conn = cp.getConnection();
 639             
 640             String sql = "select * from person where sex = ? " ;
 641             
 642             PreparedStatement pt = conn.prepareStatement(sql) ;
 643             
 644             pt.setString(1, sex);
 645             
 646             ResultSet rt = pt.executeQuery() ;
 647             
 648             if(!rt.next())
 649             {
 650                 System.out.println("未找到该联系人!");
 651             }
 652             else
 653             {
 654                 rt = pt.executeQuery() ;
 655                 
 656                 while(rt.next())
 657                 {
 658                     Person p = new Person() ;
 659                     
 660                     p.setId(rt.getInt("id")); 
 661                     p.setName(rt.getString("name"));
 662                     p.setAge(rt.getString("age"));
 663                     p.setSex(rt.getString("sex"));
 664                     p.setTelNum(rt.getString("telnum"));
 665                     p.setAddress(rt.getString("address"));
 666                     
 667                     list.add(p) ;
 668                 }
 669             }
 670             
 671             rt.close();
 672             pt.close();
 673             conn.close();
 674             cp.close();
 675             
 676         } catch (SQLException e) {
 677             // TODO 自动生成的 catch 块
 678             e.printStackTrace();
 679         }
 680     
 681         return list ;
 682         
 683     }
 684     public List<Person> searchByTelNum(String telNum)         //按电话号码查询用户信息
 685     {
 686         list = new ArrayList<>() ;
 687         
 688         ComboPooledDataSource cp = new ComboPooledDataSource("helloc3p0") ;
 689         
 690         Connection conn = null ;
 691         
 692         try {
 693             conn = cp.getConnection();
 694             
 695             String sql = "select * from person where telNum = ? " ;
 696             
 697             PreparedStatement pt = conn.prepareStatement(sql) ;
 698             
 699             pt.setString(1, telNum);
 700             
 701             ResultSet rt = pt.executeQuery() ;
 702             
 703             if(!rt.next())
 704             {
 705                 System.out.println("未找到该联系人!");
 706             }
 707             else
 708             {
 709                 rt = pt.executeQuery() ;
 710                 
 711                 while(rt.next())
 712                 {
 713                     Person p = new Person() ;
 714                     
 715                     p.setId(rt.getInt("id")); 
 716                     p.setName(rt.getString("name"));
 717                     p.setAge(rt.getString("age"));
 718                     p.setSex(rt.getString("sex"));
 719                     p.setTelNum(rt.getString("telnum"));
 720                     p.setAddress(rt.getString("address"));
 721                     
 722                     list.add(p) ;
 723                 }
 724             }
 725             
 726             rt.close();
 727             pt.close();
 728             conn.close();
 729             cp.close();
 730             
 731         } catch (SQLException e) {
 732             // TODO 自动生成的 catch 块
 733             e.printStackTrace();
 734         }
 735     
 736         return list ;
 737         
 738     }
 739     
 740     
 741     public List<Person> searchByAdd(String address)             //按地址查询用户信息
 742     {
 743         list = new ArrayList<>() ;
 744         
 745         ComboPooledDataSource cp = new ComboPooledDataSource("helloc3p0") ;
 746         
 747         Connection conn = null ;
 748         
 749         try {
 750             conn = cp.getConnection();
 751             
 752             String sql = "select * from person where address = ? " ;
 753             
 754             PreparedStatement pt = conn.prepareStatement(sql) ;
 755             
 756             pt.setString(1, address);
 757             
 758             ResultSet rt = pt.executeQuery() ;
 759             
 760             if(!rt.next())
 761             {
 762                 System.out.println("未找到该联系人!");
 763             }
 764             else
 765             {
 766                 rt = pt.executeQuery() ;
 767                 
 768                 while(rt.next())
 769                 {
 770                     Person p = new Person() ;
 771                     
 772                     p.setId(rt.getInt("id")); 
 773                     p.setName(rt.getString("name"));
 774                     p.setAge(rt.getString("age"));
 775                     p.setSex(rt.getString("sex"));
 776                     p.setTelNum(rt.getString("telnum"));
 777                     p.setAddress(rt.getString("address"));
 778                     
 779                     list.add(p) ;
 780                 }
 781             }
 782             
 783             rt.close();
 784             pt.close();
 785             conn.close();
 786             cp.close();
 787             
 788         } catch (SQLException e) {
 789             // TODO 自动生成的 catch 块
 790             e.printStackTrace();
 791         }
 792     
 793         return list ;
 794         
 795     }
 796     public void modifyName(int id,String name)             //修改指定记录姓名信息
 797     {
 798         ComboPooledDataSource cp = new ComboPooledDataSource("helloc3p0") ;
 799         
 800         Connection conn = null ;
 801         
 802             try {
 803                 conn = cp.getConnection();
 804                 
 805                 String sql = "update Person set name =? where id=?" ;
 806                                 
 807                 
 808                 PreparedStatement pt = conn.prepareStatement(sql) ;
 809                 
 810                 pt.setString(1, name);
 811                 pt.setInt(2, id);
 812                 
 813                 int rs = pt.executeUpdate() ;
 814                 
 815                 if(rs==1)
 816                 {
 817                     System.out.println("修改成功,请继续操作!"); 
 818                 }
 819                 else
 820                 {
 821                     System.out.println("要修改的ID不存在!");
 822                 }
 823                 pt.close();
 824                 conn.close();
 825                 cp.close();
 826             } 
 827             catch (SQLException e)
 828             {
 829                 // TODO 自动生成的 catch 块
 830                 e.printStackTrace();
 831             }
 832             
 833     }
 834     public void modifyAge(int id,int age)             //修改指定记录年龄信息
 835     {
 836         ComboPooledDataSource cp = new ComboPooledDataSource("helloc3p0") ;
 837         
 838         Connection conn = null ;
 839         
 840             try {
 841                 conn = cp.getConnection();
 842                 
 843                 String sql = "update Person set age =? where id=?" ;
 844                                 
 845                 
 846                 PreparedStatement pt = conn.prepareStatement(sql) ;
 847                 
 848                 pt.setInt(1, age);
 849                 pt.setInt(2, id);
 850                 
 851                 int rs = pt.executeUpdate() ;
 852                 
 853                 if(rs==1)
 854                 {
 855                     System.out.println("修改成功,请继续操作!"); 
 856                 }
 857                 else
 858                 {
 859                     System.out.println("要修改的ID不存在!");
 860                 }
 861                 pt.close();
 862                 conn.close();
 863                 cp.close();
 864             } 
 865             catch (SQLException e)
 866             {
 867                 // TODO 自动生成的 catch 块
 868                 e.printStackTrace();
 869             }
 870             
 871     }
 872     public void modifySex(int id,String sex)             //修改指定记录性别信息
 873     {
 874         ComboPooledDataSource cp = new ComboPooledDataSource("helloc3p0") ;
 875         
 876         Connection conn = null ;
 877         
 878             try {
 879                 conn = cp.getConnection();
 880                 
 881                 String sql = "update Person set sex =? where id=?" ;
 882                                 
 883                 
 884                 PreparedStatement pt = conn.prepareStatement(sql) ;
 885                 
 886                 pt.setString(1, sex);
 887                 pt.setInt(2, id);
 888                 
 889                 int rs = pt.executeUpdate() ;
 890                 
 891                 if(rs==1)
 892                 {
 893                     System.out.println("修改成功,请继续操作!"); 
 894                 }
 895                 else
 896                 {
 897                     System.out.println("要修改的ID不存在!");
 898                 }
 899                 pt.close();
 900                 conn.close();
 901                 cp.close();
 902             } 
 903             catch (SQLException e)
 904             {
 905                 // TODO 自动生成的 catch 块
 906                 e.printStackTrace();
 907             }
 908             
 909     }
 910     public void modifyTelNum(int id,String telNum)             //修改指定记录电话信息
 911     {
 912         ComboPooledDataSource cp = new ComboPooledDataSource("helloc3p0") ;
 913         
 914         Connection conn = null ;
 915         
 916             try {
 917                 conn = cp.getConnection();
 918                 
 919                 String sql = "update Person set telNum =? where id=?" ;
 920                                 
 921                 
 922                 PreparedStatement pt = conn.prepareStatement(sql) ;
 923                 
 924                 pt.setString(1, telNum);
 925                 pt.setInt(2, id);
 926                 
 927                 int rs = pt.executeUpdate() ;
 928                 
 929                 if(rs==1)
 930                 {
 931                     System.out.println("修改成功,请继续操作!"); 
 932                 }
 933                 else
 934                 {
 935                     System.out.println("要修改的ID不存在!");
 936                 }
 937                 pt.close();
 938                 conn.close();
 939                 cp.close();
 940             } 
 941             catch (SQLException e)
 942             {
 943                 // TODO 自动生成的 catch 块
 944                 e.printStackTrace();
 945             }
 946             
 947     }
 948     public void modifyAddress(int id,String address)                     //修改指定记录地址信息
 949     {
 950         ComboPooledDataSource cp = new ComboPooledDataSource("helloc3p0") ;
 951         
 952         Connection conn = null ;
 953         
 954             try {
 955                 conn = cp.getConnection();
 956                 
 957                 String sql = "update Person set address=? where id=?" ;
 958                                 
 959                 
 960                 PreparedStatement pt = conn.prepareStatement(sql) ;
 961                 
 962                 pt.setString(1, address);
 963                 pt.setInt(2, id);
 964                 
 965                 int rs = pt.executeUpdate() ;
 966                 
 967                 if(rs==1)
 968                 {
 969                     System.out.println("修改成功,请继续操作!"); 
 970                 }
 971                 else
 972                 {
 973                     System.out.println("要修改的ID不存在!");
 974                 }
 975                 pt.close();
 976                 conn.close();
 977                 cp.close();
 978             } 
 979             catch (SQLException e)
 980             {
 981                 // TODO 自动生成的 catch 块
 982                 e.printStackTrace();
 983             }
 984             
 985     }
 986     public void delete(int id)                         //删除指定用户信息
 987     {
 988         ComboPooledDataSource cp = new ComboPooledDataSource("helloc3p0") ;
 989         
 990         Connection conn = null ;
 991         
 992             try {
 993                 conn = cp.getConnection();
 994                 
 995                 String sql = "delete person where id = ? " ;
 996                 
 997                 PreparedStatement pt = conn.prepareStatement(sql) ;
 998                 
 999                 pt.setInt(1, id);
1000                 
1001                 int rs = pt.executeUpdate() ;
1002                 
1003                 if(rs==1)
1004                 {
1005                     System.out.println("删除成功,请继续操作!"); 
1006                 }
1007                 else
1008                 {
1009                     System.out.println("要删除的ID不存在!");
1010                 }
1011                 pt.close();
1012                 conn.close();
1013                 cp.close();
1014                 
1015             } catch (SQLException e) {
1016                 // TODO 自动生成的 catch 块
1017                 e.printStackTrace();
1018             }
1019     }
1020     public void deleteAll()                     //删除全部用户信息
1021     {
1022         ComboPooledDataSource cp = new ComboPooledDataSource("helloc3p0") ;
1023         
1024         Connection conn = null ;
1025         
1026             try {
1027                 conn = cp.getConnection();
1028                 
1029                 String sql = "truncate table person " ;
1030                 
1031                 PreparedStatement pt = conn.prepareStatement(sql) ;
1032                 
1033                 int rs = pt.executeUpdate() ;
1034                 
1035                 System.out.println("电话本内容已清空,请继续操作!"); 
1036                 
1037                 pt.close();
1038                 conn.close();
1039                 cp.close();
1040                 
1041             } catch (SQLException e) {
1042                 // TODO 自动生成的 catch 块
1043                 e.printStackTrace();
1044             }
1045     }
1046     public List<Person> orderName()                 //按用户姓名排序信息
1047     {
1048         list = new ArrayList<>() ;
1049         
1050         ComboPooledDataSource cp = new ComboPooledDataSource("helloc3p0") ;
1051         
1052         Connection conn = null ;
1053         
1054             try {
1055                 conn = cp.getConnection();
1056                 
1057                 String sql = "select * from person order by name " ;
1058                 
1059                 PreparedStatement pt = conn.prepareStatement(sql) ;
1060                 
1061                 ResultSet rt = pt.executeQuery() ;
1062                 
1063                 while(rt.next())
1064                 {
1065                     Person p = new Person() ;
1066                     
1067                     p.setId(rt.getInt("id")); 
1068                     p.setName(rt.getString("name"));
1069                     p.setAge(rt.getString("age"));
1070                     p.setSex(rt.getString("sex"));
1071                     p.setTelNum(rt.getString("telnum"));
1072                     p.setAddress(rt.getString("address"));
1073                         
1074                     list.add(p) ;
1075                 }
1076                 rt.close();
1077                 pt.close();
1078                 conn.close();
1079                 cp.close();
1080                 
1081             } catch (SQLException e) {
1082                 // TODO 自动生成的 catch 块
1083                 e.printStackTrace();
1084             }
1085             return list;
1086     }
1087     public List<Person> orderAge()                 //按用户年龄排序信息
1088     {
1089         list = new ArrayList<>() ;
1090         
1091         ComboPooledDataSource cp = new ComboPooledDataSource("helloc3p0") ;
1092         
1093         Connection conn = null ;
1094         
1095             try {
1096                 conn = cp.getConnection();
1097                 
1098                 String sql = "select * from person order by age " ;
1099                 
1100                 PreparedStatement pt = conn.prepareStatement(sql) ;
1101                 
1102                 ResultSet rt = pt.executeQuery() ;
1103                 
1104                 while(rt.next())
1105                 {
1106                     Person p = new Person() ;
1107                     
1108                     p.setId(rt.getInt("id")); 
1109                     p.setName(rt.getString("name"));
1110                     p.setAge(rt.getString("age"));
1111                     p.setSex(rt.getString("sex"));
1112                     p.setTelNum(rt.getString("telnum"));
1113                     p.setAddress(rt.getString("address"));
1114                         
1115                     list.add(p) ;
1116                 }
1117                 rt.close();
1118                 pt.close();
1119                 conn.close();
1120                 cp.close();
1121                 
1122             } catch (SQLException e) {
1123                 // TODO 自动生成的 catch 块
1124                 e.printStackTrace();
1125             }
1126             return list;
1127     }
1128     
1129     
1130     public List<Person> orderSex()                     //按用户性别排序信息
1131     {
1132         list = new ArrayList<>() ;
1133         
1134         ComboPooledDataSource cp = new ComboPooledDataSource("helloc3p0") ;
1135         
1136         Connection conn = null ;
1137         
1138             try {
1139                 conn = cp.getConnection();
1140                 
1141                 String sql = "select * from person order by sex " ;
1142                 
1143                 PreparedStatement pt = conn.prepareStatement(sql) ;
1144                 
1145                 ResultSet rt = pt.executeQuery() ;
1146                 
1147                 while(rt.next())
1148                 {
1149                     Person p = new Person() ;
1150                     
1151                     p.setId(rt.getInt("id")); 
1152                     p.setName(rt.getString("name"));
1153                     p.setAge(rt.getString("age"));
1154                     p.setSex(rt.getString("sex"));
1155                     p.setTelNum(rt.getString("telnum"));
1156                     p.setAddress(rt.getString("address"));
1157                         
1158                     list.add(p) ;
1159                 }
1160                 rt.close();
1161                 pt.close();
1162                 conn.close();
1163                 cp.close();
1164                 
1165             } catch (SQLException e) {
1166                 // TODO 自动生成的 catch 块
1167                 e.printStackTrace();
1168             }
1169             return list;
1170     }
1171     
1172 }

 

 pack-age.java

/**
 * 
 */
/**
 * @author Administrator
 *
 */
package sql;

  Person,java

 1 package com.yunruo.test;
 2 
 3 /**
 4  * 这是一个用户信息的实体类
 5  * 该类有用户ID、姓名、年龄、性别、电话、地址成员属性
 6  * 包含无参和有参构造方法
 7  * 包含  toString() 方法
 8  * 包含  setting 、getting  
 9  * @author Administrator
10  *
11  */
12 
13 
14 public class Person {
15 
16     //属性
17         private int id;              //用户ID 属性
18         private String name;             //用户姓名属性
19         private String age;             //用户年龄属性
20         private String sex;             //用户性别属性
21         private String telNum;                 //用户电话号码属性
22         private String address;                 //用户地址属性
23         
24         public Person()             //无参构造
25         {
26             super();
27         }
28         
29         Person(String name, String age, String sex, String telNum, String address) //有参数构造
30         {
31             this.name = name ;
32             this.age = age ;
33             this.sex = sex ;
34             this.telNum = telNum ;
35             this.address = address ;
36         }
37 
38         public void setId(int id) {
39             this.id = id;
40         }
41 
42         public void setName(String name) {
43             this.name = name;
44         }
45 
46         public void setAge(String age) {
47             this.age = age;
48         }
49 
50         public void setSex(String sex) {
51             this.sex = sex;
52         }
53 
54         public void setTelNum(String telNum) {
55             this.telNum = telNum;
56         }
57 
58         public void setAddress(String address) {
59             this.address = address;
60         }
61 
62         public int getId() {
63             return id;
64         }
65 
66         public String getName() {
67             return name;
68         }
69 
70         public String getAge() {
71             return age;
72         }
73 
74         public String getSex() {
75             return sex;
76         }
77 
78         public String getTelNum() {
79             return telNum;
80         }
81 
82         public String getAddress() {
83             return address;
84         }
85 
86         @Override
87         public String toString() {
88             return "Person [id=" + id + ", name=" + name + ", age=" + age + ", sex=" + sex + ", telNum=" + telNum
89                     + ", address=" + address + "]";
90         }
91         
92     
93 }

TelNoteRegex.java

package com.yunruo.test;

import java.util.Scanner;

/**
 * 这是一个用户输入信息是否合法的验证类
 * 该类中没有成员属性
 * 该类主要实现:
 * 对菜单输入选项的验证
 * 对用户输入姓名的验证
 * 对用户输入年龄的验证
 * 对用户输入性别的验证
 * 对用户输入电话号码的验证
 * 对用户输入地址的验证
 * @author Administrator
 *
 */


public class TelNoteRegex {
    
    public int menuRegex(int min, int max )            //对菜单输入选项的验证
    {
        Scanner sc = new Scanner(System.in) ;
        int  a= 0 ;
        try
        {
            a = sc.nextInt() ;
        }
        catch(Exception e)
        {
            return 0 ;
        }
        if(a<=max && a >= min)
        {
            return a ;
        }
        else
        {
            return -1 ;
        }
    }
    public String nameRegex( )             //对用户输入姓名的验证
    {
        String name ;
        
        while(true)
        {    
            System.out.println("请输入姓名: 字母或数字");
            Scanner sc = new Scanner(System.in) ;
            name = sc.nextLine() ;
            if(name.matches("^[A-Za-z0-9]+$"))   //正则表达式比较
            {
                System.out.println(name);
                
                break ;
            }
            else
            {
                System.out.println("姓名格式不对!");
            }
        }
        
        return name ;
    }
    public int ageRegex( )                 //对用户输入年龄的验证
    {
        int age ;
        while(true)
        {
            System.out.println("请输入年龄: 1-120整数");
            Scanner sc = new Scanner(System.in) ;
            try
            {
                age = sc.nextInt() ;
                if(age>=1 && age<=120)
                {
                    break ;
                }
                else
                {
                    System.out.println("请输入正确的年龄!"); ;
                }
            }
            catch (Exception e)
            {
                System.out.println("请输入整数!");
            }
        }
        return age ;
    }
    public String sexRegex ()                 //对用户输入性别的验证
    {
        String sex ;
        
        while(true)
        {    
            System.out.println("请输入性别: 男用M或m,女用W或w");
            Scanner sc = new Scanner(System.in) ;
            sex = sc.nextLine() ;
            if(sex.equals("M")||sex.equals("m")||sex.equals("W")||sex.equals("w"))   
            {
                System.out.println(sex);
                
                break ;
            }
            else
            {
                System.out.println("性别格式不对!");
            }
        }
        
        return sex ;
    }
    public String telNumRegex ()             //对用户输入电话号码的验证
    {
        String telNum ;
        
        while(true)
        {    
            System.out.println("请输入号码: 7-11位数字");
            Scanner sc = new Scanner(System.in) ;
            telNum = sc.nextLine() ;
            if(telNum.matches("[0-9]{7,11}"))
            {
                System.out.println(telNum);
                
                break ;
            }
            else
            {
                System.out.println("号码格式不对!");
            }
        }
        
        return telNum ;
        
    }
    public String addressRegex ()             //对用户输入地址的验证
    {
        String address ;
        
        while(true)
        {    
            System.out.println("请输入地址: 字母或数字");
            Scanner sc = new Scanner(System.in) ;
            address = sc.nextLine() ;
            if(address.matches("^[A-Za-z0-9]+$"))   //正则表达式比较
            {
                System.out.println(address);
                
                break ;
            }
            else
            {
                System.out.println("地址格式不对!");
            }
        }
        
        return address ;
    }

}

 

1        项目描述

该项目是用于日常生活中记录联系人信息的一款小工具。

实现了对联系人的姓名、年龄、性别、电话号码、住址的添加及修改、查找、删除、排序等功能。该项目是以windows控制台为运行平台,所有的操作都应在控制台上进行。

1.1     编写目的

1.       该项目编写的主要目的使学员对以往所学过的知识点做一个统一的复习,将平时所学的内容综合到一起并运用到实际代码编写中。

2.       该项目能够充分的体现出一些简单的业务流程处理,能够使学员掌握基本的业务流程控制。

1.2     实训范围

Java基础部分

2项目流程图

2.1业务流程结构图

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

                         

 

 

 

 

   

 

 

 

 

 

 

2.2基本操作流程图

2.2.1当运行主程序后可在控制台显示主菜单,用户可选择菜单中的选项进行相应的操作如用户输入的菜单选项超出当前菜单所规定的范围外,程序不予以执行,并返回当前菜单,用户需要重新输入。见(图表1)

 

 

2.2.2用户选折1 可进入添加记录的下级子菜单见(图表2)

 

 

 

 

2.2.3当进入下级子菜单后,用户可根据提示进行用户的添加见(图表3)

 

2.2.4在添加新联系人时应对所添加的选项进行验证,如果有输入错误应提示见(图表4)

2.2.5添加完毕后可查看电话薄内的全部记录见(图表5)

 

2.2.6选择返回选项时,可返回上级主菜单见(图表6)

2.2.7选择2进入查找记录子菜单见(图表7)

 

 

2.2.8用户可根据具体内容进行相关查询见(图表8)

 

 

 

2.2.9选择3进入修改记录子菜单见(图表9)

 

2.2.10通过查看全记录,找到要修改联系的ID号对联系人的内容进行相应的修改见(图表1011)

 

 

 

2.2.11选择4进入删除记录子菜单见(图表12)

2.2.12删除共分为删除指定记录和删除全部两种操作。删除指定记录时需要输入被删除

人的ID号。删除成功后可继续操作见(图表1314)

 

2.2.13删除全部用户。选择该选项可将电话薄清空见(图表15)

2.2.14用户可选择不同的选项对电话薄内的信息进行任意排序见(图表16171819)

按姓名排序结果

按年龄排序结果

按性别排序结果

 

2.3基本设计流程图

 
 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2.4类设计流程图

 
 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

3类名,方法名及变量名的定义

要遵循下列设计要求进行代码编写,仅允许细微调整。

3.1类名:

App  对应  Application(程序入口函数)

Menu 对应  Menu      (菜单类)

Operate 对应  Operate    (业务处理类)

Person 对应  Person (实体类)

 

3.2方法名:

App类中方法(无成员变量):

main() 程序入口函数

start() 主菜单控制

 

Operate类中方法及成员变量

private List<Person>list 集合

 

addLogic() 用户添加信息业务逻辑控制

searchLogic() 用户查询信息业务逻辑控制

modifyLogicLogic() 修改信息业务逻辑控制

deleteLogic() 删除信息业务逻辑控制

orderLogic() 排序信息业务逻辑控制

addOperation () 添加新用户信息

showAll() 查询全部用户信息

searchByName() 按姓名查询用户信息

searchByAge() 按年龄查询用户信息

searchBySex() 按性别查询用户信息

searchByTelNum() 按电话号码查询用户信息

searchByAdd() 按地址查询用户信息

modify() 修改指定记录信息

delete() 删除指定用户信息

deleteAll() 删除全部用户信息

orderName() 按用户姓名排序信息

orderAge() 按用户年龄排序信息

orderSex() 按用户性别排序信息

 

TelNoteRegex类中方法(无成员变量)

menuRegex (int min, int max ) 对菜单输入选项的验证

nameRegex ( ) 对用户输入姓名的验证

ageRegex ( ) 对用户输入年龄的验证

sexRegex ( ) 对用户输入性别的验证

telNumRegex ( ) 对用户输入电话号码的验证

addressRegex ( ) 对用户输入地址的验证

 

Menu类中的方法(无成员变量)

mainMenu() 主菜单

addMenu () 添加用户菜单

searchMenu () 查找用户菜单

modifyMenu () 修改用户信息主菜单

subModifyMenu () 修改用户信息子菜单

deleteMenu () 删除用户信息菜单

orderMenu () 排序用户信息菜单

 

Person类中的方法及成员变量

privateintid; 用户ID 属性

private String name; 用户姓名属性

private String age; 用户年龄属性

private String sex; 用户性别属性

private String telNum; 用户电话号码属性

private String address; 用户地址属性

Person() 无参数构造方法

Person(String name, String age, String sex, String telNum, String address) 有参数构造方法

getName() 读取用户名

setName(String name) 设置用户名

getAge() 读取用户年龄

setAge(String age) 设置用户年龄

getSex() 读取用户性别

setSex(String sex) 设置用户性别

getTelNum() 读取用户电话号码

setTelNum (String telNum) 设置用户电话号码

getAddress() 读取用户地址

setAddress(String address) 设置用户地址

getID () 读取用户ID

setID (int ID) 设置用户ID

toString() 连接字符串方法

 

4.数据结构

id

ID

name

姓名

age

年龄

sex

性别

telNum

电话号码

address

住址

Person类数据结构

 

英文名称                                中文名称

 

6 运行环境

JDK版本为1.5以上,数据库为Oracle11g以上

操作系统控制台或Eclipse开发工具

7 要求

该项目应个人独立完成,代码编写期间不得抄袭代码。

时间需求:3

进度要求:

第一天要求能够通过主菜单对各级子菜单进行控制,并实现添加记录。

第二天要求能够实现查找记录,删除记录二个模块。

第三天要求能够实现修改记录,排序记录,以及退出系统功能。

 

 

 

posted @ 2016-10-25 16:35  蕤霁雲若  阅读(409)  评论(0编辑  收藏  举报