基于javaweb+mysql的jsp+servlet火车票预订系统(java+jdbc+jsp+servlet+html+mysql)

基于javaweb+mysql的jsp+servlet火车票预订系统(java+jdbc+jsp+servlet+html+mysql)

运行环境

Java≥8、MySQL≥5.7、Tomcat≥8

开发工具

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

适用

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

功能说明

基于javaweb+mysql的JSP+Servlet火车票预订系统(java+jdbc+jsp+servlet+html+mysql)

一、项目运行 环境配置:

Jdk1.8 + Tomcat8.5 + mysql + Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)

项目技术:

JSP + Servlert + html+ css + JavaScript + JQuery + Ajax 等等;

			
		}
		request.setAttribute("list", list);
		request.getRequestDispatcher("QueryRoute.jsp").forward(request, response);
		
		
	}

	/**
	 * @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);
	
	response.setContentType("text/html;charset=utf-8");
//		//PrintWriter out = response.getWriter();
//		this.doGet(request, response);
	}

}

/**
 * Servlet implementation class DeleteRouteServlet
 */
public class DeleteRouteServlet extends HttpServlet {
	private static final long serialVersionUID = 1L;
       
    /**
     * @see HttpServlet#HttpServlet()
     */
    public DeleteRouteServlet() {
        super();
        // TODO Auto-generated constructor stub
    }
	}

	/**
	 * @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);
	}

}

/**
 * Servlet implementation class RefundTicketServlet
 */
public class RefundTicketServlet extends HttpServlet {
	private static final long serialVersionUID = 1L;
       
    /**
     * @see HttpServlet#HttpServlet()
     */
    public RefundTicketServlet() {
        super();
        // TODO Auto-generated constructor stub
    }
			String price = request.getParameter("price");
			Integer Price = Integer.parseInt(price);
			System.out.println(ticketid+ "   " +  orderid+"   "+price);
			TicketDAO ticketDao = DAOFactory.getITicketDAOInstance();
			try {
				if(ticketDao.doDeleteTicket(ticketid))
				{
					int balance = user.getBalance();
					int nbalance = balance + Price;
					user.setBalance(nbalance);
					UserDAO UserDao = DAOFactory.getIUserDAOInstance();
					if(UserDao.doUpdate(user))
					{
						System.out.println("余额返回");
						OrderDAO OrderDao = DAOFactory.getIOrderDAOInstance();
						Order order = new Order();
						order = OrderDao.findByOrderId(orderid);
						System.out.println(order);
						java.sql.Timestamp lastUpdateDate= new java.sql.Timestamp(System.currentTimeMillis());
						order.setLastUpdateDate(lastUpdateDate);
						order.setStatus("已取消");
						OrderDAO OrderDao1 = DAOFactory.getIOrderDAOInstance();
						if(OrderDao1.doUpdateOrder(order))
						{
							System.out.println("更新订单成功");
				            request.getRequestDispatcher("QueryTicketServlet").forward(request, response);
						}
						else
							System.out.println("更新订单失败");
					}
						
					else
						System.out.println("更新余额失败");
					
					
				}
				
			} catch (Exception e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}

		}
	}

	/**
	 * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
		String noSeatCount = request.getParameter("noSeatCount");
		String nPrice = request.getParameter("nPrice");
		String remark = request.getParameter("remark");
//		String fromStationId = request.getParameter("fromStationId");
//		String toStationId = request.getParameter("toStationId" );
		Integer bS = Integer.parseInt(businessSeatCount);
		Integer spS = Integer.parseInt(specialSeatCount);
		Integer sfS = Integer.parseInt(softSeatCount);
		Integer hS = Integer.parseInt(hardSeatCount);
		Integer nS = Integer.parseInt(noSeatCount);
		Integer bP = Integer.parseInt(bPrice);
		Integer spP = Integer.parseInt(spPrice);
		Integer sfP = Integer.parseInt(sfPrice);
		Integer hP = Integer.parseInt(hPrice);
		Integer nP = Integer.parseInt(nPrice);
//		Long fSId = Long.parseLong(fromStationId);
//		Long tSId = Long.parseLong(toStationId);
		route.setName(routeName);
		route.setType(routeType);
		route.setFromStation(fromStation);
		route.setToStation(toStation);
		route.setDepartureTime(Timestamp.valueOf(departureTime));
		route.setArrivalTime(Timestamp.valueOf(arrivalTime));
		route.setBusinessSeatCount(bS);
		route.setSpecialSeatCount(spS);
		route.setSoftSeatCount(sfS);
		route.setHardSeatCount(hS);
		route.setNoSeatCount(nS);
		route.setbPirce(bP);
		route.setSpPrice(spP);
		route.setSfPrice(sfP);
		route.sethPrice(hP);
		route.setnPrice(nP);
		route.setRemark(remark);
		try {
			RouteDAO routeDao1 = DAOFactory.getIRouteDAOInstance();
			if(routeDao1.doUpdateRoute(route))
			{	System.out.println("更新车次成功");
			RequestDispatcher rd = request.getRequestDispatcher("adRoute.jsp");
			rd.forward(request, response);
			}
			else
				System.out.println("更新车次失败");
		} catch (Exception e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		
		}
//	}

 * Servlet implementation class UpdateRouteServlet
 */
public class UpdateRouteServlet extends HttpServlet {
	private static final long serialVersionUID = 1L;
       
    /**
     * @see HttpServlet#HttpServlet()
     */
    public UpdateRouteServlet() {
        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
		// response.getWriter().append("Served at: ").append(request.getContextPath());
		HttpSession session = request.getSession();
		String admin = (String) session.getAttribute("admin");
//		if(admin == null)
//			System.out.println("请以管理员登陆");
//		else{
		//String routeName = request.getParameter("routeName");
//		String routeType = request.getParameter("trainType");
		//String fromStation = request.getParameter("fromStation");
		//String toStation = request.getParameter("toStation");
		String routeId = request.getParameter("routeId");
		Long routeid = Long.parseLong(routeId);
		
		String routeName = request.getParameter("routeName");
		String routeType = request.getParameter("routeType");
		String fromStation = request.getParameter("fromStation");
		String toStation = request.getParameter("toStation");
		
		String departureTime= request.getParameter("departureTime"); 
		System.out.println(departureTime+ " " +fromStation+toStation );
		System.out.println(Timestamp.valueOf(departureTime));
		System.out.println(departureTime);

		String arrivalTime = request.getParameter("arrivalTime");
		RouteDAO routeDao = DAOFactory.getIRouteDAOInstance();
		
		Route route = new Route();
		
//			try { 
//			timeDate = sdf.format(now); 
//			} catch (ParseException e) { 
//			e.printStackTrace(); 
//			}
			//java.sql.Date departureTime = new java.sql.Date(timeDate.getTime());
			
			String status = "待付款";
//			SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH-mm-ss");
			
			java.sql.Timestamp createDate= new java.sql.Timestamp(System.currentTimeMillis());
			//System.out.println(sdf.parse(sdf.format(createDate)));
//			System.out.println(departureTime);
			int userId = user.getId();
			Long userid =(long)userId;
			System.out.println(user.getId());
			OrderDAO  orderDao = DAOFactory.getIOrderDAOInstance();
			Order order = new Order();
			order.setStatus(status);
			order.setCreateDate(createDate);
			order.setLastUpdateDate(createDate);
			order.setUserId(userid);
			order.setRouteId(route.getId());
			
			try {
				orderDao.doCreateOrder(order);
				OrderDAO  orderDao1 = DAOFactory.getIOrderDAOInstance();
				order = orderDao1.findByMaxOrderId();
			} catch (Exception e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
				
			}
			session.setAttribute("orderId",order.getId() ); //可能获取空的ID
//			session.setAttribute("routeName", routeName);
//			session.setAttribute("trainType", trainType);
			session.setAttribute("seatType", seatType);
//			session.setAttribute("price", price);
//			session.setAttribute("departureTime", departureTime);
//			request.setAttribute("a","aaa132");
			RequestDispatcher rd = request.getRequestDispatcher("CreateTicketServlet");
			rd.forward(request, response);
		}
		    else{
	 */
	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
		doGet(request, response);
	}

}

/**
 * Servlet implementation class RefundTicketServlet
 */
public class RefundTicketServlet extends HttpServlet {
	private static final long serialVersionUID = 1L;
       
    /**
     * @see HttpServlet#HttpServlet()
     */
    public RefundTicketServlet() {
        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
		//response.getWriter().append("Served at: ").append(request.getContextPath());
		HttpSession session = request.getSession(); 
		String username = (String) session.getAttribute("user");
		Integer Balance = Integer.parseInt(balance);
		java.util.Date timeDate = null; 
		try { 
		timeDate = sdf.parse(birthday); 
		} catch (ParseException e) { 
		e.printStackTrace(); 
		}
		java.sql.Date Birthday = new java.sql.Date(timeDate.getTime());
		HttpSession session = request.getSession(); 
		String admin = (String) session.getAttribute("admin");
		
		if(admin == null )
			System.out.println("请先登录");
		else{
		System.out.println(username);
		
		UserDAO userDao = DAOFactory.getIUserDAOInstance();
		
		User user = new User();
		try {
			user = userDao.findById(username);
		} catch (Exception e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
			System.out.println(user);
			user.setPhoneNumber(phoneNumber);
			user.setMail(mail);
			user.setName(name);
			user.setIdCard(idCard);
			user.setIdType(idType);
			user.setBirthday(Birthday);
			user.setBalance(Balance);
			System.out.println(user);
			try {
				UserDAO userDao1 = DAOFactory.getIUserDAOInstance();
				if(userDao1.doUpdate(user))
				{
				System.out.println("修改成功");
				request.getRequestDispatcher("adUser.jsp").forward(request, response);
				UserDAO userDao2 = DAOFactory.getIUserDAOInstance();

		// TODO Auto-generated method stub
		//	}

	/**
	 * @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);
			}

}

/**
 * Servlet implementation class ChangePasswordServlet
 */
public class UpdateProfileServlet extends HttpServlet {
	private static final long serialVersionUID = 1L;
       
    /**
     * @see HttpServlet#HttpServlet()
     */
    public UpdateProfileServlet() {
        super();
            else
            	{request.setAttribute("message", "失败");
            request.getRequestDispatcher("loginError.jsp").forward(request, response);
            	}
		}
	}

		// TODO Auto-generated method stub
		//	}

	/**
	 * @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);
			}

}

/**
 * Servlet implementation class ChangePasswordServlet
 */
public class UpdateProfileServlet extends HttpServlet {
	private static final long serialVersionUID = 1L;
       
    /**
     * @see HttpServlet#HttpServlet()
     */
    public UpdateProfileServlet() {
        super();
        // TODO Auto-generated constructor stub
    }

	/**
	 * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

/**
 * Servlet implementation class DeleteRouteServlet
 */
public class DeleteRouteServlet extends HttpServlet {
	private static final long serialVersionUID = 1L;
       
    /**
     * @see HttpServlet#HttpServlet()
     */
    public DeleteRouteServlet() {
        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
//		response.getWriter().append("Served at: ").append(request.getContextPath());
		HttpSession session = request.getSession();
		String admin = (String) session.getAttribute("admin");
//		if(admin == null)
//			System.out.println("请以管理员登陆");
//		else{
			String routeId = request.getParameter("routeId");
			Long routeid = Long.parseLong(routeId);
			String fromStation = request.getParameter("fromStation");
			String toStation = request.getParameter("toStation");
//			SimpleDateFormat sdf = new SimpleDateFormat( "yyyy-MM-dd HH-mm-ss" ); 
			String departureTime= request.getParameter("departureTime"); 
//			java.util.Date dTime = null; 
//			try { 
//			dTime = sdf.parse(departureTime); 
//			} catch (ParseException e) { 
//			e.printStackTrace(); 
//			}
//			java.sql.Date dpTime = new java.sql.Date(dTime.getTime());
			RouteDAO routeDao = DAOFactory.getIRouteDAOInstance();
			try {
				if(routeDao.doDeleteRoute(routeid))
				{
					System.out.println("删除成功");
					RequestDispatcher rd = request.getRequestDispatcher("adRoute.jsp");
					rd.forward(request, response);
				}
				else
        // 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
		//response.getWriter().append("Served at: ").append(request.getContextPath());
		HttpSession session = request.getSession(); 
		String username = (String) session.getAttribute("user");
		User user = (User) session.getAttribute("User");
		if(username == null )
			System.out.println("请先登录");
		else{
			String ticketId = request.getParameter("ticketId");
			Long ticketid = Long.parseLong(ticketId);
			String orderId = request.getParameter("orderId");
			Long orderid = Long.parseLong(orderId);
			
			String price = request.getParameter("price");
			Integer Price = Integer.parseInt(price);
			System.out.println(ticketid+ "   " +  orderid+"   "+price);
			TicketDAO ticketDao = DAOFactory.getITicketDAOInstance();
			try {
				if(ticketDao.doDeleteTicket(ticketid))
				{
					int balance = user.getBalance();
					int nbalance = balance + Price;
					user.setBalance(nbalance);
					UserDAO UserDao = DAOFactory.getIUserDAOInstance();
					if(UserDao.doUpdate(user))
					{
						System.out.println("余额返回");
						OrderDAO OrderDao = DAOFactory.getIOrderDAOInstance();
						Order order = new Order();
						order = OrderDao.findByOrderId(orderid);
						System.out.println(order);
						java.sql.Timestamp lastUpdateDate= new java.sql.Timestamp(System.currentTimeMillis());
						order.setLastUpdateDate(lastUpdateDate);
						order.setStatus("已取消");
						OrderDAO OrderDao1 = DAOFactory.getIOrderDAOInstance();
						if(OrderDao1.doUpdateOrder(order))
						{
							System.out.println("更新订单成功");
				            request.getRequestDispatcher("QueryTicketServlet").forward(request, response);

}

/**
 * Servlet implementation class QueryTicketServlet
 */
public class QueryTicketServlet extends HttpServlet {
	private static final long serialVersionUID = 1L;
       
    /**
     * @see HttpServlet#HttpServlet()
     */
    public QueryTicketServlet() {
        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
		///response.getWriter().append("Served at: ").append(request.getContextPath());
		HttpSession session = request.getSession(); 
		String username = (String) session.getAttribute("user");
		User user = (User) session.getAttribute("User");
		System.out.println(username);
		if(username == null)
		{
			System.out.println("请先登录");
			response.sendRedirect("Login.jsp");
		}
			
		else{

/**
 * Servlet implementation class ChangePasswordServlet
 */
public class ChangePasswordServlet extends HttpServlet {
	private static final long serialVersionUID = 1L;
       
    /**
     * @see HttpServlet#HttpServlet()
     */
    public ChangePasswordServlet() {
        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
		String ppassword = request.getParameter("ppassword");
		String npassword = request.getParameter("npassword");
		HttpSession session = request.getSession(); 
		String username = (String) session.getAttribute("user");
		System.out.println(username+ " "+ ppassword+ " "+ npassword);
		if(username == null)
		{
			System.out.println("请先登录");
			response.sendRedirect("userlogin.html");
		}
		else
		{
//		System.out.println(username);
		
		UserDAO userDao = DAOFactory.getIUserDAOInstance();
		
		User user = null;
		try {
			user = userDao.findById(username);
		} catch (Exception e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		{
			UserDAO userDao1 = DAOFactory.getIUserDAOInstance();
			user.setPassword(npassword);
			try {
				userDao1.doUpdate(user);
			} catch (Exception e) {
		String specialSeatCount = request.getParameter("specialSeatCount");
		String spPrice = request.getParameter("spPrice");
		String softSeatCount = request.getParameter("softSeatCount");
		String sfPrice = request.getParameter("sfPrice");
		String hardSeatCount = request.getParameter("hardSeatCount");
		String hPrice = request.getParameter("hPrice");
		String noSeatCount = request.getParameter("noSeatCount");
		String nPrice = request.getParameter("nPrice");
		String remark = request.getParameter("remark");
		//String fromStationId = request.getParameter("fromStationId");
		//String toStationId = request.getParameter("toStationId" );
		Integer bS = Integer.parseInt(businessSeatCount);
		Integer spS = Integer.parseInt(specialSeatCount);
		Integer sfS = Integer.parseInt(softSeatCount);
		Integer hS = Integer.parseInt(hardSeatCount);
		Integer nS = Integer.parseInt(noSeatCount);
		Integer bP = Integer.parseInt(bPrice);
		Integer spP = Integer.parseInt(spPrice);
		Integer sfP = Integer.parseInt(sfPrice);
		Integer hP = Integer.parseInt(hPrice);
		Integer nP = Integer.parseInt(nPrice);
		//Long fSId = Long.parseLong(fromStationId);
		//Long tSId = Long.parseLong(toStationId);
		
		Route route = new Route();
		
		RouteDAO routeDao = DAOFactory.getIRouteDAOInstance();
		
		route.setName(routeName);
		route.setType(routeType);
		route.setFromStation(fromStation);
		route.setToStation(toStation);
		route.setDepartureTime(Timestamp.valueOf(departureTime));
		route.setArrivalTime(Timestamp.valueOf(arrivalTime));
		route.setBusinessSeatCount(bS);
		route.setbPirce(bP);
		route.setSpecialSeatCount(spS);
		route.setSpPrice(spP);
		route.setSoftSeatCount(sfS);
		route.setSfPrice(sfP);
		route.setHardSeatCount(hS);
		route.sethPrice(hP);
		route.setNoSeatCount(nS);
		route.setnPrice(nP);
		route.setRemark(remark);
		System.out.println("route   "+ route.getDepartureTime());
		//route.setFromStationId(fSId);
		//route.setToStationId(tSId);
		try {
			if(routeDao.doCreateRoute(route))
			{
		
//		SimpleDateFormat sdf = new SimpleDateFormat( "yyyy-MM-dd" );
//		java.util.Date timeDate = null; 
//		try { 
//		timeDate = sdf.parse(aa); 
//		} catch (ParseException e) { 
//		e.printStackTrace(); 
//		}
//		java.sql.Date departureTime = new java.sql.Date(timeDate.getTime());
		
	}

	/**
	 * @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);
	}

}

/**
 * Servlet implementation class UpdateRouteServlet
 */
public class UpdateRouteServlet extends HttpServlet {
	private static final long serialVersionUID = 1L;
       
    /**
     * @see HttpServlet#HttpServlet()
     */
    public UpdateRouteServlet() {
        super();
//		Route route = null;
//		try {
//			route = RouteDao.findOnlyRoute(routeId);
//		} catch (Exception e1) {
//			// TODO Auto-generated catch block
//			e1.printStackTrace();
//		}
		if(seatType.equals("商务座")&&route.getBusinessSeatCount()>0)
		{
			ticket.setSeatType(seatType);
			Integer bS = route.getBusinessSeatCount();
			Integer price = route.getbPrice();
			String seatnum = bS.toString()+"号";
			ticket.setSeatNum(seatnum);
			ticket.setPrice(price);
			RouteDAO RouteDao1 = DAOFactory.getIRouteDAOInstance();
			int bS1 = bS - 1;
			System.out.println(bS1);
			route.setBusinessSeatCount(bS1);
			try {
				RouteDao1.doUpdateRoute(route);
			} catch (Exception e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
			TicketDAO ticketDao = DAOFactory.getITicketDAOInstance();
			try {
				if(ticketDao.doCreateTicket(ticket))
					System.out.println("购买成功");
			} catch (Exception e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
			response.sendRedirect("PayOrderServlet");
		}
		else if(seatType.equals("特等座")&&route.getSpecialSeatCount()>0)
		{
			ticket.setSeatType(seatType);
			Integer bS = route.getSpecialSeatCount();
			Integer price = route.getSpPrice();
			String seatnum = bS.toString()+"号";
			ticket.setSeatNum(seatnum);
			ticket.setPrice(price);
			RouteDAO RouteDao1 = DAOFactory.getIRouteDAOInstance();
			Integer bS1 = bS - 1;
			System.out.println(bS1);
			route.setSpecialSeatCount(bS1);

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

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值