题目:实现用户登录和注册

一、语言和环境

A、实现语言:Java

B、环境要求:

JDK6、Eclipse、Tomcat6、Oracle10g

二、功能要求

使用SSH(Struts2+Spring+Hibernate)实现用户登录和注册,Oracle10g作为后台数据库。具体要求如下:

进入登录页,显示登录框,登录框使用表格进行布局,设置表格的边框样式和背景色如图-1所示,并设置用户名、密码文本框的宽度。

java中登陆 注册 java登陆注册功能_测试数据

点击登录按钮提交表单,并在服务器端实现数据校验,如果用户名或密码为空,则显示提示信息,如图-2所示:

java中登陆 注册 java登陆注册功能_java注册登陆_02

如果用户名不存在,则显示提示信息,如图-3所示:

java中登陆 注册 java登陆注册功能_java中登陆 注册_03

如果密码不正确,则显示提示信息,如图-4所示:

java中登陆 注册 java登陆注册功能_数据库_04

如果登录成功,则跳转至欢迎页面,如图-5所示:

java中登陆 注册 java登陆注册功能_用户名_05

点击注册超链接,则跳转至注册页面,并在注册页中使用下拉框显示用户类型,用户类型数据来自数据库的用户类型表groups,如图-6所示:

java中登陆 注册 java登陆注册功能_数据库_06

点击返回超链接可返回登录页,点击注册按钮则把用户名、密码、用户类型id保存至数据库的用户表users中,同时修改用户类型表groups,使该类型的用户数量加1,并弹出如图-7所示的提示框,点“确定”后返回登录页。

java中登陆 注册 java登陆注册功能_用户名_07

三、数据库设计

数据库表名称及要求:

java中登陆 注册 java登陆注册功能_测试数据_08

java中登陆 注册 java登陆注册功能_java中登陆 注册_09

四、推荐实现步骤及具体要

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、 请注意操作数据库时进行必要的异常处理。

java中登陆 注册 java登陆注册功能_java中登陆 注册_10