pause update )管理员: tenha permissões para todos os módulos de gerenciamento de informações教师: Tenha todas as permissões no módulo de gerenciamento de informações do aluno, mas apenas as permissões no módulo de gerenciamento de informações do professor são consultar e modificar informações pessoais.学生: só tem permissão para consultar e modificar informações pessoaisO código de exemplo principal para definir permissões é o seguinte (nenhuma estrutura de segurança é usada):
// 用户权限设置: 如果当前用户类型为教师,则将其权限设置为仅能查询个人信息
if ( userType == 3 ) {
TeacherInfo currentTeacherInfo = ( TeacherInfo ) request . getSession (). getAttribute ( "userInfo" );
teacherInfo . setId ( currentTeacherInfo . getId ());
}
// 获取分页后的教师列表信息
List < TeacherInfo > teacherList = teacherDao . getTeacherList ( teacherInfo , new Paging ( currentPage , pageSize ));| ferramenta | Versão ou descrição |
|---|---|
OS | Windows 10 |
JDK | 11.0.2 |
IDE | Eclipse EE 2018-12 (4.10.0) |
Server | Apache Tomcat v9.0 |
MySQL | 8.0.11 |
A versão do banco de dados deste projeto é
8.0.11. Observe que os alunos com a versão5.0.0+podem criar esse banco de dados copiando a estrutura da tabela um por um.
│
└─student_information_management_system
│
│
├─database
│ SMS.sql
│
├─src
│ │ databaseConfig.properties
│ │
│ └─pers
│ └─huangyuhui
│ └─sms
│ ├─dao
│ │ AdminDao.java
│ │ BasicDao.java
│ │ ClazzDao.java
│ │ StudentDao.java
│ │ TeacherDao.java
│ │
│ ├─filter
│ │ LoginFilter.java
│ │
│ ├─model
│ │ AdminInfo.java
│ │ ClazzInfo.java
│ │ Paging.java
│ │ StudentInfo.java
│ │ TeacherInfo.java
│ │
│ ├─servlet
│ │ ClazzManagementServlet.java
│ │ LoginServlet.java
│ │ OutVerifiCodeServlet.java
│ │ PersonalManagementServlet.java
│ │ PhotoServlet.java
│ │ StuManagementServlet.java
│ │ SysMainInterfaceServlet.java
│ │ TeacherManagementServlet.java
│ │
│ └─util
│ CreateVerifiCodeImage.java
│ DbConfig.java
│ DbUtil.java
│ StringUtil.java
│
└─WebContent
│ index.jsp
│ refresh.jsp
│
├─easyui
│ │
│ ├─css
│ │
│ ├─js
│ │
│ └─themes
│
│
├─h-ui
│ │
│ ├─css
│ │
│ ├─images
│ │
│ ├─js
│ │
│ ├─lib
│ │
│ └─skin
│
│
├─META-INF
│ MANIFEST.MF
│
├─resource
│ └─image
│ default_portrait.jpg
│
└─WEB-INF
│ web.xml
│
├─lib
│ commons-beanutils-1.8.3.jar
│ commons-collections-3.2.1.jar
│ commons-fileupload-1.2.1.jar
│ commons-io-1.4.jar
│ commons-lang-2.5.jar
│ commons-logging-1.1.1.jar
│ ezmorph-1.0.6.jar
│ FilelLoad.jar
│ json-lib-2.3-jdk15.jar
│ jsonplugin-0.34.jar
│ jstl.jar
│ mysql-connector-java-8.0.11.jar
│ standard.jar
│
└─view
│ login.jsp
│
├─class
│ classList.jsp
│
├─error
│ 404.jsp
│ 500.jsp
│
├─management
│ personalView.jsp
│
├─student
│ studentList.jsp
│
├─system
│ main.jsp
│ welcome.jsp
│
└─teacher
teacherList.jsp
SMS.sql
databaseConfig.properties
H-ui h-ui/
EasyUI easyui/
Olhando para trás e lendo cuidadosamente e pensando sobre o código -fonte do projeto, fiquei surpreso ao descobrir que o código no projeto tem muitas áreas que precisam ser otimizadas. Afinal, este é o meu primeiro projeto Java web , então me perdoe ~ Para permitir que você escreva um código mais bonito e projetos mais extensíveis, darei a você um projeto muito adequado para padrões de design para iniciantes para os alunos aprenderem e consultem: https://github.com/yubuntu0109/design-patterns--j-java
Para projetos mais interessantes e notas de estudo detalhadas, vá ao meu blog pessoal (づ ̄3 ̄) づ╭~: https://yubuntu0109.github.io/
Notas de aprendizagem são todas de código aberto: https://github.com/yubuntu0109/yubuntu0109.github.io
Aguardo sua contribuição, se precisar de ajuda, entre em contato comigo ~ QQ: 3083968068