一、源码特点
java Web旅游攻略管理系统是一套完善的java web信息管理系统,对理解JSP java编程开发语言有帮助,系统具有完整的源代码和数据库,系统主要采用B/S模式开发。开发环境为
TOMCAT7.0,Myeclipse8.5开发,数据库为Mysql5.0,使用java语言开发。
java web 旅游攻略管理系统
二、功能介绍
本系统一共分为普通游客,会员、网站管理员三个角色,不同的角色有不同的角色功能菜单,每个部分由其功能模块组成,每个模块之间虽然在表面上是相互独立的,但是在对数据库的访
问上是紧密相连的,各个模块访问的是同一个数据库,并且,旅游攻略系统建设的分析,系统主要功能包括:用户管理,景点管理、景点报名、酒店管理、旅游攻略等功能主要功能如下:
1.整个旅游攻略系统包括主页、搜索和显示页面、攻略收藏页面和个人中心。
主页:上面显示滚动的景点图片3个,点击可以进入攻略,下面随机展示10个热门攻略,并定时更新(15秒更新一次)
2.搜索和显示页面:按收藏数降序默认显示所有攻略。输入省份可显示该省所有旅游攻略;输入具体景点可显示该景点旅游攻略。支持模糊搜索。
3.收藏页面:按日期降序显示收藏的攻略,并可以在该页面取消收藏攻略。
4.个人中心页面:显示一些基本信息,并包括修改用户名,修改头像,修改密码,退出系统等基本操作
5.登录注册:用户分为普通用户和管理员,登录后系统右上角显示头像和用户名。登录时有记住密码选项。
6.攻略:攻略至少包括文字和图片,用户可以查看、收藏、转发攻略,在攻略下面留言,并倒序显示。每个攻略显示收藏数目。
7.管理员除普通用户的功能外,在后台管理查看所有攻略,并可以对每个攻略进行增删改操作,并查看每个攻略的收藏数、留言数以及留言内容。
数据库设计
表4-1用户信息表
|----|------|---------|----|----|------|
| 序号 | 字段名称 | 数据类型 | 长度 | 主键 | 描述 |
| 1 | yhid | INTEGER | 11 | 是 | 用户编号 |
| 2 | yhm | VARCHAR | 40 | 否 | 用户名 |
| 3 | mm | VARCHAR | 40 | 否 | 密码 |
| 4 | xm | VARCHAR | 40 | 否 | 姓名 |
| 5 | qx | VARCHAR | 40 | 否 | 权限 |
| 6 | lxdh | VARCHAR | 40 | 否 | 联系电话 |
| 7 | lxdz | VARCHAR | 40 | 否 | 联系地址 |
| 8 | tx | VARCHAR | 40 | 否 | 头像 |
表4-2 省份信息表
|----|------|---------|----|----|------|
| 序号 | 字段名称 | 数据类型 | 长度 | 主键 | 描述 |
| 1 | sfid | INTEGER | 11 | 是 | 省份编号 |
| 2 | sf | VARCHAR | 40 | 否 | 省份 |
表4-3攻略信息表
|----|------|---------|----|----|------|
| 序号 | 字段名称 | 数据类型 | 长度 | 主键 | 描述 |
| 1 | glid | INTEGER | 11 | 是 | 攻略编号 |
| 2 | bt | VARCHAR | 40 | 否 | 标题 |
| 3 | nr | VARCHAR | 40 | 否 | 内容 |
| 4 | tp | VARCHAR | 40 | 否 | 图片 |
| 5 | js | VARCHAR | 40 | 否 | 介绍 |
| 6 | fbrq | VARCHAR | 40 | 否 | 发布日期 |
| 7 | sf | VARCHAR | 40 | 否 | 省份 |
| 8 | lll | VARCHAR | 40 | 否 | 浏览量 |
| 9 | szs | VARCHAR | 40 | 否 | 收藏数 |
| 10 | lys | VARCHAR | 40 | 否 | 留言数 |
| 11 | zz | VARCHAR | 40 | 否 | 作者 |
表4-4 攻略详情信息表
|----|--------|---------|----|----|--------|
| 序号 | 字段名称 | 数据类型 | 长度 | 主键 | 描述 |
| 1 | glxqid | INTEGER | 11 | 是 | 攻略详情编号 |
| 2 | gl | VARCHAR | 40 | 否 | 攻略 |
| 3 | nr | VARCHAR | 40 | 否 | 内容 |
| 4 | fbsj | VARCHAR | 40 | 否 | 发布时间 |
表4-5 收藏信息表
|----|------|---------|----|----|------|
| 序号 | 字段名称 | 数据类型 | 长度 | 主键 | 描述 |
| 1 | szid | INTEGER | 11 | 是 | 收藏编号 |
| 2 | yh | VARCHAR | 40 | 否 | 用户 |
| 3 | sz | VARCHAR | 40 | 否 | 收藏 |
| 4 | sj | VARCHAR | 40 | 否 | 时间 |
表4-6 留言信息表
|----|------|---------|----|----|------|
| 序号 | 字段名称 | 数据类型 | 长度 | 主键 | 描述 |
| 1 | lyid | INTEGER | 11 | 是 | 留言编号 |
| 2 | gl | VARCHAR | 40 | 否 | 攻略 |
| 3 | yh | VARCHAR | 40 | 否 | 用户 |
| 4 | ly | VARCHAR | 40 | 否 | 留言 |
| 5 | lysj | VARCHAR | 40 | 否 | 留言时间 |
系统ER 图
前台展现代码
</script>
<script src="<%=path %>/kingediter/kindeditor-all-min.js"></script>
<script charset="utf-8" src="<%=path %>/kindeditor.js"></script>
<script charset="utf-8" src="<%=path %>/lang/zh-CN.js"></script>
<script>
KindEditor.ready(function(K) {
var options ={
uploadJson : '<%=request.getContextPath()%>/kingediter/upload_json.jsp',
fileManagerJson : '<%=request.getContextPath()%>/kingediter/file_manager_json.jsp',
afterBlur: function(){this.sync();}
};
window.editor = K.create('#editor_id',options);
});
</script>
</head>
<body>
<form name="form" action="" method="post" >
<div class=formzone>
<DIV class=searchzone>
<TABLE height=30 cellSpacing=0 cellPadding=0 width="100%" border=0>
<TBODY>
<TR>
<TD height=30>攻略添加</TD>
<TD align=right colSpan=2> </TD>
</TR></TBODY></TABLE></DIV>
<div class=tablezone>
<div class=noticediv id=notice></div>
<TABLE cellSpacing=0 cellPadding=2 width="100%" align=center border=0>
<TBODY>
<tr >
<td align=middle width=100 height=30>标题</td>
<td height=30><input type="text" class="input" style="FONT-SIZE: 12px; WIDTH: 300px" name="bt" value=""></td>
</tr>
<tr >
<td align=middle width=100 height=30>内容</td>
<td height=30>
<textarea name="nr" cols="80" rows="5" id="editor_id"></textarea>
</td>
</tr>
<tr >
<td align=middle width=100 height=30>图片</td>
<td height=30><input type="text" class="input" style="FONT-SIZE: 12px; WIDTH: 300px" name="tp" value=""><iframe id="ifr" name="ifr" width="400" height="40" frameborder="no" scrolling="no" src="fileupload.jsp?kname=tp"></iframe></td>
</tr>
<tr >
<td align=middle width=100 height=30>介绍</td>
<td height=30>
<textarea name="js" cols="80" rows="5"></textarea>
</td>
</tr>
<tr >
<td align=middle width=100 height=30>发布日期</td>
<td height=30><input type="text" class="input" style="FONT-SIZE: 12px; WIDTH: 300px" name="fbrq" value="
<%=StaticMethod.getStringDate()%>"></td>
</tr>
<tr >
<td align=middle width=100 height=30>省份</td>
<td height=30>
<select name="sf">
<%
sql="select * from shengfen ";
rs=db.query(sql);
while(rs.next()){
%>
<option value="<%=rs.getString("sf")%>"><%=rs.getString("sf")%></option>
<% }%>
</select>
</td>
三、注意事项
1、管理员账号:admin密码:admin 数据库配置文件DBO.java
2、开发环境为TOMCAT7.0,Myeclipse8.5开发,数据库为Mysql5.0,使用java语言开发。
3、数据库文件名是jsplygl.sql ,系统名称lygl
4、系统首页地址:http://127.0.0.1:8080/lygl/shouye.jsp
四 系统实现
源码获取 下方联系卡片↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓