學生信息管理系統
包含
- 年級信息管理增刪改查及導出
- 課程信息管理增刪改查及導出
- 班級信息管理增刪改查及導出
- 教師信息管理增刪改查及導出
- 學生信息管理增刪改查及導出
- 班級可以選擇課程和老師
- 老師也可以選擇所教的班級和課程
- 代碼簡潔易讀
1.軟件安裝
- 新建數據庫
- 導入studentinfo-init.sql
- 配置jdbc.properties
- 啓動tomcat
2.項目特點**
- 純Spring MVC技術棧,無DTO,沒有雞肋的interface,impl。
- 擴展SpringSecurity權限控制,精細到任意請求的權限控制。
- 資源無需手動錄入數據庫,根據註解自動生成菜單和權限列表,只需選擇即可。
演示效果圖:
部分代碼:
@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(月牙兒),支持定製開發