当前位置: 代码迷 >> 综合 >> 基于SSMidea开发景区景点旅游网站(javaweb-php-asp.netC#-j2ee)包含城市推荐线路预约预定自驾游个性化推荐技术数据统计分析
  详细解决方案

基于SSMidea开发景区景点旅游网站(javaweb-php-asp.netC#-j2ee)包含城市推荐线路预约预定自驾游个性化推荐技术数据统计分析

热度:65   发布时间:2023-11-23 05:29:56.0

 

目录

 

 

0、效果展示

1、旅游网站概述Design and implementation of the web-based information management

2、旅游网站搭建环境

3、数据表

?4、后端代码示例

5、前端代码示例


 

0、效果展示

 

 

1、旅游网站概述Design and implementation of the web-based information management

 

旅游网站建设是面向现实需求的一个实用系统。其设计的目的是为游客和旅游网站提供一个友好的、直接的交流平台。本系统主要分为六大模块:旅游咨询信息、旅游线路信息、热点旅游线路信息、线路查询、留言信息以及权限管理。该系统的主要功能:提供给管理者一个简单的界面,可以合理计划安排导游的工作和及时了解游客的要求和信息;提供给游客一个清新的界面选择自己向往的旅游胜地。

该旅游管理系统主要实现了对旅游信息的管理功能,主要实现了前台和后台模块,主要功能如下:

系统:登录、注销、退出。

前台模块:旅游线路、热点线路、票选线路、线路查询、会员中心、留言板。

后台系统管理:公告管理、发布公告、友情链接管理、网站留言管理、管理员设置、后台登录日志。

后台旅游资讯管理:旅游资讯管理、发布旅游资讯。

旅游线路管理:旅游线路管理、热点旅游线路、添加旅游线路。

注册会员管理:注册会员管理。

预定报名管理:预定报名管理。

票选线路管理:票选线路管理、发布票选线路。

2、旅游网站搭建环境

 

本文以实现一个旅游网站为目标,从环境搭建到编码实现全过程讲述

我们使用javaweb、J2EE来构建旅游网站,环境使用最新版jdk和tomcat,配合mysql数据库

开发工具使用idea(也可以使用eclipse),数据库管理工具使用Navicat Premium 

开发框架使用JavaBean Servlet MVC结构;

没有使用SSH(Struts+Spring+Hibernate)或SSM(Spring+SpringMVC+MyBatis),这两个框架我们在别的项目中再介绍开发过程

 

在项目中会引入My97DatePicker作为前端日期时间选择工具,使用fckeditor作为富媒体编辑器(也可以使用百度的ueditor)

 

 

使用DWR(Direct Web Remoting)用于改善web页面与Java类交互,实现远程服务器端AJAX读取登录数据。

使用JSTL(Java server pages standarded tag library,即JSP标准标签库),此库是由JCP(Java community Proces)所制定的标准规范,它主要提供给Java Web开发人员一个标准通用的标签库,并由Apache的Jakarta小组来维护。开发人员可以利用这些标签取代JSP页面上的Java代码,从而提高程序的可读性,降低程序的维护难度。

 

3、数据表

 

表1 admin管理员表

名称

类型

说明

id

int

编号

username

nvarchar(50)

用户名

password

nvarchar(50)

密码

creattime

datetime

日期

logintimes

int

登录次数

qx

nvarchar(1000)

权限

 

表2 affiche公告表

名称

类型

说明

id

int

编号

title

nvarchar(100)

标题

[content]

nvarchar(MAX)

内容

addtime

datetime

日期

 

表3 guestbook留言表

名称

类型

说明

id

int

编号

nickname

nvarchar(100)

名称

pic

nvarchar(100)

图片

email

nvarchar(50)

邮件

qq

nvarchar(50)

QQ

weburl

nvarchar(100)

网址

[content]

nvarchar(200)

内容

addtime

datetime

日期

ip

nvarchar(50)

IP

replay

int

回复

 

?4、后端代码示例

 

package com.action;/*** * 留言本*/import java.io.IOException;
import java.util.List;import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;import com.bean.GuestBookBean;
import com.bean.SystemBean;
import com.util.Constant;
import com.util.Filter;public class GuestBookServlet extends HttpServlet {/*** Constructor of the object.*/public GuestBookServlet() {super();}/*** Destruction of the servlet. <br>*/public void destroy() {super.destroy(); // Just puts "destroy" string in log// Put your code here}/*** The doGet method of the servlet. <br>** This method is called when a form has its tag value method equals to get.* * @param request the request send by the client to the server* @param response the response send by the server to the client* @throws ServletException if an error occurred* @throws IOException if an error occurred*/public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {doPost(request,response);}/*** The doPost method of the servlet. <br>** This method is called when a form has its tag value method equals to post.* * @param request the request send by the client to the server* @param response the response send by the server to the client* @throws ServletException if an error occurred* @throws IOException if an error occurred*/public void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {request.setCharacterEncoding(Constant.CHARACTERENCODING);response.setContentType(Constant.CONTENTTYPE);//nikename, pic, email, qq, weburl, blogurl, expressions, contentString sysdir = new SystemBean().getDir();HttpSession session = request.getSession();String method = request.getParameter("method").trim();GuestBookBean guestBookBean = new GuestBookBean();if(method.equals("add")){//发表留言String member=(String)session.getAttribute("member");String nikename = Filter.escapeHTMLTags(request.getParameter("nikename").trim());String face ="images/nobody.gif";String email = "";String qq = Filter.escapeHTMLTags(request.getParameter("qq").trim());String weburl = "";String blogurl = "";String expressions = "";String content = Filter.escapeHTMLTags(request.getParameter("content").trim());String ip = request.getRemoteAddr();if(nikename.equals("")){nikename="游客";					}if(member!=null){face="images/nobody.gif";}int guestbook=1;int flag = guestBookBean.addGuestBook(nikename, face, email, qq, weburl, blogurl, expressions, content, ip,guestbook);if(flag == 1){request.setAttribute("message", "谢谢您的留言,请等候管理员回复!");request.getRequestDispatcher("guestbook.jsp").forward(request, response);}else{request.setAttribute("message", "系统维护中,请稍后再试!");request.getRequestDispatcher("guestbook.jsp").forward(request, response);}}else if(method.equals("delguestbook")){//删除留言try{String username2 = (String)session.getAttribute("user");if(username2 == null){request.getRequestDispatcher("error.jsp").forward(request, response);}else{String check[] = request.getParameterValues("checkit");if(check == null){request.setAttribute("message", "请选择要删除的记录!");request.getRequestDispatcher(sysdir+"/guestbook/index.jsp").forward(request, response);}else{int id[]= new int[check.length];for(int i = 0;i<check.length;i++){int s = Integer.parseInt(check[i]);				id[i] = s;}int flag = guestBookBean.delGuestBook(id);if(flag == Constant.SUCCESS){request.getRequestDispatcher(sysdir+"/guestbook/index.jsp").forward(request, response);}else{request.setAttribute("message", "系统维护中,请稍后再试!");request.getRequestDispatcher(sysdir+"/guestbook/index.jsp").forward(request, response);}}}}catch(Exception e){request.getRequestDispatcher("error.jsp").forward(request, response);}}else if(method.equals("replay")){//回复留言try{String username2 = (String)session.getAttribute("user");if(username2 == null){request.getRequestDispatcher("error.jsp").forward(request, response);}else{String messageid = Filter.escapeHTMLTags(request.getParameter("id").trim());String replay = Filter.escapeHTMLTags(request.getParameter("replay").trim());int flag = guestBookBean.reGuestBook(Integer.parseInt(messageid), replay, username2);if(flag == Constant.SUCCESS){request.setAttribute("message", "回复成功!");request.getRequestDispatcher(sysdir+"/guestbook/index.jsp").forward(request, response);}else{request.setAttribute("message", "系统维护中,请稍后再试!");request.getRequestDispatcher(sysdir+"/guestbook/index.jsp").forward(request, response);}}}catch(Exception e){request.getRequestDispatcher("error.jsp").forward(request, response);}}else if(method.equals("upreplay")){try{String username2 = (String)session.getAttribute("user");if(username2 == null){request.getRequestDispatcher("error.jsp").forward(request, response);}else{String messageid = Filter.escapeHTMLTags(request.getParameter("id").trim());String replay = Filter.escapeHTMLTags(request.getParameter("replay").trim());int flag = guestBookBean.upReplay(Integer.parseInt(messageid), replay);if(flag == Constant.SUCCESS){request.setAttribute("message", "修改成功!");request.getRequestDispatcher(sysdir+"/guestbook/index.jsp").forward(request, response);}else{request.setAttribute("message", "系统维护中,请稍后再试!");request.getRequestDispatcher(sysdir+"/guestbook/index.jsp").forward(request, response);}}}catch(Exception e){request.getRequestDispatcher("error.jsp").forward(request, response);}}else{request.getRequestDispatcher("error.jsp").forward(request, response);}}/*** Initialization of the servlet. <br>** @throws ServletException if an error occure*/public void init() throws ServletException {// Put your code here}
}

5、前端代码示例

 

<%@ page language="java" import="java.util.*,com.util.*" contentType="text/html;charset=gb2312" %><%@ include file="iframe/head.jsp" %>
<title>旅游网站</title>
<%String message = (String)request.getAttribute("message");if(message == null){message = "";}if (!message.trim().equals("")){out.println("<script language='javascript'>");out.println("alert('"+message+"');");out.println("</script>");}request.removeAttribute("message");
%><div class="workzone"> <%@ include file="iframe/left.jsp" %><!--中部右侧开始--><div class="workzone-right"><div><!--右侧第一段--><div><div><h1>图片<span class="redheading">资讯</span></h1></div><div class="welcomezone"> <img src="images/welcome-img.jpg"  class="welcomeimg" /><div class="box"><div class="cont"> <%List resList3=tb.get10HotTrave();if(!resList3.isEmpty()){for(int res2=0;res2<4;res2++){List resList22=(List)resList3.get(res2);String hidecode="";if(res2>0) hidecode="class='hide'"; %><a href="<%=path%>/traveinfo.jsp?id=<%=resList22.get(0).toString()%>" target="_blank" <%=hidecode%>><img src="<%=path+"/"+resList22.get(2).toString()%>" ></A><%}}%></div><div class="item"> <a class="seld">·</a> <a>·</a> <a>·</a> <a>·</a> </div></div><div class="clear"></div></div></div><div class="clear"></div><!--右侧第二段--><div><div ><h1>最新<span class="redheading">线路</span></h1></div><div  style="margin-top:-15px"><%List resList=tb.get10PTrave();if(!resList.isEmpty()){for(int res=0;res<3;res++){List resList2=(List)resList.get(res);%><div class="column<%=res+1%>" ><div><div class="projectimg"><a href="<%=path%>/traveinfo.jsp?id=<%=resList2.get(0).toString()%>"><img src="<%=path+"/"+resList2.get(2).toString()%>" ></A></div><div><div><%String title=resList2.get(1).toString();if(title.length()>15)title=title.substring(0, 15)+"...";String body=Validate.replaceHtml(resList2.get(8).toString());if(body.length()>60)body=body.substring(0, 60)+"...";%><h2><a href="<%=path%>/traveinfo.jsp?id=<%=resList2.get(0).toString()%>"><%=title%></a></h2><div class="borderbottom"> <%=body%></div></div></div></div></div><%}}%></div></div><div class="clear"></div><!--右侧第三段--><div style="margin-top:30px"><div><h1>最热<span class="redheading">线路</span></h1></div><div style="margin-top:-15px"><%List resList1=tb.get10HotTrave();if(!resList1.isEmpty()){for(int res1=0;res1<3;res1++){List resList21=(List)resList1.get(res1);%><div class="column<%=res1+1%>" ><div><div class="projectimg"><a href="<%=path%>/traveinfo.jsp?id=<%=resList21.get(0).toString()%>"><img src="<%=path+"/"+resList21.get(2).toString()%>" ></A></div><div><div><%String title2=resList21.get(1).toString();if(title2.length()>15)title2=title2.substring(0, 15)+"...";String body1=Validate.replaceHtml(resList21.get(8).toString());if(body1.length()>60)body1=body1.substring(0, 60)+"...";%><h2><a href="<%=path%>/traveinfo.jsp?id=<%=resList21.get(0).toString()%>"><%=title2%></a></h2><div class="borderbottom"> <%=body1%></div></div></div></div></div><%}}%></div></div><div class="clear"></div><!--右侧第三段结束--> </div></div><div class="clear"></div></div><div class="clear"></div>
</div><%@ include file="iframe/foot.jsp"%>

  相关解决方案