學生信息管理系統

學生信息管理系統

包含

  1. 年級信息管理增刪改查及導出
  2. 課程信息管理增刪改查及導出
  3. 班級信息管理增刪改查及導出
  4. 教師信息管理增刪改查及導出
  5. 學生信息管理增刪改查及導出
  6. 班級可以選擇課程和老師
  7. 老師也可以選擇所教的班級和課程
  8. 代碼簡潔易讀

1.軟件安裝

  1. 新建數據庫
  2. 導入studentinfo-init.sql
  3. 配置jdbc.properties
  4. 啓動tomcat

2.項目特點**

  1. 純Spring MVC技術棧,無DTO,沒有雞肋的interface,impl。
  2. 擴展SpringSecurity權限控制,精細到任意請求的權限控制。
  3. 資源無需手動錄入數據庫,根據註解自動生成菜單和權限列表,只需選擇即可。

演示效果圖: 

部分代碼:

   @QClass(name = "年級")
   @Entity
   @Table(name = "b_grade")
   public class Grade extends BaseEntity {
       @QField(name = "名稱", actions = {Action.edit, Action.show, Action.query}, queryType = QFieldQueryType.like, nullable = false)
       private String name; //名稱
   
       @OneToMany(mappedBy = "grade")
       @JsonBackReference
       private Set<Clazz> clazzes; //班級
   
       @OneToMany(mappedBy = "grade")
       @JsonBackReference
       private Set<Course> courses; //課程
   }
   
   @QClass(name = "課程")
   @Entity
   @Table(name = "b_course")
   public class Course extends BaseEntity {
       @QField(name = "名稱", actions = {Action.edit, Action.show, Action.query}, queryType = QFieldQueryType.like)
       private String name; //名稱
   
       @ManyToOne
       @JoinColumn(name = "grade_id")
       @JsonManagedReference
       private Grade grade; //所屬年級
   
       @ManyToMany(cascade = {CascadeType.REMOVE}, mappedBy = "courses")
       @JsonBackReference
       private Set<Clazz> clazzes;
   
       @ManyToMany(cascade = {CascadeType.REMOVE})
       @JoinTable(name = "b_course_teacher", joinColumns = {@JoinColumn(name = "courses_id")}, inverseJoinColumns = {@JoinColumn(name = "teachers_id")})
       @JsonManagedReference
       private Set<Teacher> teachers;
   
       @ManyToMany(cascade = {CascadeType.REMOVE})
       @JoinTable(name = "b_course_student")
       @JsonManagedReference
       private Set<Student> students; 
   }

聯繫方式:QQ 2644328654(月牙兒),支持定製開發

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章