毕业论文设计网上物流信息网设计Word文档下载推荐.docx
《毕业论文设计网上物流信息网设计Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《毕业论文设计网上物流信息网设计Word文档下载推荐.docx(28页珍藏版)》请在冰豆网上搜索。
按课程设计指导书提供的课题,要求学生在自行完成各个操作环节,并能实现且达到举一反三的目的,完成一个项目解决一类问题。
要求学生能够全面、深入理解和熟练掌握所学内容,并能够用其分析、设计和解答类似问题;
对此能够较好地理解和掌握,能够进行简单分析和判断;
能编写出具有良好风格的程序;
掌握JSP程序设计的基本技能和面向对象的概念和方法编程技术。
同时培养学生进行分析问题、解决问题的能力;
培养学生进行设计分析、设计方法、设计操作与测试、设计过程的观察、理解和归纳能力的提高。
第2章课程设计内容
2.1开发背景简述
随着我国的物流热潮,各行各业都对物流趋之若骛,纷纷成立物流企业。
但由于国内各方面条件的限制,国内物流企业规模小、数量多,缺少竞争优势,并且技术含量低,大多数只能提供运输和仓储等传统服务,能够提供一揽物流解决方案的企业很少,再加上国外大企业的竞争,使原本就不足以分得一杯羹的国内企业更加难以适应市场的变化。
要想在这场博弈中取胜,对于大部分的中小型物流企业来说,找出市场中的缝隙、进行差异化经营是他们的最佳生存之道,而信息的来源成为寻找“缝隙”的关键。
随着国内信息化步伐的加快,加之物流企业对行业信息的需求越来越大,促使物流信息网迅速发展,以适应物流行业的市场变化。
物流信息网信息的及时性、准确性完全符合国内物流企业对行业信息的要求,它已经成为国内物流企业信息的主要来源。
2.2系统设计内容
随着经济全球化和信息技术的迅速发展,信息资源被看作是获得未来物流竞争优势的关键因素之一,物流信息网的广泛兴起,一方面降低物质消耗,另一方面提高了劳动生产率,本文在总结系统需求分析的基础上,提出系统的总体设计目标、系统总体架构和功能模块的设计。
2.3需求分析
通过对物流企业和行业信息全面的调查,要求网站具有以下功能;
❑物流行业内各类信息的发布功能。
❑提供各类信息的查询功能
❑行业信息的查看功能。
❑行业信息的修改与删除功能。
❑提供会员服务功能模块包括注册会员、管理会员信息、发布信息、对发布信息进行管理等功能。
❑为物流企业提供行业的辅助工具
❑提供管理员后台管理入口。
❑通过后台对各类信息进行管理。
❑对网站会员信息进行管理。
2.3.1系统逻辑设计
对于数据库应用系统而言,设计数据库是十分重要的,也是首要的工作。
一般先设计系统数据库,然后才开始设计应用程序。
1.E_R图
图2.1
实体之间关系简单的E-R图
图2.2
管理员的E-R图
2.数据库表结构
(1)db_CarMessage(车辆信息表)
车辆信息表主要用于保存车辆信息。
表B.1db_Message的结构
字段名
数据类型
长度
是否主键
描述
ID
int
4
是
唯一标识
TradeMark
nvarchar
20
车牌号码
Brand
50
车牌品名
Style
30
车辆类型
CarLoad
10
车辆载重
UsedTime
varchar
使用时间
DriverName
驾驶员姓名
DriverTime
驾驶时间
LicenceNumber
驾照号码
LicenceStyle
驾照类型
TranspotStyle
运输类型
LinkMan
联系人
LinkPhone
联系电话
Remark
100
备注
IssueDate
datetime
8
发布时间
UserName
发布人
(3)db_GoodsMeg(货物信息表)
货物信息表主要用于保存各类货物信息。
表B.3tb_news的结构
Code
GoodsStyle
货物类型
GoodsName
货物名称
GoodsNumber
货物数量
GoodsUnit
数量单位
StartOmit
起始省份
StartCity
起始城市
EndOmit
抵达省份
EndCity
抵达城市
TransportTime
运输时间
Phone
Link
200
800
Request
车辆要求
2.3.2系统功能需求分析
1.系统功能模块图
物流信息网后台系统功能模块图,如图1所示。
图1物流信息网前台功能模块图
物流信息网后台系统功能模块如图2所示。
图2物流信息网后台功能模块图
2.系统简单的流程图
2.4系统实现
车辆信息发布页面的运行结果
2.4.1系统的结构
1、系统主要分为前后台两部分:
前台是不需要认证的,是供网站的访问者访问的,主要完成了以下功能:
网站前台首页的运行结果:
2、后台主要是方便管理员和新闻发布员管理和发布新闻的,主要有以下功能:
后台主界面如下图:
信息发布模块设计
信息发布模块主要包括车辆信息发布、企业信息发布、货物信息发布3个部分,鉴于这3个部分的功能是一样的,本节将以车辆信息发布为例。
发布车辆信息,首先要进入车辆信息展示页面,在车辆信息展示页面用户单击“发布信息”超链接,即可打开车辆信息发布页面,进行车辆信息的发布,车辆信息页面的设计结果如图6所示。
图6车辆信息页面设计的结果
在车辆信息发布页面,当用户填写了信息发布页面的表单并单击【发布】按钮后,表单信息将被提交给数据处理页面进行数据处理,其页面设计结果如图7所示。
图7信息发布页面设计结果图
车辆信息发布页面涉及到的HTML表单元素如表2所示。
表2车辆信息发布页面涉及的HTML表单元素
区域
名称
说明
对应文件
form1
form
表单
method=”post”action=”/logistics/Cars/CarMessageadd.jsp”
numbers
text
车辆号码
type
carname
车辆品名
loads
车辆限重
usetime
已使用年限
style
select
<
selectsize=1name=”style”>
optionvalue=”长途”selected>
长途<
/option>
optionvalue=”短途”selected>
短途<
name
number
驾驶证号码
styles
驾驶证类型
selectsize=1name=”styles”>
optionvalue=”A类”selected>
A类<
……
time
驾驶员驾龄
meg
area
备注信息
linkman
phone
submit
【发布】按钮
onClick=”returncheck()”
reset
【重置】按钮
车辆信息发布页面的运行结果:
详细信息查看模块设计
该模块主要包括企业信息查看、车辆信息查看、货物信息查看、物流知识查看、公告信息查看5个部分,鉴于这5个部分的功能原理是一样的,本节将以车辆信息的详细信息查看为例。
用户可以通过车辆信息页面中的“详细”链接,打开车辆详细信息展示页面,用户可以在该页面查看对应车辆信息的详细内容。
车辆信息展示页面主要是根据传递的参数(本例中是车辆信息的ID号,参数名称为id),进行数据库检索,并将检索结果输出到浏览器中,该页面设计结果如图9所示。
信息修改模块设计
该模块主要包括车辆信息修改、货物信息修改和企业信息修改3个部分,本节将以车辆信息修改为例讲解信息修改模块。
系统在设计时,若当前用户是当前信息的发布人,详细信息展示页面将出现“修改”和“删除”两个超链接;
若当前用户不是当前信息的发布人,则页面只是单一的详细信息展示页面,没有“修改”和“删除”两个超链接。
通过如下方法判断当前登录用户是否为发布人。
1)从数据库中检索出发布人信息。
2)将发布人信息与登录用户的信息比较,如果相同,则判断当前用户便是发布人,反之则不是。
如果登录的用户是信息发布人,系统将允许其对已发布的信息进行更改。
更改后通过【修改】按钮将数据提交到数据处理页,数据处理页将根据提交的数据对数据表指定记录进行更新。
修改页面涉及到的HTML表单元素如表3所示。
表3修改页面涉及到的HTML表单元素
类型
含义
重要属性
method="
post"
action="
/logistics/Cars/CarMessage_change.jsp"
numbers
optionvalue=”短途”selected>
select
……….
optionvalue=”C类”selected>
C类<
驾驶员的驾龄
issuedate
日期
user
信息发布人名
submit
【修改】按钮
value="
修改"
重置"
2.4.3程序源代码
车辆信息发布的数据处理页面相关程序代码如下:
!
--*********************/logistics/Cars/CarMessageadd_config.jsp***************************-->
jsp:
useBeanid="
condata"
scope="
page"
class="
wuliu.conndata"
/>
%@pageimport="
java.util.Date"
%>
%!
Datedate=newDate();
Stringsql;
ResultSetrs;
%
request.setCharacterEncoding("
gb2312"
);
Stringnumbers=request.getParameter("
numbers"
Stringtypes=request.getParameter("
type"
Stringcarname=request.getParameter("
carname"
Stringusetime=request.getParameter("
usetime"
Stringloads=request.getParameter("
loads"
Stringtranstyle=request.getParameter("
style"
Stringdrivername=request.getParameter("
name"
Stringnumber=request.getParameter("
number"
Stringstyles=request.getParameter("
styles"
Stringdrivertime=request.getParameter("
time"
Stringmeg=request.getParameter("
meg"
Stringlinkman=request.getParameter("
linkman"
Stringphone=request.getParameter("
phone"
Stringgremark=request.getParameter("
gremark"
Stringusername=(String)session.getAttribute("
java.sql.Dateshowdate=newjava.sql.Date(date.getYear(),date.getMonth()+1,date.getDate());
sql="
insertintodb_CarMessagevalues('
"
+numbers+"
'
'
+carname+"
+types+"
+loads+"
+usetime+"
+drivername+"
+drivertime+"
+number+"
+styles+"
+transtyle+"
+linkman+"
+
phone+"
+meg+"
+showdate+"
+username+"
)"
;
booleansert=condata.executeInsert(sql);
if(sert)
{%>
scriptlanguage="
javascript"
>
alert("
您输入的车辆信息已经成功完成!
!
/script>
response.sendRedirect("
/logistics/Cars/CarMessage.jsp"
}else
{
您输入的车辆信息插入失败!
}
车辆信息展示用到了分页,鉴于分页的实现在其它模块中实现相同,在此以车辆信息展示为例,代码如下:
intpagesize=10;
introwcount=0;
intpagecount=1;
rs.last();
rowcount=rs.getRow();
intshowpage=1;
pagecount=((rowcount%pagesize)==0?
(rowcount/pagesize):
(rowcount/pagesize)+1);
Stringtopage=request.getParameter("
topage"
if(topage!
=null)
showpage=Integer.parseInt(topage);
if(showpage>
pagecount){
showpage=pagecount;
}elseif(showpage<
=0){
showpage=1;
rs.absolute((showpage-1)*pagesize+1);
for(inti=1;
i<
=pagesize;
i++)
n=rs.getInt("
Code"
tr>
tdwidth="
11%"
height="
29"
fontface="
隶书"
size="
3"
%=rs.getString("
TradeMark"
)%>
/font>
/td>
Brand"
Style"
CarLoad"
UsedTime"
15%"
DriverTime"
TranspotStyle"
12%"
ahref="
/logistics/Cars/CarMessageshow.jsp?
id=<
%=n%>
详细<
/a>
/tr>
if(!
rs.next())
break;
104%"
30"
colspan="
9"
align="
right"
tablewidth="
center"
共<
%=pagecount%>
页&
nbsp;
&
/logistics/Cars/CarMessage.jsp?
topage=<
%=1%>
第一页<
%=showpage-1%>
上一页<
%=showpage+1%>
下一页<
最后一页<
spanclass="
bgcolor"
inputname="
type="
text"
txt_grey"
5"
value="
%=showpage%>
页<
/span>
/table>
详细信息查看页面数据库检索的相关程序代码如下:
--**********************/logistics/Cars/CarMessageshow.jsp***********************-->
java.sql.*"
login=(String)session.getAttribute("
login"
username=(String)session.getAttribute("
if(session.isNew())
您还未登录,不能浏览详细信息!
/logistics/login.jsp"
通过如下代码得到