基于javaweb+mysql的jsp+servlet旅游管理系统(java+jsp+html5+bootstrap+servlet+mysql)

基于javaweb+mysql的jsp+servlet旅游管理系统(java+jsp+html5+bootstrap+servlet+mysql)

运行环境

Java≥8、MySQL≥5.7、Tomcat≥8

开发工具

eclipse/idea/myeclipse/sts等均可配置运行

适用

课程设计,大作业,毕业设计,项目练习,学习演示等

功能说明

基于javaweb+mysql的JSP+Servlet旅游管理系统(java+jsp+html5+bootstrap+servlet+mysql)

项目介绍

本项目分为前台与后台,前台为游客浏览,后台为管理员管理;

管理员角色包含以下功能: 管理员登录,管留言信息修改,景点管理,资讯管理,图片库管理,留言管理,管理员管理等功能。

用户角色包含以下功能: 用户首页,景点介绍,人文地理,地区资讯,留言等功能。

环境需要

1.运行环境:最好是java jdk 1.8,我们在这个平台上运行的。其他版本理论上也可以。 2.IDE环境:IDEA,Eclipse,Myeclipse都可以。推荐IDEA; 3.tomcat环境:Tomcat 7.x,8.x,9.x版本均可 4.硬件环境:windows 7/8/10 1G内存以上;或者 Mac OS; 5.数据库:MySql 5.7版本; 6.是否Maven项目:否;

技术栈

HTML5+Ajax+CSS+JavaScript+BootStrap+jQuery+servlet+mysql

使用说明

  1. 使用Navicat或者其它工具,在mysql中创建对应名称的数据库,并导入项目的sql文件; 2. 使用IDEA/Eclipse/MyEclipse导入项目,Eclipse/MyEclipse导入时,若为maven项目请选择maven; 若为maven项目,导入成功后请执行maven clean;maven install命令,然后运行; 3. 将项目中util/db.properties配置文件中的数据库配置改为自己的配置; 4. 运行项目,前台运行地址输入http://localhost:8080/travel 登录 后台运行地址输入http://localhost:8080/travel/admin 登录 管理员账号/密码:admin/admin
/**
 * Servlet implementation class BannerEdit
 */
@WebServlet("/admin/BannerEdit")
public class BannerEdit extends HttpServlet {
	private static final long serialVersionUID = 1L;
       
	BanOperator banOperator=new BanOperator();
    /**
     * @see HttpServlet#HttpServlet()
     */
    public BannerEdit() {
        super();
        // TODO Auto-generated constructor stub
    }

	/**
	 * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
		doPost(request, response);
	}

	/**
	 * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
		request.setCharacterEncoding("UTF-8");
		response.setContentType("text/html;charset=UTF-8");
		PrintWriter out = response.getWriter();
		
		// 上下文
		PageContext pageContext = JspFactory.getDefaultFactory().getPageContext(this, request, response, null, true, 8*1024, true);
	
		// 上传到目录个数
		int count = 0;
		
		int banid=0;
		String banname=null;
		String bantitle=null;
		String banpath=null;
		Banner banner=null;
				out.flush();// 清空缓存
				out.println("<script>");// 输出script标签
				out.println("alert('删除成功!');");// js语句:输出alert语句
				out.println("history.back();");// js语句:输出网页回退语句
				out.println("</script>");// 输出script结尾标签
			}
			else {				 
				System.out.println("删除失败,文件不存在!");
				out.flush();// 清空缓存
				out.println("<script>");// 输出script标签
				out.println("alert('删除失败,文件不存在!');");// js语句:输出alert语句
				out.println("history.back();");// js语句:输出网页回退语句
				out.println("</script>");// 输出script结尾标签
			}
		}
		out.close();
	}

	/**
	 * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse
	 *      response)
	 */
	protected void doPost(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {
		// TODO Auto-generated method stub
		doGet(request, response);
	}

}
package com.trav.cms.scen.service;

/**
 * Servlet implementation class ScenList
 */
@WebServlet("/admin/ScenList")
public class ScenList extends HttpServlet {
	private static final long serialVersionUID = 1L;
	ScenOperator scenOperator = new ScenOperator();
public class ScenAdd extends HttpServlet {
	private static final long serialVersionUID = 1L;
	ScenOperator scenOperator=new ScenOperator();
	/**
	 * @see HttpServlet#HttpServlet()
	 */
	public ScenAdd() {
		super();
		// TODO Auto-generated constructor stub
	}

	/**
	 * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse
	 *      response)
	 */
	protected void doGet(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {
		// TODO Auto-generated method stub

		request.setCharacterEncoding("UTF-8");
		response.setContentType("text/html;charset=UTF-8");
		PrintWriter out = response.getWriter();
		// 上下文
		PageContext pageContext = JspFactory.getDefaultFactory().getPageContext(this, request, response, null, true,
				8 * 1024, true);
		// 上传到目录个数
		int count = 0;
		String scenname = null;// 景点名
		String scenintro = null;// 介绍
		String scenlevel = null;// 星级
		String scentitle = null;// 标题
		String scenfeature = null;// 特色
		String scentraff = null;// 交通
		String scenmap = null;// 地图
		String picpath = null;// 图片
		String scenadd = null;// 地址
		String scennameen = null;// 英文名
		int scenorder=0;
		String scenurl=null;
		// 景点对象
		Scen scen=null;
		System.out.println("景点图片上传");
		// 新建一个SmartUpload对象
		SmartUpload su = new SmartUpload();
		// 上传初始化
		su.initialize(pageContext);
		// 设置上传限制
				String[] userinfo={username,Integer.toString(user.getUser_id())};			
				// 绑定数据
				session.setAttribute("userinfo", userinfo);
				//session.setAttribute("userid", user.getUser_id());
				// 设置失效时间 5分钟
				session.setMaxInactiveInterval(300);
				// 做转发
				request.setAttribute("user", user);
				request.getRequestDispatcher("index.jsp").forward(request, response);
			}

			else {
				System.out.println("-*-*-登录失败!密码不正确!");
				System.out.println("用户名:" + username);
				System.out.println("密    码:" + password);
				 //response.sendRedirect("login.jsp");
				 out.flush();//清空缓存
		         out.println("<script>");//输出script标签
		         out.println("alert('-*-*-登录失败!密码不正确!');");//js语句:输出alert语句
		         out.println("history.back();");//js语句:输出网页回退语句
		         out.println("</script>");//输出script结尾标签

			}
		}

		else {
			System.out.println("-*-*-登录失败!用户名不存在!");
			System.out.println("用户名:" + username);
			System.out.println("密    码:" + password);
			 //response.sendRedirect("login.jsp");
			 out.flush();//清空缓存
	         out.println("<script>");//输出script标签
	         out.println("alert('-*-*-登录失败!用户名不存在!');");//js语句:输出alert语句
	         out.println("history.back();");//js语句:输出网页回退语句
	         out.println("</script>");//输出script结尾标签
			// 做重定向到登录页面
			//response.sendRedirect("login.jsp");
		}
		out.close();

	}

	/**
	 * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			System.out.println("不允许上传此类文件");
			e.printStackTrace();
		}
		// 上传文件
		try {
			su.upload();
		} catch (SmartUploadException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		// 将上传的文件全部保存到指定目录
		// 图片轮播的路径
		try {
			count = su.save("/image/scen");

		} catch (SmartUploadException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		System.out.println(count + "个文件上传成功!");

		// 利用Request对象获取参数之值

		// 逐一提取上传文件信息,同时可保存文件
		for (int i = 0; i < su.getFiles().getCount(); i++) {
			File file = su.getFiles().getFile(i);
			// 若文件不存在则继续
			if (file.isMissing()) {
				continue;
			}
			scenname 	= su.getRequest().getParameter("scen-name");
			scenintro	= su.getRequest().getParameter("scen-intro");
			scenlevel	= su.getRequest().getParameter("scen-level");
			scentitle	= su.getRequest().getParameter("scen-title");
			scenfeature	= su.getRequest().getParameter("scen-feature");
			scentraff	= su.getRequest().getParameter("scen-traff");
			scenmap		= su.getRequest().getParameter("scen-map");
			picpath		= "image/scen/" + file.getFileName();
			scenadd		= su.getRequest().getParameter("scen-add");
			scennameen	= su.getRequest().getParameter("scen-name-en");
			scenorder=Integer.parseInt(su.getRequest().getParameter("scen-order"));
			scenurl=su.getRequest().getParameter("scen-url");
			
			scen = new Scen(scenname, scenintro, scenlevel, scentitle, scenfeature, scentraff, scenmap, picpath, scenadd, scennameen, scenorder, scenurl);
		// 上下文
		PageContext pageContext = JspFactory.getDefaultFactory().getPageContext(this, request, response, null, true, 8*1024, true);
	
		// 上传到目录个数
		int count = 0;
		
		int banid=0;
		String banname=null;
		String bantitle=null;
		String banpath=null;
		Banner banner=null;
		
		System.out.println("轮播图片编辑");
		// 新建一个SmartUpload对象
		SmartUpload su = new SmartUpload();
		// 上传初始化
		su.initialize(pageContext);
		
		// 设置上传限制
		// 1.限制每个上传文件的最大长度为10MB
		su.setMaxFileSize(10 * 1024 * 1024);
		// 2.限制总上传文件的长度
		su.setTotalMaxFileSize(30 * 1024 * 1024);
		// 3.设定允许上传的文件
		su.setAllowedFilesList("gif,jpg,png,jpeg,bmp,ico");
		// 4.设定禁止上传的文件
		try {
			su.setDeniedFilesList("exe,bat,jsp,htm,html,,");
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			System.out.println("不允许上传此类文件");
			e.printStackTrace();	
		}
		
		
		// 上传文件
				try {
					su.upload();
				} catch (SmartUploadException e) {
					// TODO Auto-generated catch block
					e.printStackTrace();
				}
				
				// 将上传的文件全部保存到指定目录
				// 图片轮播的路径
				
				try {
					count = su.save("/image/banner");		
					
		int count = 0;
		
		int scenid=0;
		String scenname = null;// 名表横
		String scenintro = null;// 介绍
		String scenlevel = null;// 星级
		String scentitle = null;// 标题
		String scenfeature = null;// 特色
		String scentraff = null;// 交通
		String scenmap = null;// 地图
		String picpath = null;// 图片
		String scenadd = null;// 地址
		String scennameen = null;// 英文名
		int scenorder=0;
		String scenurl=null;
		// 景点对象
		Scen scen=null;
		
		System.out.println("景点图片上传");
		// 新建一个SmartUpload对象
		SmartUpload su = new SmartUpload();
		// 上传初始化
		su.initialize(pageContext);

		// 设置上传限制
		// 1.限制每个上传文件的最大长度为10MB
		su.setMaxFileSize(10 * 1024 * 1024);
		// 2.限制总上传文件的长度
		su.setTotalMaxFileSize(30 * 1024 * 1024);
		// 3.设定允许上传的文件
		su.setAllowedFilesList("gif,jpg,png,jpeg,bmp,ico");
		// 4.设定禁止上传的文件
		try {
			su.setDeniedFilesList("exe,bat,jsp,htm,html,,");
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			System.out.println("不允许上传此类文件");
			e.printStackTrace();
		}

		// 上传文件
		try {
			su.upload();
		} catch (SmartUploadException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}

		// 将上传的文件全部保存到指定目录
				out.flush();// 清空缓存
				out.println("<script>");// 输出script标签
				out.println("alert('资讯图片上传成功!');");// js语句:输出alert语句
				out.println("history.back();");// js语句:输出网页回退语句
				out.println("</script>");// 输出script结尾标签
/*				
				out.println("景点上传成功");
				out.println("<br/>图片名:" + su.getRequest().getParameter("scen-name") + "<br/><br/>");
				out.println("<br/>标题名:" + su.getRequest().getParameter("scen-title") + "<br/><br/>");
				out.println("<br/>标题名:" + "image/scen/" + file.getFileName() + "<br/><br/>");
				

				// 显示当前文件信息

				out.println("<TABLE BORDER=1>");
				out.println("<TR><TD>表单项名(FieldName)</TD><TD>" + file.getFieldName() + "</TD></TR>");
				out.println("<TR><TD>文件长度(Size)</TD><TD>" + file.getSize() + "</TD></TR>");
				out.println("<TR><TD>文件名(FileName)</TD><TD>" + file.getFileName() + "</TD></TR>");
				out.println("<TR><TD>文件扩展名(FileExt)</TD><TD>" + file.getFileExt() + "</TD></TR>");
				out.println("<TR><TD>文件全名(FilePathName)</TD><TD>" + file.getFilePathName() + "</TD></TR>");
				out.println("</TABLE><BR/>");*/
			}

			/*
			 * // 将文件另存为 try { file.saveAs("/image/banner" + file.getFileName(),
			 * SmartUpload.SAVE_VIRTUAL); file.saveAs("E:/Web//" +
			 * file.getFileName(), SmartUpload.SAVE_PHYSICAL); } catch
			 * (SmartUploadException e) { // TODO Auto-generated catch block
			 * e.printStackTrace(); }
			 */

		}
		
		
		
	}

	/**
	 * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
		doGet(request, response);
		String info_txt = null;
		String info_tag = null;
		String info_pic = null;
		String info_url = null;
		int info_order = 0;

		// 资讯实体对象
		Info info = null;
		
		System.out.println("资讯图片上传--/admin/InfoAdd");
		// 新建一个SmartUpload对象
		SmartUpload su = new SmartUpload();
		// 上传初始化
		su.initialize(pageContext);

		// 设置上传限制
		// 1.限制每个上传文件的最大长度为10MB
		su.setMaxFileSize(10 * 1024 * 1024);
		// 2.限制总上传文件的长度
		su.setTotalMaxFileSize(30 * 1024 * 1024);
		// 3.设定允许上传的文件
		su.setAllowedFilesList("gif,jpg,png,jpeg,bmp,ico");
		// 4.设定禁止上传的文件
		try {
			su.setDeniedFilesList("exe,bat,jsp,htm,html,,");
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			System.out.println("不允许上传此类文件");
			e.printStackTrace();
		}

		// 上传文件
		try {
			su.upload();
		} catch (SmartUploadException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}

		// 将上传的文件全部保存到指定目录
		// 图片轮播的路径
		SmartUpload su = new SmartUpload();
		// 上传初始化
		su.initialize(pageContext);

		// 设置上传限制
		// 1.限制每个上传文件的最大长度为10MB
		su.setMaxFileSize(10 * 1024 * 1024);
		// 2.限制总上传文件的长度
		su.setTotalMaxFileSize(30 * 1024 * 1024);
		// 3.设定允许上传的文件
		su.setAllowedFilesList("gif,jpg,png,jpeg,bmp,ico");
		// 4.设定禁止上传的文件
		try {
			su.setDeniedFilesList("exe,bat,jsp,htm,html,,");
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			System.out.println("不允许上传此类文件");
			e.printStackTrace();
		}

		// 上传文件
		try {
			su.upload();
		} catch (SmartUploadException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}

		// 将上传的文件全部保存到指定目录
		// 图片轮播的路径

		try {
			count = su.save("/image/banner");

		} catch (SmartUploadException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		System.out.println(count + "个文件上传成功!");

		// 利用Request对象获取参数之值

/**
 * Servlet implementation class ScenShow
 */
@WebServlet("/ScenShow")
public class ScenShow extends HttpServlet {
	private static final long serialVersionUID = 1L;
	ScenOperator scenOperator = new ScenOperator();

	/**
	 * @see HttpServlet#HttpServlet()
	 */
	public ScenShow() {
		super();
		// TODO Auto-generated constructor stub
	}

	/**
	 * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse
	 *      response)
	 */
	protected void doGet(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {
		// TODO Auto-generated method stub

		request.setCharacterEncoding("UTF-8");
		response.setContentType("text/html;charset=UTF-8");
		PrintWriter out = response.getWriter();
		System.out.println("*--------------------------------------------------*");
		System.out.println("*---景点图----ScenShow");

		int offset = Integer.parseInt(request.getParameter("offset"));
		int size = Integer.parseInt(request.getParameter("size"));
		
		System.out.println("offset--"+offset+",size---"+size);
		// Json数组
		JSONArray scenMore = new JSONArray();

		try {
			List<Scen> list = scenOperator.listMore(offset, size);

			for (int i = 0; i < list.size(); i++) {
				// Json对象
				JSONObject json = new JSONObject();

				// 查询结果集
				Scen scen = list.get(i);

				/*
				 * json.put("picname", banner.getBanname());
				out.println("<TR><TD>文件扩展名(FileExt)</TD><TD>" + file.getFileExt() + "</TD></TR>");
				out.println("<TR><TD>文件全名(FilePathName)</TD><TD>" + file.getFilePathName() + "</TD></TR>");
				out.println("</TABLE><BR/>");*/
			}

			/*
			 * // 将文件另存为 try { file.saveAs("/image/banner" + file.getFileName(),
			 * SmartUpload.SAVE_VIRTUAL); file.saveAs("E:/Web//" +
			 * file.getFileName(), SmartUpload.SAVE_PHYSICAL); } catch
			 * (SmartUploadException e) { // TODO Auto-generated catch block
			 * e.printStackTrace(); }
			 */

		}
		
		
		
	}

	/**
	 * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
		doGet(request, response);
	}

}
package com.trav.cms.info.service;

/**
 * Servlet implementation class InfoEdit
 */
@WebServlet("/admin/InfoEdit")
public class InfoEdit extends HttpServlet {
	private static final long serialVersionUID = 1L;
			for (int i = 0; i < list.size(); i++) {
				// Json对象	
				JSONObject json=new JSONObject();

				// 查询结果集
				Scen scen = list.get(i);
				//讲遍历对象的值分别放进json对象
				json.put("scenid", scen.getScenid());
				json.put("scenname", scen.getScenname());
				json.put("scenlevel",scen.getScenlevel());
				json.put("scentitle", scen.getScentitle());
				json.put("scenadd", scen.getScenadd());
				json.put("scenurl", scen.getScenurl());
				json.put("scenpic", scen.getPicpath());
				json.put("scenfeature", scen.getScenfeature());
				// 将Json对象放入数组
				scenJson.add(json);
			}

			// 将json数组传到页面
			out.print(scenJson);
		} catch (Exception e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}

		out.close();
	}

	/**
	 * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
		doGet(request, response);
	}

}
package com.trav.cms.scen.service;


/**
 * Servlet implementation class ScenList
 */
@WebServlet("/admin/ScenList")
public class ScenList extends HttpServlet {
	private static final long serialVersionUID = 1L;
	ScenOperator scenOperator = new ScenOperator();

	/**
	 * @see HttpServlet#HttpServlet()
	 */
	public ScenList() {
		super();
		// TODO Auto-generated constructor stub
	}

	/**
	 * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse
	 *      response)
	 */
	protected void doGet(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {
		// TODO Auto-generated method stub

		request.setCharacterEncoding("UTF-8");
		response.setContentType("text/html;charset=UTF-8");
		PrintWriter out = response.getWriter();
		System.out.println("*--------------------------------------------------*");
		System.out.println("*---景点图----ScenList");

		int offset = Integer.parseInt(request.getParameter("offset"));
		int size = Integer.parseInt(request.getParameter("size"));
		
		System.out.println("offset--"+offset+",size---"+size);
		// Json数组
		JSONArray scenMore = new JSONArray();
		try {
			List<Scen> list = scenOperator.listMore(offset, size);

			for (int i = 0; i < list.size(); i++) {
		try {
			//得到模糊查询的结果集
			List<Scen> list = scenOperator.findScenByName(scenname);

			//遍历该集合
			for (int i = 0; i < list.size(); i++) {
				// Json对象	
				JSONObject json=new JSONObject();

				// 查询结果集
				Scen scen = list.get(i);
				//讲遍历对象的值分别放进json对象
				json.put("scenid", scen.getScenid());
				json.put("scenname", scen.getScenname());
				json.put("scenlevel",scen.getScenlevel());
				json.put("scentitle", scen.getScentitle());
				json.put("scenadd", scen.getScenadd());
				json.put("scenurl", scen.getScenurl());
				json.put("scenpic", scen.getPicpath());
				json.put("scenfeature", scen.getScenfeature());
				// 将Json对象放入数组
				scenJson.add(json);
			}

			// 将json数组传到页面
			out.print(scenJson);
		} catch (Exception e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}

		out.close();
	}

	/**
	 * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
		doGet(request, response);
	}

}
package com.trav.cms.scen.service;


 

/**
 * Servlet implementation class InfoAdd
 */
@WebServlet("/admin/InfoAdd")
public class InfoAdd extends HttpServlet {
	private static final long serialVersionUID = 1L;
       InfoOperator infoOperator=new InfoOperator();
    /**
     * @see HttpServlet#HttpServlet()
     */
    public InfoAdd() {
        super();
        // TODO Auto-generated constructor stub
    }

	/**
	 * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub

		request.setCharacterEncoding("UTF-8");
		response.setContentType("text/html;charset=UTF-8");
		PrintWriter out = response.getWriter();

		// 上下文
		PageContext pageContext = JspFactory.getDefaultFactory().getPageContext(this, request, response, null, true,
				8 * 1024, true);

		// 上传到目录个数
		int count = 0;
		
		
		String info_title = null;
 * Servlet implementation class ScenDel
 * 删除景点
 */
@WebServlet("/admin/ScenDel")
public class ScenDel extends HttpServlet {
	private static final long serialVersionUID = 1L;
      ScenOperator scenOperator=new ScenOperator();
    /**
     * @see HttpServlet#HttpServlet()
     */
    public ScenDel() {
        super();
        // TODO Auto-generated constructor stub
    }

	/**
	 * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
		request.setCharacterEncoding("UTF-8");
		response.setContentType("text/html;charset=UTF-8");
		PrintWriter out=response.getWriter();
		
		//获取要删除的景点ID
		int scenid=Integer.parseInt(request.getParameter("scenid"));
		//景点图片
		String scenpic=request.getParameter("scenpic");
		System.out.println("/admin/ScenDel");
		
		if (scenOperator.delScen(scenid)) {		
			//获取要删除的图片或者文件的绝对路径
			File file = new File(request.getServletContext().getRealPath(getServletInfo())+"/"+scenpic);	 
			//路径和文件名称
			System.out.println(file.getPath());
			System.out.println(file.getName());
			//如果文件存在
			if (file.exists()) {
				//file.delete();
				System.out.println("删除成功");
				out.flush();// 清空缓存
				out.println("<script>");// 输出script标签
				out.println("alert('删除成功!');");// js语句:输出alert语句
				out.println("history.back();");// js语句:输出网页回退语句
				out.println("</script>");// 输出script结尾标签
			}
				out.println("<TR><TD>文件扩展名(FileExt)</TD><TD>" + file.getFileExt() + "</TD></TR>");
				out.println("<TR><TD>文件全名(FilePathName)</TD><TD>" + file.getFilePathName() + "</TD></TR>");
				out.println("</TABLE><BR/>");*/
			}

			/*
			 * // 将文件另存为 try { file.saveAs("/image/banner" + file.getFileName(),
			 * SmartUpload.SAVE_VIRTUAL); file.saveAs("E:/Web//" +
			 * file.getFileName(), SmartUpload.SAVE_PHYSICAL); } catch
			 * (SmartUploadException e) { // TODO Auto-generated catch block
			 * e.printStackTrace(); }
			 */

		}
		
		
		
	}

	/**
	 * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
		doGet(request, response);
	}

}
package com.trav.cms.info.service;

				8 * 1024, true);

		// 上传到目录个数
		int count = 0;

		int info_id = 0;
		String info_title = null;
		String info_txt = null;
		String info_tag = null;
		String info_pic = null;
		 
		String info_url = null;
		String info_date = null;
		int info_order = 0;

		// 资讯实体对象
		Info info = null;

		System.out.println("资讯图片上传");
		// 新建一个SmartUpload对象
		SmartUpload su = new SmartUpload();
		// 上传初始化
		su.initialize(pageContext);

		// 设置上传限制
		// 1.限制每个上传文件的最大长度为10MB
		su.setMaxFileSize(10 * 1024 * 1024);
		// 2.限制总上传文件的长度
		su.setTotalMaxFileSize(30 * 1024 * 1024);
		// 3.设定允许上传的文件
		su.setAllowedFilesList("gif,jpg,png,jpeg,bmp,ico");
		// 4.设定禁止上传的文件
		try {
			su.setDeniedFilesList("exe,bat,jsp,htm,html,,");
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			System.out.println("不允许上传此类文件");
			e.printStackTrace();
		}

		for (int i = 0; i < su.getFiles().getCount(); i++) {
			File file = su.getFiles().getFile(i);
			// 若文件不存在则继续
			if (file.isMissing()) {
				continue;
			}
			banname = su.getRequest().getParameter("ban-name");
			bantitle = su.getRequest().getParameter("ban-title");
			banpath = "image/banner/" + file.getFileName();
			banner = new Banner(banname, bantitle, banpath);
			if (banOperator.addBan(banner)) {
				System.out.println("getFileName***--" + file.getFilePathName());
				out.flush();// 清空缓存
				out.println("<script>");// 输出script标签
				out.println("alert('轮播图图片上传成功!');");// js语句:输出alert语句
				out.println("history.back();");// js语句:输出网页回退语句
				out.println("</script>");// 输出script结尾标签

				// 显示当前文件信息
				/*out.println("轮播图图片上传成功");
				out.println("<br/>图片名:" + su.getRequest().getParameter("ban-name") + "<br/><br/>");
				out.println("<br/>标题名:" + su.getRequest().getParameter("ban-title") + "<br/><br/>");
				out.println("<br/>标题名:" + "image/banner/" + file.getFileName() + "<br/><br/>");
				

				out.println("<TABLE BORDER=1>");
				out.println("<TR><TD>表单项名(FieldName)</TD><TD>" + file.getFieldName() + "</TD></TR>");
				out.println("<TR><TD>文件长度(Size)</TD><TD>" + file.getSize() + "</TD></TR>");
				out.println("<TR><TD>文件名(FileName)</TD><TD>" + file.getFileName() + "</TD></TR>");
				out.println("<TR><TD>文件扩展名(FileExt)</TD><TD>" + file.getFileExt() + "</TD></TR>");
				out.println("<TR><TD>文件全名(FilePathName)</TD><TD>" + file.getFilePathName() + "</TD></TR>");
				out.println("</TABLE><BR/>");*/
			}

			/*
			 * // 将文件另存为 try { file.saveAs("/image/banner" + file.getFileName(),
			 * SmartUpload.SAVE_VIRTUAL); file.saveAs("E:/Web//" +
			 * file.getFileName(), SmartUpload.SAVE_PHYSICAL); } catch
			 * (SmartUploadException e) { // TODO Auto-generated catch block
			 * e.printStackTrace(); }
			 */
		// 上传初始化
		su.initialize(pageContext);

		// 设置上传限制
		// 1.限制每个上传文件的最大长度为10MB
		su.setMaxFileSize(10 * 1024 * 1024);
		// 2.限制总上传文件的长度
		su.setTotalMaxFileSize(30 * 1024 * 1024);
		// 3.设定允许上传的文件
		su.setAllowedFilesList("gif,jpg,png,jpeg,bmp,ico");
		// 4.设定禁止上传的文件
		try {
			su.setDeniedFilesList("exe,bat,jsp,htm,html,,");
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			System.out.println("不允许上传此类文件");
			e.printStackTrace();
		}

		// 上传文件
		try {
			su.upload();
		} catch (SmartUploadException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}

		// 将上传的文件全部保存到指定目录
		// 图片轮播的路径

		try {
			count = su.save("/image/scen");

		} catch (SmartUploadException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		System.out.println(count + "个文件上传成功!");

		// 利用Request对象获取参数之值

		// 逐一提取上传文件信息,同时可保存文件
		for (int i = 0; i < su.getFiles().getCount(); i++) {
			File file = su.getFiles().getFile(i);
			// 若文件不存在则继续
			if (file.isMissing()) {
			throws ServletException, IOException {
		// TODO Auto-generated method stub
		doGet(request, response);
	}

}
package com.trav.cms.info.service;

 

/**
 * Servlet implementation class InfoAdd
 */
@WebServlet("/admin/InfoAdd")
public class InfoAdd extends HttpServlet {
	private static final long serialVersionUID = 1L;
       InfoOperator infoOperator=new InfoOperator();
    /**
     * @see HttpServlet#HttpServlet()
     */
    public InfoAdd() {
        super();
        // TODO Auto-generated constructor stub
    }

	/**
	 * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub

		request.setCharacterEncoding("UTF-8");
		response.setContentType("text/html;charset=UTF-8");
		PrintWriter out = response.getWriter();


/**
 * Servlet implementation class ScenAdd
 * 景点添加
 */
@WebServlet("/admin/ScenAdd")
public class ScenAdd extends HttpServlet {
	private static final long serialVersionUID = 1L;
	ScenOperator scenOperator=new ScenOperator();
	/**
	 * @see HttpServlet#HttpServlet()
	 */
	public ScenAdd() {
		super();
		// TODO Auto-generated constructor stub
	}

	/**
	 * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse
	 *      response)
	 */
	protected void doGet(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {
		// TODO Auto-generated method stub

		request.setCharacterEncoding("UTF-8");
		response.setContentType("text/html;charset=UTF-8");
		PrintWriter out = response.getWriter();
		// 上下文
		PageContext pageContext = JspFactory.getDefaultFactory().getPageContext(this, request, response, null, true,
				8 * 1024, true);
		// 上传到目录个数
		int count = 0;
		// TODO Auto-generated method stub
		request.setCharacterEncoding("UTF-8");
		response.setContentType("text/html;charset=UTF-8");
		PrintWriter out = response.getWriter();

		// 上下文
		PageContext pageContext = JspFactory.getDefaultFactory().getPageContext(this, request, response, null, true,
				8 * 1024, true);

		// 上传到目录个数
		int count = 0;
		
		int scenid=0;
		String scenname = null;// 名表横
		String scenintro = null;// 介绍
		String scenlevel = null;// 星级
		String scentitle = null;// 标题
		String scenfeature = null;// 特色
		String scentraff = null;// 交通
		String scenmap = null;// 地图
		String picpath = null;// 图片
		String scenadd = null;// 地址
		String scennameen = null;// 英文名
		int scenorder=0;
		String scenurl=null;
		// 景点对象
		Scen scen=null;
		
		System.out.println("景点图片上传");
		// 新建一个SmartUpload对象
		SmartUpload su = new SmartUpload();
		// 上传初始化
		su.initialize(pageContext);

		// 设置上传限制
		// 1.限制每个上传文件的最大长度为10MB
		su.setMaxFileSize(10 * 1024 * 1024);
		// 2.限制总上传文件的长度
		su.setTotalMaxFileSize(30 * 1024 * 1024);
		// 3.设定允许上传的文件

			/*
			 * // 将文件另存为 try { file.saveAs("/image/banner" + file.getFileName(),
			 * SmartUpload.SAVE_VIRTUAL); file.saveAs("E:/Web//" +
			 * file.getFileName(), SmartUpload.SAVE_PHYSICAL); } catch
			 * (SmartUploadException e) { // TODO Auto-generated catch block
			 * e.printStackTrace(); }
			 */

		}

	}

}
package com.trav.cms.user.service;

/**
 * Servlet implementation class UserAdd
 */
@WebServlet("/admin/UserAdd")
public class UserAdd extends HttpServlet {
	private static final long serialVersionUID = 1L;
	UserOperator userOperator = new UserOperator();

	/**
	 * @see HttpServlet#HttpServlet()
	 */
	public UserAdd() {
		super();
		// TODO Auto-generated constructor stub
	}

					File file = su.getFiles().getFile(i);
					// 若文件不存在则继续
					if (file.isMissing()) {
						continue;
					}
					banid=Integer.parseInt(su.getRequest().getParameter("ban-id"));
					banname = su.getRequest().getParameter("ban-name");
					bantitle= su.getRequest().getParameter("ban-title");
					banpath = "image/banner/"+file.getFileName();
					banner=new Banner(banid,banname, bantitle, banpath);
					
					if (banOperator.editBan(banner)) {
						System.out.println("getFileName***--"+file.getFilePathName());
						out.flush();// 清空缓存
						out.println("<script>");// 输出script标签
						out.println("alert('轮播图图片编辑成功!');");// js语句:输出alert语句
						out.println("history.back();");// js语句:输出网页回退语句
						out.println("</script>");// 输出script结尾标签
						 
						
						/*
						
						// 显示当前文件信息
						out.println("<br/>图片名:" + su.getRequest().getParameter("ban-name") + "<br/><br/>");
						out.println("<br/>标题名:" + su.getRequest().getParameter("ban-title") + "<br/><br/>");
						out.println("<br/>标题名:" + "image/banner/"+file.getFileName() + "<br/><br/>");
						out.println("<TABLE BORDER=1>");
						out.println("<TR><TD>表单项名(FieldName)</TD><TD>" + file.getFieldName() + "</TD></TR>");
						out.println("<TR><TD>文件长度(Size)</TD><TD>" + file.getSize() + "</TD></TR>");
						out.println("<TR><TD>文件名(FileName)</TD><TD>" + file.getFileName() + "</TD></TR>");
						out.println("<TR><TD>文件扩展名(FileExt)</TD><TD>" + file.getFileExt() + "</TD></TR>");
						out.println("<TR><TD>文件全名(FilePathName)</TD><TD>" + file.getFilePathName() + "</TD></TR>");
						out.println("</TABLE><BR/>");*/
					}
					
					
/*
					// 将文件另存为
					try {
						file.saveAs("/image/banner" + file.getFileName(), SmartUpload.SAVE_VIRTUAL);
						file.saveAs("E:/Web//" + file.getFileName(), SmartUpload.SAVE_PHYSICAL);
					} catch (SmartUploadException e) {
						// TODO Auto-generated catch block
						e.printStackTrace();
					}*/
					
				}
		
	}

请添加图片描述

请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
一、项目简介本课程演示的是一套基于SSM实现的旅游管理系统,主要针对计算机相关专业的正在做毕设的学生与需要项目实战练习的Java学习者。课程包含:1. 项目源码、项目文档、数据库脚本、软件工具等所有资料2. 带你从零开始部署运行本套系统3. 该项目附带的源码资料可作为毕设使用4. 提供技术答疑二、技术实现后台框架:Spring、SpringMVC、MyBatisUI界面:JSP、jQuery 、BootStrap数据库:MySQL 三、系统功能本系统分为前台旅游界面和后台管理,包含三种角色:注册用户、旅游公司和管理员系统的功能模块如下: 1.登陆注册模块 管理员的登录模块:管理员登录系统对本系统其他管理模块进行管理。 用户的登录模块:用户登录本系统,对个人的信息等进行查询,操作可使用的功能。 用户注册模块:游客用户可以进行用户注册,系统会反馈是否注册成功。 添加管理员模块:向本系统中添加更多的管理人员,管理员包括普通管理员和超级管理员。 2.景点信息管理模块: 景点信息列表:将数据库的景点信息表以列表的形式呈现给管理员。 添加景点信息:实现管理员添加景点信息。 修改景点信息:实现管理员修改景点信息。 3.公告文章管理模块: 公告文章列表:将数据库的公告文章表以列表的形式呈现给管理员。 添加公告文章:实现管理员添加公告文章。 修改公告文章:实现管理员修改公告文章。 4.旅游线路管理模块: 旅游线路列表:显示系统的所有旅游线路,可以通过关键字查询。 旅游线路删除:对输入错误或过期的旅游线路删除。 5.变幻图管理模块: 变幻图列表:显示系统的所有变幻图,可以通过关键字查询。 变幻图删除:对输入错误或过期的变幻图删除。 6.用户模块: 资料管理:用户登录本系统。可以对自己的个人主页进行查看。 系统信息:用户可以查看自己的系统提示信息。 修改资料:用户可以修改自己的账号密码。 信息搜索:用户可以通过关键字搜索站内信息。 密码修改:用户可以修改个人登录密码。 7.系统管理模块 8.退出模块该系统功能完善、界面美观、操作简单、功能齐全、管理便捷,具有很高的实际应用价值。四、项目截图1)前台首页2)旅游景点详情3)旅游线路报名4)系统后台登陆5)后台管理界面  更多Java毕设项目请关注【毕设系列课程】https://edu.csdn.net/lecturer/2104   
### 回答1: 基于servlet+jsp+mysql开发的JavaWeb学生成绩管理系统,可以实现对学生信息、课程信息和成绩信息的管理。系统的主要功能包括学生信息的添加、修改、删除和查询,课程信息的添加、修改、删除和查询,成绩信息的录入、修改、删除和查询等。同时,系统还可以生成各种报表,如学生信息报表、课程信息报表、成绩信息报表等,方便管理员进行数据分析和决策。系统的开发需要掌握JavaWeb开发技术、ServletJSP的使用、MySQL数据库的操作等知识。 ### 回答2: JavaWeb学生成绩管理系统是一项基于servletjspmysql开发的管理信息系统,旨在为教育管理部门和教师提供一个便利的平台,帮助他们轻松地管理和分析学生成绩和课程信息。 该系统涵盖了学生信息管理、课程信息管理、成绩管理、教师信息管理、管理员信息管理五个模块。在学生信息管理模块,管理员可以添加、修改及删除学生信息,同时可对学生信息进行查询和导出等操作;在课程信息管理模块,管理员可以添加、修改及删除课程信息,同时可对课程信息进行查询和导出等操作。 在成绩管理模块,管理员可以将学生从课程中添加进去,对学生的成绩进行管理、修改及删除等操作。同时,该模块内置了成绩分析和统计功能,使得教师可以使用统计图表看到平均分、最高分、最低成绩等信息,以更好地了解学生的学习情况。 在教师信息管理模块,管理员可以添加、修改及删除教师信息,同时可对教师信息进行查询和导出等操作。教师可以使用该模块对自己授课的课程进行成绩管理并进行统计分析。 在管理员信息管理模块,管理员可以对自己的账号信息进行管理,包括修改密码、添加、删除及修改管理员信息等操作。 总体来说,JavaWeb学生成绩管理系统通过servletjspmysql等技术的应用,实现了对学生成绩、课程等信息进行全方位管理,并且使得数据的统计、排序、查询等功能更加的便捷和高效,为教育管理和学习提供了极大的便利。 ### 回答3: 基于servlet jsp mysql开发javaweb学生成绩管理系统是一种非常实用的系统,可以帮助管理者和学生更好地进行成绩管理。通过该系统,管理者可以随时查看学生的成绩情况,对学生进行动态管理,帮助学生更好地提高成绩。同时,学生也可以随时了解自己在课程中的成绩和提升方向,方便自我调整和完善。 该系统采用了servlet jsp mysql技术进行开发,具有以下优点: 1. 通过servlet技术,可以实现后台数据传输和处理,确保系统的稳定性和安全性; 2. 通过jsp技术,可以实现动态网页的生成和展示,提供更好的用户体验;同时,jsp还可以方便地进行数据查询和修改操作; 3. 通过mysql作为数据库,可以实现数据的存储和管理,确保数据的完整性和可靠性;同时,mysql还具有较高的性能和扩展性,可以满足系统的快速增长。 在实现该系统时,需要进行以下步骤: 1. 分析需求,确定系统的功能和界面设计; 2. 设计数据库结构,确定数据表和字段; 3. 编写servletjsp代码,实现数据的查询、修改和展示功能; 4. 联调测试,确保系统的稳定性和可用性; 5. 部署上线,让用户可以随时使用系统。 总之,基于servlet jsp mysql技术开发javaweb学生成绩管理系统,可以有效提高学生的成绩和帮助管理者更好地管理学生成绩,是一种非常实用和有用的系统

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值