Jsp课程设计企业信息管理系统设计.docx

上传人:b****1 文档编号:1349976 上传时间:2023-04-30 格式:DOCX 页数:34 大小:65.14KB
下载 相关 举报
Jsp课程设计企业信息管理系统设计.docx_第1页
第1页 / 共34页
Jsp课程设计企业信息管理系统设计.docx_第2页
第2页 / 共34页
Jsp课程设计企业信息管理系统设计.docx_第3页
第3页 / 共34页
Jsp课程设计企业信息管理系统设计.docx_第4页
第4页 / 共34页
Jsp课程设计企业信息管理系统设计.docx_第5页
第5页 / 共34页
Jsp课程设计企业信息管理系统设计.docx_第6页
第6页 / 共34页
Jsp课程设计企业信息管理系统设计.docx_第7页
第7页 / 共34页
Jsp课程设计企业信息管理系统设计.docx_第8页
第8页 / 共34页
Jsp课程设计企业信息管理系统设计.docx_第9页
第9页 / 共34页
Jsp课程设计企业信息管理系统设计.docx_第10页
第10页 / 共34页
Jsp课程设计企业信息管理系统设计.docx_第11页
第11页 / 共34页
Jsp课程设计企业信息管理系统设计.docx_第12页
第12页 / 共34页
Jsp课程设计企业信息管理系统设计.docx_第13页
第13页 / 共34页
Jsp课程设计企业信息管理系统设计.docx_第14页
第14页 / 共34页
Jsp课程设计企业信息管理系统设计.docx_第15页
第15页 / 共34页
Jsp课程设计企业信息管理系统设计.docx_第16页
第16页 / 共34页
Jsp课程设计企业信息管理系统设计.docx_第17页
第17页 / 共34页
Jsp课程设计企业信息管理系统设计.docx_第18页
第18页 / 共34页
Jsp课程设计企业信息管理系统设计.docx_第19页
第19页 / 共34页
Jsp课程设计企业信息管理系统设计.docx_第20页
第20页 / 共34页
亲,该文档总共34页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

Jsp课程设计企业信息管理系统设计.docx

《Jsp课程设计企业信息管理系统设计.docx》由会员分享,可在线阅读,更多相关《Jsp课程设计企业信息管理系统设计.docx(34页珍藏版)》请在冰点文库上搜索。

Jsp课程设计企业信息管理系统设计.docx

Jsp课程设计企业信息管理系统设计

企业信息管理系统网站设计

1需求分析

设计一个小型企业信息管理系统网站,实现企业基本信息的在线管理。

该系统主要包括三大基本模块和六个功能扩展模块,模块简介如下:

(1)用户登录模块:

只有注册了的用户才可以登录系统,需要提供登录的用户名和密码即可登录系统。

(2)用户注册模块:

未注册的用户可以提供简单的个人信息注册成为注册用户。

该模块的输入数据项包括:

用户名、密码和E-mail。

(3)用户退出模块:

通过对该模块的调用,用户离开系统后其他人不能进行操作,提高了系统的安全性。

(4)通讯录管理模块:

用作当前的登录用户添加、修改、删除和查看自己的日程安排列表。

输入数据项包括:

姓名、性别、手机、E-mail、QQ、工作单位、地址、邮政编码。

(5)短消息管理模块:

用作当前的登录用户给系统内的其他用户发送短消息,并可以查看其他用户发来的消息。

输入数据项包括:

接收者、发送者、消息内容、发送时间、是否阅读。

(6)日程安排模块:

用作当前的登录用户添加、修改、删除和查看自己的日程安排列表。

输入数据项包括:

用户名、年份、月份、日期、安排内容。

(7)工作记录模块:

用作当前的登录用户添加、修改、删除和查看自己的工作日志列表。

输入数据项包括:

用户名、年份、月份、日期、日志标题、日志内容、记录时间。

(8)公司公告模块:

用户发送通知,大家都可以查看,只有发送通知的用户才有权修改、删除该通知。

输入数据项包括:

公告填写人、公告标题、公告内容、公告时间。

(9)工作会议模块:

用户发送会议通知,供所有用户查看,且只有发送通知的用户才有权修改、删除该通知。

输入数据项包括:

会议填写人、会议开始时间、会议结束时间、会议地点、会议标题、会议内容。

2总体设计

课程设计说明书

在任何一个管理信息系统中,都包含3个最基本的功能:

登录、退出与注册。

在这个功能的基础上,我们可扩展各种业务管理系统的功能,如图2.1所示。

图2.1系统基础功能状态图

系统基础功能涉及三个角色:

未注册用户、未登录用户、登录用户。

这三种用户执行如下三种需求功能:

用户登录功能、用户注册功能、用户退出功能。

根据以上的基础功能扩展开发出一个企业信息管理系统,它包含通信工具、个人管理和企业管理三大方面。

提供的功能包括:

通讯录管理模块、短消息管理模块、日程安排模块、工作记录模块、公司公告模块和工作会议模块。

各功能模块间的结构如图2.2所示。

图2.2功能结构图

该系统采用JSP技术实现页面的设计,主要页面组成如表2.1所示:

表2.1主要页面组成表

页面名称

JSP页面

页面名称

JSP页面

页面名称

JSP页面

登陆页面

login.jsp

通讯录页面

address.jsp

工作记录页面

worklog.jsp

注册页面

register.jsp

短消息页面

sms.jsp

公司公告页面

notice.jsp

登陆欢迎页面

welcome.jsp

日程安排页面

schedule.jsp

工作会议页面

meeting.jsp

课程设计说明书

3详细设计

3.1数据库设计

本系统所用到的数据库数据信息如下表所示:

表3.1数据库逻辑表

表格

名称

说明

user

用户表

用户信息

address

通讯录管理表

通讯录信息

sms

短消息管理表

短消息信息

schedule

日程安排表

日程安排信息

worklog

工作记录表

工作记录信息

notice

公司公告表

公司公告信息

meeting

工作会议表

工作会议信息

表3.2用户表

名称

类型

长度

说明

id

int

10

用户编号(唯一,索引)

username

varchar

50

用户名

password

varchar

50

用户密码

email

varchar

50

用户E-mail

表3.3短消息管理表

名称

类型

长度

说明

id

int

10

消息编号

username

varchar

50

接收者用户名

sender

varchar

50

发送者用户名

message

text

——

消息内容

sendtime

varchar

20

发送时间

isrend

varchar

1

是否已读

课程设计说明书NO.4

表3.4通讯录管理表

名称

类型

长度

说明

id

int

10

记录编号

username

varchar

50

录入者用户名

name

varchar

50

联系人用户名

sex

varchar

10

联系人性别

mobile

varchar

20

联系人手机号码

email

varchar

50

联系人E-mail地址

qq

varchar

20

联系人QQ号码

company

varchar

100

联系人公司

address

varchar

100

联系人地址

postcode

varchar

10

联系人邮编

表3.5日程安排表

名称

类型

长度

说明

id

int

10

安排表编号

username

varchar

50

用户名

year

int

4

日程年份

month

int

2

日程月份

day

int

2

日程日期

plan

text

——

日程内容

表3.6公司公告表

名称

类型

长度

说明

id

int

10

公告表编号

sender

varchar

50

公告提交人用户名

title

varchar

100

公告标题

content

text

——

公告内容

sendtime

varchar

20

公告发布时间

课程设计说明书NO.5

表3.7工作记录表

名称

类型

长度

说明

id

int

10

记录编号

username

varchar

50

记录人员用户名

year

int

4

工作年份

month

int

2

工作月份

day

int

2

工作日期

title

varchar

100

工作标题

description

text

——

工作具体内容

logtime

varchar

20

记录时间

表3.8工作会议表

名称

类型

长度

说明

id

int

10

会议记录编号

sender

varchar

50

会议记录员

startime

varchar

20

会议开始时间

endtime

varchar

20

会议结束时间

address

varchar

100

会议地址

title

varchar

100

会议主题

content

text

——

会议内容

数据库采用MySQL进行存储,其实施情况如图所示:

图3.1数据库表

课程设计说明书NO.6

图3.2user表属性图3.3schedule表属性

图3.4sms表属性图3.5meeting表属性

图3.6notice表属性图3.7worklog表属性

3.2动态网页设计

3.2.1MySQL参数文件db.jsp的设计

由于每一个需要访问MySQL的文件都需要创建数据库连接,因此会多次访问MySQL连接的参数,为了防止多次参数的不同,我们统一了一个MySQL参数文件inc/db.jsp,该文件定义如下:

沈阳大学

课程设计说明书NO.7

<%@page

<%@page

<%@page

<%@pageSet"%>

<%@page

<%

Stringdrv=

Stringurl=

Stringusr="root";

Stringpwd="123456";

%>

3.2.2检查用户名功能模块checkUsername.jsp的设计

通过JDBC连接MySQL数据库,实现对user用户表的检查,执行的SQL语句为:

select*fromuserwhereusername=‘username’

取得结果集ResultSet对象后,使用next()判断是否有记录,如果有记录则该用户名就存在返回true,否则就不存在返回false,程序段如下:

response.setContentType("text/xml");

response.setHeader("Cache-Control","no-cache");

Stringusername=request.getParameter("username");

booleanisValid=false;

Stringsql="select*fromuserwhereusername='"+username+"'";

try{

Class.forName(drv).newInstance();

Connectionconn=DriverManager.getConnection(url,usr,pwd);

Statementstm=conn.createStatement();

ResultSetrs=stm.executeQuery(sql);

if(rs.next())isValid=true;

rs.close();

stm.close();

conn.close();

}catch(Exceptione){

e.printStackTrace();

out.println(e);

}finally{}

if(isValid){

out.println("该用户名已经存在!

");

}else{

out.println("ok");}

沈阳大学

课程设计说明书NO.8

3.2.3登陆验证功能模块login.jsp的设计

该模块需要实现如下功能:

●包含数据库子文件db.jsp,以可以去的数据库的参数变量;

●使用request的getParameter()函数取得用户输入的用户名参数username和密码参数password;

●根据username和password组合查询user表的SQL语句;创建数据库连接,执行SQL语句的查询,如果查询结果不为空,即rs.next()返回值为ture,则表示验证成功,否则验证失败;

●验证成功则将用户名保存在session中,并使用response.sendRedirect()跳转到欢迎页面welcome.jsp,验证失败则返回登陆页面login.jsp。

该文件的代码如下:

<%@pagelanguage="java"pageEncoding="UTF-8"%>

<%@includefile="../inc/db.jsp"%>

<%

Stringusername=request.getParameter("username");

Stringpassword=request.getParameter("password");

booleanisValid=false;

Stringsql="select*fromuserwhereusername='"+username+"'andpassword='"+password+"'";

try{Class.forName(drv).newInstance();

Connectionconn=DriverManager.getConnection(url,usr,pwd);

Statementstm=conn.createStatement();

ResultSetrs=stm.executeQuery(sql);

if(rs.next())isValid=true;

rs.close();

stm.close();

conn.close();

}catch(Exceptione){

e.printStackTrace();

out.println(e);

}finally{}

if(isValid){

session.setAttribute("username",username);

response.sendRedirect("../welcome.jsp");

}else{

response.sendRedirect("../login.jsp");}%>

沈阳大学

课程设计说明书NO.9

3.2.4注册功能模块register.jsp的设计

该模块需要实现以下功能:

●包含数据库子文件db.jsp,以可以取得数据库参数变量。

●使用request的getParameter()函数取得用户输入的用户名参数username、密码参数password、E-mail参数email

●创建数据库的连接,查询user表中是否存在该username

●如果查询结果为空,即rs.next()返回值为false,则表示不存在,否则该用户名不可重复使用。

●当用户名可用时,组合插入表user的SQL,执行一个用户的插入。

●如果执行了插入则跳转到登录页面login.jsp,否则返回注册页面register.jsp

该文件的代码如下:

<%@pagelanguage="java"pageEncoding="UTF-8"%>

<%@includefile="../inc/db.jsp"%>

<%

Stringusername=request.getParameter("username");

Stringpassword1=request.getParameter("password1");

Stringemail=request.getParameter("email");

booleanisValid=false;

Stringsql="select*fromuserwhereusername='"+username+"'";

try{Class.forName(drv).newInstance();

Connectionconn=DriverManager.getConnection(url,usr,pwd);

Statementstm=conn.createStatement();

ResultSetrs=stm.executeQuery(sql);

if(!

rs.next()){sql="insertintouser(username,password,email)

values('"+username+"','"+password1+"','"+email+"')";

stm.execute(sql);

isValid=true;}

rs.close();

stm.close();

conn.close();}

catch(Exceptione){

e.printStackTrace();

out.println(e);}

if(isValid){response.sendRedirect("../login.jsp");}

else{response.sendRedirect("../register.jsp");}%>

沈阳大学

课程设计说明书NO.10

3.2.5通讯录管理功能模块address.jsp的设计

该页面首先需要数据库参数文件db.jsp。

然后取得请求参数method,用来决定执行什么操作。

根据method的参数值决定调用的处理函数如下:

●如果method参数值为list,则调用列表函数list();

●如果method参数值为delete,则调用删除函数delete();

●如果method参数值为insert,则调用插入函数insert();

●如果method参数值为edit,则调用修改函数edit();

●如果method参数值为update,则调用更新函数update();

完整的框架代码如下:

<%@pagelanguage="java"pageEncoding="UTF-8"%>

<%@page

<%@page

<%@page

<%@includefile="../inc/db.jsp"%>

<%

Stringmethod=request.getParameter("method");

Stringtopage="../address.jsp";

if(session.getAttribute("username")==null){

topage="../login.jsp";

}else{

Stringusername=(String)session.getAttribute("username");//当前登录用户名

StringpageSize=request.getParameter("pageSize");//每页显示行数

StringpageNo=request.getParameter("pageNo");//当前显示页次

if(pageSize==null){//为空时设置默认页大小为25

pageSize="25";

}

if(pageNo==null){//为空时设置默认为第1页

pageNo="1";

}//保存分页参数,传递给下一个页面

request.setAttribute("pageSize",pageSize);

request.setAttribute("pageNo",pageNo);

if(method.equals("list")){//列表操作

list(request,drv,url,usr,pwd,username,pageSize,pageNo);

topage="../address.jsp";//跳到列表页

}elseif(method.equals("delete")){//删除操作

delete(request,drv,url,usr,pwd,username);//执行删除

沈阳大学

课程设计说明书NO.11

list(request,drv,url,usr,pwd,username,pageSize,pageNo);//查询数据

topage="../address.jsp";//跳到列表页

}elseif(method.equals("add")){//新增操作

topage="../address_add.jsp";//跳到新增页

}elseif(method.equals("insert")){//插入操作

insert(request,drv,url,usr,pwd,username);//执行插入

list(request,drv,url,usr,pwd,username,pageSize,pageNo);//查询数据

topage="../address.jsp";//跳到列表页

}elseif(method.equals("edit")){//修改操作

select(request,drv,url,usr,pwd,username);//执行查询

topage="../address_edit.jsp";//跳到修改页

}elseif(method.equals("update")){//更新操作

update(request,drv,url,usr,pwd,username);//更新数据

list(request,drv,url,usr,pwd,username,pageSize,pageNo);//查询数据

topage="../address.jsp";//跳到列表页

}

}

%>

forwardpage="<%=topage%>"/>

--

(1)列表函数-->

<%!

publicbooleanlist(HttpServletRequestrequest,Stringdrv,Stringurl,

Stringusr,Stringpwd,Stringusername,StringstrPageSize,

StringstrPageNo){

try{//创建数据库连接

Class.forName(drv).newInstance();

Connectionconn=DriverManager.getConnection(url,usr,pwd);

Statementstm=conn.createStatement();

intpageSize=Integer.parseInt(strPageSize);

intpageNo=Integer.parseInt(strPageNo);

intstart=pageSize*(pageNo-1);

Stringsql1="selectcount(*)ascountallfromaddresswhereusername='"+username+"'";

ResultSetrs1=stm.executeQuery(sql1);

if(rs1.next()){//计算总行数并保存

Stringcountall=rs1.getString("countall");

introwCount=Integer.parseInt(countall);

request.setAttribute("rowCount",rowCount);

intpageCount=rowCount%pageSize==0?

rowCount/pageSize

:

rowCount/pageSize+1;

request.setAttribute("pageCount",pageCount);

intpageFirstNo=1;//首页

intpageLastNo=pageCount;//尾页

沈阳大学

课程设计说明书NO.12

intpagePreNo=pageNo>1?

pageNo-1:

1;//前一页

intpageNextNo=pageNo

pageNo+1:

pageCount;//后一页

request.setAttribute("pageFirstNo",pageFirstNo);

request.setAttribute("pageLastNo",pageLastNo);

request.setAttribute("pagePreNo",pagePreNo);

request.setAttribute("pageNextNo",pageNextNo);

}

rs1.close();//取得当前页数据SQL

Stringsql2="select*fromaddresswhereusername='"+

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 幼儿教育 > 幼儿读物

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2