1+xjavaweb

现有一个用户管理网站xweb03。

现有项目结构如下内容:

描述

是否完成

com.neu.bean.User

对应数据表user的javaBean

com.neu. Person

Java类

com.neu.servlet.LoginServlet

用于用户登录功能,访问路径(/login)

com.neu.servlet.UserServlet

用于用户列表显示,访问路径(/users)

com.neu.dao.UserDao

用户持久层,

com.neu.dao.UserService

用户逻辑层

com.neu.util.DBUtil

数据库连接的工具类

/webapp/login.jsp

网站登录页面

/webapp/users.jsp

用户列表显示页面

其中在数据库xwebdb中有user表,访问该数据库的用户名/密码是xwebdb/xwebdb,user表结构如下:

字段名称

字段描述

字段类型

备注

id

用户编号

varchar(32)

主键

userName

用户名

varchar(100)

不能重复

password

密码

varchar(100)

一、完成Java类的编写

在com.neu.Person类中完成如下功能。

在Person类中添加两个String类型的成员变量,name和sex。
在Person类中添加带有两个参数的公有构造方法:为name和sex属性赋初始值。
定义Person类的子类com.neu.Student。
在com.neu.Student中添加一个int类型的成员变量age和char类型成员变量grade。
在com.neu.Student类中添加带4个参数的构造方法:参数的顺序是name、sex、age、grade 并且分别为对应的属性赋值。
在Student类中添加方法:方法名为print(),返回类型是String。将每个属性值用号连接并返回。 返回的格式为:namesexagegrade。
自行编写测试类测试,通过四个参数的构造函数创建一个Studentd对象,参数值分别为name=张三、sex=男、age=30、grade=A 调用Student对象的print()方法,返回的结果应该为:张三30*A。
请完全按照要求编写代码,保证类文件编译正确,方可得分。
二、完成UserDao

为完成用户登录的功能,需要在持久层完成getUserByName方法的编写。所用到的数据库连接对象请使用com.neu.util.DBUtil(请不要修改该对象的代码).

在neu.dao.UserDao.getUserByName方法中编写代码,根据用户名称检索数据库user表的记录,将记录内容保存到com.neu.bean.User对象中返回。
三、完成登录功能

在LoginServlet的doPost方法中完成网站的登录功能编写。其完成的内容如下:

从表单中获得用户名和密码
调用UserService的getUserName方法
根据调用结果进行判断:
登录成功:将用户名称保存到session对象中(键值名称"user"),并跳转到users(UserServlet的路径)。

登录失败:跳转到login.jsp

四、完成用户列表功能

在UserServlet的doGet方法中完成网站用户列表功能的编写,其完成的内容如下:

判断用户是否登录:
从session对象中取出键值是“user”的值,判断是否为空。

如果session键值“user”为空:跳转到jsp。
如果session键值“user”不为空:
创建UserService对象,调用其中获得所有数据的方法。

将返回的结果放入到request对象中(键值名称是“userList”)。

转发到users.jsp。

五、打包

程序打包

思路非常不错,加油你可以的