题目:实现用户登录和注册
一、语言和环境
A、实现语言:Java
B、环境要求:
JDK6、Eclipse、Tomcat6、Oracle10g
二、功能要求
使用SSH(Struts2+Spring+Hibernate)实现用户登录和注册,Oracle10g作为后台数据库。具体要求如下:
进入登录页,显示登录框,登录框使用表格进行布局,设置表格的边框样式和背景色如图-1所示,并设置用户名、密码文本框的宽度。
点击登录按钮提交表单,并在服务器端实现数据校验,如果用户名或密码为空,则显示提示信息,如图-2所示:
如果用户名不存在,则显示提示信息,如图-3所示:
如果密码不正确,则显示提示信息,如图-4所示:
如果登录成功,则跳转至欢迎页面,如图-5所示:
点击注册超链接,则跳转至注册页面,并在注册页中使用下拉框显示用户类型,用户类型数据来自数据库的用户类型表groups,如图-6所示:
点击返回超链接可返回登录页,点击注册按钮则把用户名、密码、用户类型id保存至数据库的用户表users中,同时修改用户类型表groups,使该类型的用户数量加1,并弹出如图-7所示的提示框,点“确定”后返回登录页。
三、数据库设计
数据库表名称及要求:
四、推荐实现步骤及具体要
1. 建立数据表,创建主、外键,创建序列,添加测试数据(groups表中至少2条测试数据,users表中至少1条测试数据)。为groups添加检查约束,userNum必须>=0
2. 使用Eclipse创建Web工程UserSystem
3. 为工程添加Struts2、Spring、Hibernate支持
4. 正确配置Struts2、Spring、Hibernate的集成
5. 创建持久化类和对应的映射文件,实现用户类型和用户之间的双向一对多关系
A.编写groups表和users表对应的持久化类Group和User
B.编写持久化类的映射文件
6. 创建DAO接口及其实现类。在实现类中使用HQL语句或者Spring底层数据库对象完成相关数据库操作。实现:
A. 根据用户名查询用户
B. 添加用户
C. 修改指定用户类型的用户人数
D. 查询所有用户类型
7. 创建业务层Service接口及其实现类。在实现类中加入DAO接口的引用及对应的setter访问器,并实现指定的业务逻辑
8. 创建Struts2的Action类,在其中加入Service接口的引用及对应的setter 访问器,实现功能并正确配置Struts2配置文件
9. 创建Spring配置文件,完成相关对象的声明和装配,并为业务对象添加声明式事务支持,以代码方式实现事务不得分
10. 按照图示实现登录页,需要注意:
A.表格的边框样式和背景色,用户名、密码文本框的宽度必须使用CSS实现
B.用户名、密码不能为空的验证必须使用Struts2的验证框架在服务器端实现,验证规则必须写在配置文件中
C.实现登录的时候,用户名不存在和密码不正确的提示内容必须分别给出
11.按照图示实现注册页面,需要注意:
A.注册页的下拉框中必须显示全部用户类型的名称,选项的value为用户类型id
B.注册页无需实现输入验证
C.图-7所示的弹出提示框并实现跳转功能,必须使用JavaScript脚本实现
D.实现注册时,不但要保存用户信息,还必须把相应的用户类型的用户人数加1
12. 调试运行成功后将相关数据库对象导出成sql文件,包括创建表结构、创建主/外键、 创建序列、插入测试数据的SQL语句,与项目代码一起提交。没有数据库文件或以其 它文件类型(如dmp等)提交,数据库项不得分
五、注意事项
1、 请注意界面美观,控件摆放整齐;
2、 请注意代码的书写、命名符合规范,在代码中添加必要的注释;
3、 请注意操作数据库时进行必要的异常处理。