# register高校竞赛报名管理系统 一个基于Struts2+Herbernate+Spring的JavaWEB课程作业。
采用Web方式,由前台和后台管理两个部分组成。前台作为与用户直接交互的可视化界面,后台管理的维护工作主要由系统管理员进行,包括完成对数据的保护和修改。使之能提供以下基本功能:
(1).实现管理人员的登录界面以及拥有管理的功能。
(2).实现学生注册、登录、选择报名项目,修改报名信息,取消报名等功能。
(3).实现竞赛项目的增删改查管理等。
(4).实现比赛团队的注册登录。
## 需求分析
开发一个高校竞赛报名管理系统,采用 Web 方式,由前台和后台管理两个部分组成。前台作为与用户 直接交互的可视化界面,后台管理的维护工作主要由系统管理员进行,包括完成对数据的保护和修改。使之能提供以下基本功能:
实现管理人员的登录界面以及拥有管理的功能。
实现学生注册、登录、选择报名项目,修改报名信息,取消报名等功能。
实现竞赛项目的增删改查管理等。
实现比赛团队的注册登录。
扩展功能:(1)简单的权限处理 (2)报表打印功能(3)统计功能
**概要设计**
**数据结构**
逻辑结构分为
学生表(学号,姓名,密码,学院,email,状态,验证码,注册时间)
团队表(队名,登录密码,指导教师)
项目表(比赛项目名,介绍,类别)
管理员表(姓名,密码)
**模块划分**
整个报名管理系统分为三个模块,即学生模块,团队模块,管理员模块
三个角色分别登录然后完成各自的功能
**总体框架**
总体使用 SSH 框架,前台用 Struts2,数据处理使用 hibernate,Spring 的 IoC 和 AOP 用来处理逻辑问题
数据库设计:
ER 图
```c++
M n
M 1
N 1
```
数据库表结构:
学生表:
![](https://www.writebug.com/myres/static/uploads/2021/12/4/75a4c31322e5b5840ded8c462b617cfc.writebug)
团队表:
![](https://www.writebug.com/myres/static/uploads/2021/12/4/b870949e9cb0b7dff576a6c7df733474.writebug)
竞赛项目表:
![](https://www.writebug.com/myres/static/uploads/2021/12/4/f19a43888e3cea76d530224ea902ccbd.writebug)
管理员表:
![](https://www.writebug.com/myres/static/uploads/2021/12/4/d898b1f8c5ca3c75b1058798f9d46771.writebug)
学生-队伍表:
![](https://www.writebug.com/myres/static/uploads/2021/12/4/c59ce91503f7850a950caf9d4a5d7365.writebug)
学生-项目表:
![](https://www.writebug.com/myres/static/uploads/2021/12/4/f5ce0d852858f537daa8e17fd8ab3312.writebug)
详细设计
配置文件描述
Struts.xml:
配置国际化,权限拦截器,以及三个包结构分别是学生包,团队包,管理员包
分别处理其各自的业务。
```c++
ApplicationContext.xml:
```
实现 IoC 和 AOP 的配置,C3P0 的连接池配置,Javabean 的产生,主要是普通的 Javabean,action,service,dao 的产生。
事务处理,事务增强,配置切面,配置切入点,开启事务注解。
```c++
Jdbc.properties
```
配置数据库连接的各项数据
```c++
Message_en_US.properties
```
配置国际化内容
所使用的关键技术描述:
国际化
在 Struts.xml 中配置
```c++
<constant name="struts.custom.i18n.resources" value="message"/>
<constant name="struts.i18n.encoding" value="UTF-8" />
```
然后写配置文件,在 JSP 文件中添加相应的代码
数据校验、
在 StudentAction-validation.xml 中配置关于注册页面的数据校验
如下:
```c++
<validators>
<field name="student.name">
<field-validator type="requiredstring">
<param name="trim">true</param>
<message>姓名不能为空</message>
</field-validator>
<field-validator type="regex">
<param name="expression"><![CDATA[(\w{2,10})]]></param>
<message>姓名要在2-10位之间</message>
</field-validator>
</field>
```
拦截器
在各个模块中添加三种拦截器分别是学生的,团队的,管理员的,分别在各自的模块中实现,然后对其各自起作用。
```c++
IOC
```
在 applicationContext.xml 中配置,例如:
```c++
<bean id = "adminAction" class="cn.zyan.regist.action.AdminAction" scope = "prototype">
<!-- 手动注入service -->
<property name="adminService" ref="adminService"></property>
<property name="teamService" ref="teamService"></property>
</bean>
AOP
```
实现切面编程,在 applicationContext.xml 中配置,主要是对事务增强处理,配置切入点以及切面,然后切入程序,增强处理。
事务控制
为了保证事务的原子性等四个特性,使程序在出现异常或者其他断电等方面时进行处理,具体如下:
```c++
<!-- 配置事务管理 -->
<bean id="transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager">
<property name="sessionFactory" ref = "sessionFactory"></property>
</bean>
<!-- 配置事务的增强 -->
<tx:
advice id = "txAdvice" transaction-manager="transactionManager">
<tx:attributes>
<tx:
method name="find*" propagation="REQUIRED"/>
<tx:
method name="update*" propagation="REQUIRED"/>
</tx:
attributes>
</tx:
advice>
```
关联映射
使用 hibernate,对主要的数据等使用多对多,一对多等映射:
![](https://www.writebug.com/myres/static/uploads/2021/12/4/a0ded112dbedc6948ce25427359ada9b.writebug)
AJAX 异步校验
在注册时候,为了防止邮箱冲突,进行异步校验
邮箱邮件验证
注册后向邮箱中发送一个激活邮件,用户必须在两天之内点击链接激活账号
主要使用 javax.mail.Message 内容,使用 163 的邮箱
amchart 表格
通过在数据库中查找到的数据,封装成 JSON 格式的字符串,返回到 JSP 页面中
**调试分析**
在开发过程中,在关系文件的映射部分存在问题,最后经过一步一步的查找与排查,找到了问题 所在,然后修改配置文件的内容,问题得以解决;
AJAX 异步校验存在获取不到 request 的现象,然后通过在网上查询找到解决办法;
图表的生成需要准确的写入数据,格式要正确,在于认真才能解决;
的连接,因为电脑的原因时好时坏,出现异常,尚未解决;
出现了包重复与缺少等问题,查询许久,得以解决;
**测试结果**
![](https://www.writebug.com/myres/static/uploads/2021/12/4/05480060e896ae41b5aaa106037b919d.writebug)
图一管理员登陆主界面
![](https://www.writebug.com/myres/static/uploads/2021/12/4/26ecfcf4c49872bd1dfbf47b62d83729.writebug)
图二 管理员主界面
![](https://www.writebug.com/myres/static/uploads/2021/12/4/4eb1c40613902fcf2bb
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
开发一个高校竞赛报名管理系统,采用 Web 方式,由前台和后台管理两个部分组成。前台作为与用户 直接交互的可视化界面,后台管理的维护工作主要由系统管理员进行,包括完成对数据的保护和修改。使之能提供以下基本功能: 实现管理人员的登录界面以及拥有管理的功能。 实现学生注册、登录、选择报名项目,修改报名信息,取消报名等功能。 实现竞赛项目的增删改查管理等。 实现比赛团队的注册登录。 扩展功能:(1)简单的权限处理 (2)报表打印功能(3)统计功能
资源推荐
资源详情
资源评论
收起资源包目录
基于 Java+MySQL 实现(Web)高校竞赛报名管理系统【100011045】 (230个子文件)
AdminAction.class 9KB
StudentAction.class 8KB
TeamAction.class 7KB
ChartAction.class 6KB
StudentService.class 4KB
Student.class 3KB
TeamDaoImpl.class 3KB
SendEmail.class 3KB
AdminService.class 3KB
StudentDaoImpl.class 3KB
PageBean.class 3KB
ItemDaoImpl.class 3KB
Team.class 2KB
MD5Util.class 2KB
Item.class 2KB
AuthInterceptor.class 2KB
TeamService.class 2KB
StudentIct.class 2KB
TeamInc.class 2KB
Notice.class 1KB
AdminDao.class 1KB
Admin.class 982B
Authentication.class 837B
ItemDao.class 520B
TeamDao.class 520B
StudentDao.class 455B
ServiceException.class 454B
theme.css 12KB
datepicker.css 4KB
datepicker.css 4KB
admin.css 2KB
admin.css 2KB
WdatePicker.css 149B
Thumbs.db 6KB
Thumbs.db 5KB
Thumbs.db 3KB
课程大作业报告.doc 484KB
admin_p.gif 4KB
img.gif 2KB
img.gif 2KB
datePicker.gif 1KB
login_6.gif 898B
bt_login.gif 300B
menu_icon.gif 64B
menu.htm 2KB
menu.htm 2KB
menu.htm 2KB
My97DatePicker.htm 1KB
hibernate3.jar 2.31MB
com.springsource.org.aspectj.weaver-1.6.8.RELEASE.jar 1.57MB
freemarker-2.3.22.jar 1.24MB
spring-core-3.2.5.RELEASE.jar 850KB
spring-context-3.2.5.RELEASE.jar 845KB
mysql-connector-java-5.1.25-bin.jar 829KB
struts2-core-2.3.24.jar 812KB
xwork-core-2.3.24.jar 661KB
spring-web-3.2.5.RELEASE.jar 613KB
com.springsource.com.mchange.v2.c3p0-0.9.1.2.jar 603KB
javassist-3.11.0.GA.jar 600KB
spring-beans-3.2.5.RELEASE.jar 596KB
commons.collections_3.2.0.jar 568KB
spring-test-3.2.5.RELEASE.jar 447KB
antlr-2.7.7.jar 435KB
spring-jdbc-3.2.5.RELEASE.jar 396KB
com.springsource.org.apache.log4j-1.2.15.jar 387KB
spring-orm-3.2.5.RELEASE.jar 376KB
commons-lang3-3.2.jar 376KB
spring-aop-3.2.5.RELEASE.jar 328KB
dom4j-1.6.1.jar 307KB
org.springframework.transaction-sources-3.0.2.RELEASE.jar 263KB
spring-tx-3.2.5.RELEASE.jar 237KB
ognl-3.0.6.jar 223KB
spring-expression-3.2.5.RELEASE.jar 192KB
mailapi.jar 174KB
commons-io-2.2.jar 170KB
imap.jar 132KB
commons-fileupload-1.3.1.jar 67KB
commons-logging-1.1.3.jar 61KB
com.springsource.org.apache.commons.logging-1.1.1.jar 60KB
activation.jar 55KB
spring-aspects-3.2.5.RELEASE.jar 50KB
asm-3.3.jar 43KB
asm-commons-3.3.jar 37KB
slf4j-api-1.6.1.jar 25KB
smtp.jar 23KB
struts2-spring-plugin-2.3.20.jar 21KB
asm-tree-3.3.jar 21KB
jstl.jar 20KB
pop3.jar 20KB
jta-1.1.jar 11KB
slf4j-log4j12-1.7.5.jar 9KB
com.springsource.org.aopalliance-1.0.0.jar 5KB
AdminAction.java 7KB
StudentAction.java 6KB
TeamAction.java 6KB
ChartAction.java 4KB
StudentService.java 3KB
PageBean.java 3KB
Student.java 2KB
SendEmail.java 2KB
共 230 条
- 1
- 2
- 3
资源评论
- 拾玖1222023-07-03感谢大佬分享的资源给了我灵感,果断支持!感谢分享~
- 泪未眠2024-03-28感谢大佬分享的资源给了我灵感,果断支持!感谢分享~
- Jason_6312023-05-10这个资源总结的也太全面了吧,内容详实,对我帮助很大。
神仙别闹
- 粉丝: 2680
- 资源: 7667
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- STC15单片机串口2使用程序例子
- 读取日志的excel生成周报 用python3开发weekplan-master.zip
- python 读取excel数据导入dbimport-data-master.zip
- K折交叉验证BP神经网络,多输入多输出BP神经网络(代码完整,数据齐全)
- B07训练原图.zip
- python-对Excel数据处理做可视化分析.zip
- 人工智能大作业-无人机图像目标检测的python源代码+文档说明.zip
- 基于GoogLeNet实现Cifar-10图像分类项目python源码(高分项目).zip
- 数据库 sql 面试题目及答案解析.docx
- 汽车常见 10 种传感器故障后的表现与解决措施.docx
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功