首页下载资源后端DVD管理系统 jdbj+反射

ZIPDVD管理系统 jdbj+反射

weixin_517229181.85MB需要积分:1

资源文件列表:

dvd.zip 大约有54个文件
  1. dvd/.idea/
  2. dvd/.idea/$PRODUCT_WORKSPACE_FILE$ 488B
  3. dvd/.idea/libraries/
  4. dvd/.idea/libraries/mysql_connector_java_8_0_11.xml 252B
  5. dvd/.idea/misc.xml 276B
  6. dvd/.idea/modules.xml 253B
  7. dvd/.idea/workspace.xml 3.72KB
  8. dvd/dvd.iml 519B
  9. dvd/lib/
  10. dvd/lib/mysql-connector-java-8.0.11.jar 1.94MB
  11. dvd/out/
  12. dvd/out/production/
  13. dvd/out/production/dvd/
  14. dvd/out/production/dvd/com/
  15. dvd/out/production/dvd/com/lc/
  16. dvd/out/production/dvd/com/lc/controller/
  17. dvd/out/production/dvd/com/lc/controller/DVDController.class 7.31KB
  18. dvd/out/production/dvd/com/lc/dao/
  19. dvd/out/production/dvd/com/lc/dao/daoImpl/
  20. dvd/out/production/dvd/com/lc/dao/daoImpl/DVDDaoImpl.class 2.17KB
  21. dvd/out/production/dvd/com/lc/dao/DVDDao.class 376B
  22. dvd/out/production/dvd/com/lc/entity/
  23. dvd/out/production/dvd/com/lc/entity/DVD.class 2.18KB
  24. dvd/out/production/dvd/com/lc/service/
  25. dvd/out/production/dvd/com/lc/service/DVDService.class 380B
  26. dvd/out/production/dvd/com/lc/service/serviceImpl/
  27. dvd/out/production/dvd/com/lc/service/serviceImpl/DVDServiceImpl.class 1.37KB
  28. dvd/out/production/dvd/com/lc/test/
  29. dvd/out/production/dvd/com/lc/test/Test.class 515B
  30. dvd/out/production/dvd/com/lc/util/
  31. dvd/out/production/dvd/com/lc/util/DBHelper.class 4.63KB
  32. dvd/out/production/dvd/config/
  33. dvd/out/production/dvd/config/jdbc.properties 235B
  34. dvd/src/
  35. dvd/src/com/
  36. dvd/src/com/lc/
  37. dvd/src/com/lc/controller/
  38. dvd/src/com/lc/controller/DVDController.java 9.51KB
  39. dvd/src/com/lc/dao/
  40. dvd/src/com/lc/dao/daoImpl/
  41. dvd/src/com/lc/dao/daoImpl/DVDDaoImpl.java 1.49KB
  42. dvd/src/com/lc/dao/DVDDao.java 297B
  43. dvd/src/com/lc/entity/
  44. dvd/src/com/lc/entity/DVD.java 1.92KB
  45. dvd/src/com/lc/service/
  46. dvd/src/com/lc/service/DVDService.java 313B
  47. dvd/src/com/lc/service/serviceImpl/
  48. dvd/src/com/lc/service/serviceImpl/DVDServiceImpl.java 888B
  49. dvd/src/com/lc/test/
  50. dvd/src/com/lc/test/Test.java 249B
  51. dvd/src/com/lc/util/
  52. dvd/src/com/lc/util/DBHelper.java 3.5KB
  53. dvd/src/config/
  54. dvd/src/config/jdbc.properties 235B

资源介绍:

DVD管理系统 jdbj+反射
package com.lc.controller; import com.lc.entity.DVD; import com.lc.service.DVDService; import com.lc.service.serviceImpl.DVDServiceImpl; import javax.xml.crypto.Data; import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Method; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Date; import java.util.List; import java.util.Scanner; public class DVDController { DVDService service = new DVDServiceImpl(); Scanner sc = new Scanner(System.in); /** * 开始菜单 菜单加载,显示可选功能 */ public void startMenu() { System.out.println("欢迎使用迷你DVD管理系统"); System.out.println("----------------------"); System.out.println("----add.新增DVD-------"); System.out.println("----see.查看DVD-------"); System.out.println("----del.删除DVD-------"); System.out.println("----lend.借出DVD------"); System.out.println("----ret.归还DVD-------"); System.out.println("----exit.退 出------"); System.out.println("----------------------"); System.out.println("请选择:"); String choose = sc.next(); //反射获取方法名 try { Class cla = DVDController.class; Method m = cla.getMethod(choose); m.invoke(this); } catch (NoSuchMethodException e) {//方法找不到错误,如果用户输入不存在的方法 则重新输入 System.out.println("没有此功能,请重新输入"); startMenu(); } catch (IllegalAccessException e) { e.printStackTrace(); } catch (InvocationTargetException e) { e.printStackTrace(); } } /** * 新增DVD的方法 输入DVD的名称和日租金可以新增一条DVD对象 */ public void add() { System.out.println("--->新增DVD"); DVD dvd = new DVD();//创建新DVD对象 System.out.println(); System.out.print("请输入新增的DVD名称:"); dvd.setName(sc.next()); System.out.print("请输入DVD的日租金:"); dvd.setMoney(sc.nextDouble()); if (service.add(dvd)) { System.out.println("添加DVD《" + dvd.getName() + "》成功!"); } else { System.out.println("添加失败!"); } returnMenu(); } /** * 查看全部DVD的方法 */ public void see() { System.out.println("--->查看DVD"); System.out.println(); System.out.println("序号\t状态\t名称\t\t借出日期"); ArrayList list = service.see(); for (int i = 0; i < list.size(); i++) { System.out.println((i + 1) + "\t" + list.get(i).toString());//前半段打印序号 从1开始 后半段打印DVD信息 } returnMenu(); } /** * 删除DVD的方法 输入要删除的DVD名称可以删除该DVD */ public void del() { System.out.println("--->删除DVD"); System.out.println(); System.out.print("请输入要删除的DVD名称:"); DVD dvd = service.selectForName(sc.next());//根据输入的DVD名称查找到相应的一条DVD对象 if (dvd == null) {//如果找不到,说明不存在该DVD,无法删除 System.out.println("不存在该DVD,无法删除,请重新输入"); del(); } else { if ("已借出".equals(dvd.getState())) {//判断状态,如果是已借出的状态,也不可删除 System.out.println("该DVD已借出,不可删除"); returnMenu(); } else { if (service.delete(dvd)) {//条件都满足则删除成功 System.out.println("删除成功!"); returnMenu(); } else { System.out.println("删除失败"); returnMenu(); } } } } /** * 借出DVD的方法 输入要借出的DVD名称可以借出DVD */ public void lend() { System.out.println("--->借出DVD"); System.out.println(); System.out.print("请输入要借出的DVD名称:"); String name = sc.next(); DVD dvd = service.selectForName(name);//根据输入的DVD名称查找到相应的一条DVD对象 if (dvd == null) {//如果找不到,说明不存在该DVD,无法借出 System.out.println("不存在该DVD,请重新输入"); returnMenu(); } else { if ("已借出".equals(dvd.getState())) {//判断状态,如果是已借出的状态,不可再次借出 System.out.println("该DVD已借出,不可再次借出"); returnMenu(); } else { //判断输入的日期格式是否正确 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); while (true) { System.out.print("输入借出时间(yyyy-MM-dd):"); String lendDay = sc.next(); dvd.setLendDay(lendDay); try { sdf.setLenient(false); // 不允许宽松的日期格式 sdf.parse(lendDay); // 尝试解析日期 break; // 日期格式正确,退出循环 } catch (ParseException e) { System.out.println("输入的日期格式不正确,请重新输入。"); } } if (service.lend(dvd)) {//均满足则成功借出 System.out.println("借出《" + dvd.getName() + "》成功!"); returnMenu(); } else { System.out.println("借出失败"); returnMenu(); } } } } /** * 归还方法 * @throws ParseException 抛出解析错误异常 */ public void ret() throws ParseException { System.out.println("--->归还DVD"); System.out.println(); System.out.print("请输入要归还的DVD名称:"); String name = sc.next(); DVD dvd = service.selectForName(name); if (dvd.getId() != 0) {//如果输入的名称不正确,则直接返回,不用输入归还日期,节省时间 if ("可借".equals(dvd.getState())) {//判断状态,如果是未被借出状态则无法归还 System.out.println("该DVD未被借出,不可归还"); returnMenu(); } else { //判断日期格式是否正确 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); String returnDay; while (true) { System.out.print("输入归还时间(yyyy-MM-dd):"); returnDay = sc.next(); try { sdf.setLenient(false); // 不允许宽松的日期格式 sdf.parse(returnDay); // 尝试解析日期 break; // 日期格式正确,退出循环 } catch (ParseException e) { System.out.println("输入的日期格式不正确,请重新输入。"); } } if (service.returnDVD(dvd)) {//均满足则归还成功 System.out.println("归还《" + dvd.getName() + "》成功!"); System.out.println("借出日期为:" + dvd.getLendDay()); System.out.println("归还日期为:" + returnDay); System.out.println(rent(dvd, returnDay));//调用计算租金方法,计算并打印输出租
100+评论
captcha