一、项目简介:
为了能够使得居民的户籍信息得到更有效的保存,开发的户籍管理系统的。这可以使得居民户籍信息管理更加信息化,更加快速高效的查询到某个居民信息。本系统以居民户籍信息作为依托,从新的角度对现在系统所存在的问题进行剖析,采用Java Web开发技术,并且选用MySQL作为后台数据库来存储学生数据,使用eclipse平台完成户籍管理系统的设计与实现。户籍管理系统分为两类使用角色,分别是管理员角色和普通居民。管理员角色则可以录入户籍信息,并修改迁入和迁出的信息。每一次的迁入迁出都会生成一条记录永久保存。普通的居民用户可以查询到自己的户籍信息,并可以在系统中提出反馈意见,以及公告信息。
二、登录模块实现:
在form表单输入用户名和密码并选择相应身份。之后提交的请求是login。Servlet接受请求之后,使用if语句去判断是哪个用户。并且分别添加两个查询方法,从2个角色的表中查询对应的用户。
管理员或者普通用户登录信息异常的主要代码如下:
//管理员异常代码
public Admin selectAdmin(Admin admin) {
try {//返回查询的信息
return runner.query("select * from admin where userName=? and pwd=?",
new BeanHandler<Admin>(Admin.class),admin.getUserName(),admin.getPwd());
} catch (Exception e) {
throw new RuntimeException("管理员登录异常!",e);//抛出运行异常
}
}
//用户异常代码
public User selectUser(User user) {
try {//返回查询的信息
return runner.query("select * from user where sfzh=? and pwd=?",
new BeanHandler<User>(User.class),user.getSfzh(),user.getPwd());
} catch (Exception e) {
throw new RuntimeException("用户登录异常!",e);//抛出运行异常
}
三、管理员主要功能实现:
1、控制台:
管理员登录到后台管理系统之后,可以查看到首页面的控制台。通过控制台首页面可以查看到今日访问数量、用户数量、迁出数量、流量统计以及条形统计图等相关信息。
2、管理员信息管理模块:
管理员可以通过管理员信息列表查看到所有管理员信息。包括用户名、密码和昵称。管理员也可以新增新管理员信息。
添加管理员信息主要代码如下:
public void saveAdmin(Admin admin) {
try {
runner.update("insert into admin (userName,nickName,pwd) values (?,?,?)",
admin.getUserName(),admin.getNickName(),admin.getPwd());
} catch (Exception e) {
throw new RuntimeException(e);
}
}
3、用户户籍管理模块:
管理员通过用户户籍列表可以查看到所有用户的信息,也可以对用户户籍信息进行增加、修改、查询和删除操作。
修改用户籍贯信息的主要代码如下:
public void updateUserQrqc(User user) {
try {
runner.update("update user set address=?,"
+ " jg=? "
+ " where id =?",
user.getAddress(),user.getJg(),user.getId());
} catch (Exception e) {
throw new RuntimeException(e);
}
}
4、反馈管理模块:
管理员登录系统之后,可以通过反馈信息列表查看到所有用户给予的反馈。包括反馈的内容、反馈原因、反馈人姓名和反馈时间等信息。此外,管理员也可以新增或者修改相关反馈内容。管理员也可以对不当的反馈进行删除。
5、公告管理模块:
管理员进入后台管理系统之后,可以通过公告管理模块发表一些公告内容供用户查看。相比以往的通知公告的方式更加便捷和高效。后期管理员也可以对相关的公告内容进行修改和删除操作。
删除公告信息的主要代码如下:
//删除公告内容信息
public void deleteBoard(String id) {
Integer ids = Integer.parseInt(id);
try {
runner.update("delete from board where id=?",
ids);
} catch (Exception e) {
throw new RuntimeException(e);
}
管理员可以对公告的主题和内容进行修改,点击修改按钮,编辑想要修改的内容,点击修改按钮即可。通过update访问层代码提交到数据库进行更新。
6、违法违纪管理模块:
管理员通过违法违纪管理模块的违法违纪列表,可以查看到所有用户的违法违纪情况。包括违法违纪的时间、违法违纪的情况、是否已经整改等相关信息。除此之外,管理员也可以新增违法违纪情况,也可以对相关违法违纪信息进行修改和删除操作。
管理员新增违法违纪信息是,用户名是与用户户籍信息关联,通过下拉列表选择用户名。违法违纪的时间是引用日历表进行选择相应的时间。相关信息填写好之后点击提交按钮,执行新增。
三、用户端主要功能实现
1、个人信息维护管理:
登录系统,可以通过个人信息维护管理模块查看到个人信息,也可以进行相关的修改操作。
2、查看户籍信息:
用户可以通过户籍信息管理模块查看到自己的户籍信息。包括用户籍贯、家庭住址、出生日期、身份证号、血型、教育等相关信息。用户只能查看户籍信息,不能对信息进行修改和删除操作。
用户查看个人户籍信息的主要代码如下:
//查看个人户籍信息
public List<User> getUserListPage(int pageNum, int pageSize,Integer id) {
if( id != 0){
String sql="select * from user where id =? limit ?,?";
int startNo=(pageNum-1)*pageSize;
List<User> list=null;
try {
list= runner.query(sql, new BeanListHandler<User>(User.class),new Object[] {id,startNo,pageSize});//添加实体类的适配器进行类的反射
return list;
} catch (Exception e) {//捕获异常
throw new RuntimeException(e);//抛出运行异常
}
}else{
String sql="select * from user limit ?,?";
int startNo=(pageNum-1)*pageSize;
List<User> list=null;
try {
list= runner.query(sql, new BeanListHandler<User>(User.class),new Object[] {startNo,pageSize});//添加实体类的适配器进行类的反射
return list;
} catch (Exception e) {//捕获异常
throw new RuntimeException(e);//抛出运行异常
}
}
3、查看户籍迁入迁出:
普通用户可以通过户籍迁入迁出记录查看到个人户籍迁入迁出的信息。包括原籍贯、现籍贯、原地址、现地址、迁入迁出时间等相关信息。用户只能查看个人迁入迁出信息,不能对其信息进行修改和删除操作。
4、反馈管理:
普通用户通过反馈管理模块,可以发表自己的反馈内容。也可以查看到其他用户的反馈内容和反馈原因。反馈内容会提交到该系统,管理员可以进行查看、修改和删除操作。普通用户发表反馈之后,不能对其修改和删除。
5、查看公告:
普通用户可以通过公告管理模块查看到管理员发布的公告内容。包括公告内容、公告主题、发布公告时间等信息。普通用户只有查看公告权限。
6、查看违法违纪情况:
违法违纪管理模块,主要记录的是用户违法违纪的情况,包括违法违纪的时间、是否已经整改、违法违纪原因等。普通用户可以通过违法违纪列表查看到个人违法违纪情况。没有对相关信息进行修改和删除的权限。