标签:String 管理系统 System 课程表 new Lesson public name
课程表管理系统
采用Service-Dao来开发
- 包结构图
-
domain类包括Lesson
public class Lesson { private String LensonName; private String LessonLoc; private String LessonTime; public Lesson(){ } public Lesson(String LN,String LL,String LT){ this.LensonName = LN; this.LessonLoc = LL; this.LessonTime = LT; } public String getLensonName() { return LensonName; } public void setLensonName(String lensonName) { LensonName = lensonName; } public String getLessonLoc() { return LessonLoc; } public void setLessonLoc(String lessonLoc) { LessonLoc = lessonLoc; } public String getLessonTime() { return LessonTime; } public void setLessonTime(String lessonTime) { LessonTime = lessonTime; } @Override public String toString(){ return LensonName+","+LessonLoc+","+LessonTime; } }
-
service 包括LessonService和LessonServiceImpl
public interface LessonService { public Lesson findLessonByName(String name); public boolean addLesson(Lesson l); public boolean delLessonByName(String name); public boolean updateLesson(Lesson pre_lesson,Lesson l); public void showAllLesson(); public void update(); } public class LessonServiceImpl implements LessonService{ private LessonDao ld; public LessonServiceImpl(){ ld = new LessonDaoImpl(); } @Override public Lesson findLessonByName(String name) { return ld.findLessonByName(name); } @Override public boolean addLesson(Lesson l) { return ld.addLesson(l); } @Override public boolean delLessonByName(String name) { return ld.delLessonByName(name); } @Override public boolean updateLesson(Lesson pre_lesson, Lesson l) { return ld.updateLesson(pre_lesson, l); } @Override public void showAllLesson() { ld.showAllLesson(); } @Override public void update() { ld.update(); } }
-
Dao层
public interface LessonDao { public Lesson findLessonByName(String name); public boolean addLesson(Lesson l); public boolean delLessonByName(String name); public boolean updateLesson(Lesson pre_lesson,Lesson l); public void showAllLesson(); public void update(); } public class LessonDaoImpl implements LessonDao { private List<Lesson> ls; private File file; public LessonDaoImpl(){ ls = new ArrayList<Lesson>(); file = new File("lesson.txt"); init(); } private void init() { try{ BufferedReader br = new BufferedReader(new FileReader(file)); String tmp; while((tmp = br.readLine())!=null){ String[] s = tmp.split(","); ls.add(new Lesson(s[0], s[1], s[2])); } br.close(); }catch(Exception r){ r.printStackTrace(); } } @Override public Lesson findLessonByName(String name) { for(Lesson lesson: ls){ if(lesson.getLensonName().equals(name)) return lesson; } System.out.println("该节课不存在!"); return null; } @Override public boolean addLesson(Lesson l) { ls.add(l); System.out.println("添加成功!"); try{ BufferedWriter bw = new BufferedWriter(new FileWriter(file,true)); bw.write(l.toString()+"\n"); bw.close(); }catch(Exception e){ e.printStackTrace(); } return true; } @Override public boolean delLessonByName(String name) { for(int i = 0;i<ls.size();i++){ if(ls.get(i).getLensonName().equals(name)){ ls.remove(i); System.out.println("已删除!"); return true; } } System.out.println("未找到该用户!"); return false; } @Override public boolean updateLesson(Lesson pre_lesson, Lesson l) { Lesson tmp = findLessonByName(pre_lesson.getLensonName()); tmp.setLensonName(l.getLensonName()); tmp.setLessonLoc(l.getLessonLoc()); tmp.setLessonTime(l.getLessonTime()); System.out.println("删除成功!"); return true; } @Override public void showAllLesson() { FileUtil.ListSort(ls); for(Lesson l:ls){ System.out.println(l.toString()); } } @Override public void update() { try { file.delete(); file.createNewFile(); BufferedWriter bw = new BufferedWriter(new FileWriter(file,true)); for(int i = 0;i<ls.size();i++){ bw.write(ls.get(i).toString()+"\n"); } bw.close(); } catch (IOException e) { e.printStackTrace(); } } }
-
Fileutil类
public class FileUtil { public static void ListSort(List<Lesson> list) { Collections.sort(list, new Comparator<Lesson>() { @Override public int compare(Lesson o1, Lesson o2) { SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd"); try { Date dt1 = format.parse(o1.getLessonTime()); Date dt2 = format.parse(o2.getLessonTime()); if (dt1.getTime() > dt2.getTime()) { return 1; } else if (dt1.getTime() < dt2.getTime()) { return -1; } else { return 0; } } catch (Exception e) { e.printStackTrace(); } return 0; } }); } }
-
Test类
public class MainTest { public static void main(String[] args) { LessonService ls = new LessonServiceImpl(); int op = -1; Scanner s = new Scanner(System.in); while(op!=0){ System.out.println("课程表系统"); System.out.println("---------------------------------------"); System.out.println("1.添加新课程"); System.out.println("2.显示所有课程"); System.out.println("3.根据名称删除课程"); System.out.println("4.更新课程"); System.out.println("0.结束!"); System.out.println("---------------------------------------"); System.out.println("请选择序号:"); op = s.nextInt(); if(op==1){ System.out.println("请输入课程名:"); String name = s.next(); System.out.println("请输入教室:"); String Loc = s.next(); System.out.println("请输入时间 yyyy-mm-dd:"); String time = s.next(); Lesson tmp = new Lesson(name, Loc, time); ls.addLesson(tmp); }else if(op == 2){ ls.showAllLesson(); }else if(op == 3){ System.out.println("请输入要删除的课程名:"); String name = s.next(); ls.delLessonByName(name); }else if(op == 4){ System.out.println("请输入要修改的课程名:"); String pre_name = s.next(); Lesson pre_lesson = ls.findLessonByName(pre_name); System.out.println("请输入新的名称:"); String new_name = s.next(); System.out.println("请输入新的地点:"); String new_loc = s.next(); System.out.println("请输入新的时间:"); String new_time = s.next(); Lesson new_lesson = new Lesson(new_name, new_loc, new_time); ls.updateLesson(pre_lesson, new_lesson); }else if(op == 0){ ls.update(); } } s.close(); } }
标签:String,管理系统,System,课程表,new,Lesson,public,name 来源: https://www.cnblogs.com/lvgj/p/12588088.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。