文章目录

  • 选择出行需求
  • 选择车票
  • 确认购买
  • 购买成功页面

选择出行需求

在页面中可以选择出发城市、到达城市以及出发日期。
代码存放在needs.jsp文件中。

<%@ page language="java" contentType="text/html; charset=UTF-8"pageEncoding="UTF-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@ page import="sqlconnect.OptSql" %>
<%@ page import="java.util.*"%>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>选择出行需求</title>
</head>
<body>
<div><img src="title.jpg" width="266" height="64" alt=""/><a href="user.jsp" id="gotouser" style="float:right;position: absolute;top: 20px;right:20px;">用户:<%=session.getAttribute("username")%></a>
</div>
<div id="main" style="height: 500px;wdith: 100%;background-color:#6899FF"><div id="chooseneeds" style="background-color: white;position: relative;left:20px;top:20px;height: 360px;width: 40%;"><div id="content" style="position: relative;left:40px;top:50px;font-size: 30px;color:#8C570F;"><form action="showtrains.jsp"><%OptSql oo=new OptSql();List<String> origin_list=oo.get_all_origin();request.setAttribute("origin_list", origin_list);%>出发地:<select name="select_origin"><c:forEach items="${origin_list}" var="origin"><option value="${origin}">${origin}</option></c:forEach></select><br><br><%List<String> des_list=oo.get_all_destination();request.setAttribute("des_list", des_list);%>到达地:<select name="select_destination"><c:forEach items="${des_list}" var="des"><option value="${des}">${des}</option></c:forEach></select><br><br><%List<String> date_list=oo.get_all_date();request.setAttribute("date_list", date_list);oo.close();%>出发日期:<select name="select_date"><c:forEach items="${date_list}" var="date"><option value="${date}">${date}</option></c:forEach></select><br><br><input type="submit" value="查询" id="btn" style="background-color: #8C570F;color:white;
                                                                position: relative;left:110px;height: 50px;
                                                                width: 100px;font-size: 30px;"></form></div></div><div id="pic" style="width:50%; float:right;position: absolute; top: 100px;right: 50px;"><img src="adv12306_2.jpg" width="651" height="430" alt=""/></div>
</div>
</body>
</html>

选择车票

在上一个页面点击查询后,将会进入符合条件的全部车票的页面,仿照12306官网,将会展示所有车次的余票数量,并且通过点击相应余票,可以购买。
代码放在文件showtrains.jsp中。

<%@ page language="java" contentType="text/html; charset=UTF-8"pageEncoding="UTF-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@ page import="sqlconnect.OptSql" %>
<%@ page import="sqlconnect.TrainInfo" %>
<%@ page import="java.util.*"%>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>选择车票</title>
</head>
<style>.tablehead{height: 26px;width:20px;background-color: #6899FF;color: white;text-align: center;padding: 10px;font-size: 20px;font-weight: 10px;}.tablecontent{text-align: center;}
</style>
<body>
<%
String origin=request.getParameter("select_origin");
String destination=request.getParameter("select_destination");
String date=request.getParameter("select_date");
OptSql oo=new OptSql();
List<TrainInfo> train_list=oo.get_train_list(date, origin, destination);
request.setAttribute("train_list", train_list);
%><div><img src="title.jpg" width="266" height="64" alt=""/><a href="user.html" id="gotouser" style="float:right;position: absolute;top: 20px;right:20px;">用户:<%=session.getAttribute("username")%></a></div><a href="needs.jsp" id="back" style="position: absolute;left:20px;top: 100px;">返回</a><div id="needsbar" style="position: absolute;left: 3%;top:130px;border:3px solid #6899FF;width: 90%;height: 80px;padding: 20px;font-size: 20px;">出发地:<%=origin %>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;到达地:<%=destination %><br><br>出发日期:<%=date %></div><table id="choices" style="position: absolute; left: 3%; top: 282px; width: 90%; height: 46px;" border="1"><tr id="tableheadtr" style="background-color: #6899FF"><td height="40" class="tablehead">车次号</td><td class="tablehead">出发时刻</td><td class="tablehead">商务座余票</td><td class="tablehead">一等座余票</td><td class="tablehead">二等座余票</td></tr><c:forEach items="${train_list}" var="train"><tr id="${train.trainnum}"><td class="tablecontent">${train.trainnum}</td><td class="tablecontent">${train.stime}</td><td class="tablecontent"><a href="buy.jsp?origin=<%=origin %>&destination=<%=destination %>&date=<%=date %>&trainnum=${train.trainnum}&stime=${train.stime}&level=<%="0" %>&leftnum=${train.num00}">${train.num00}</a></td><td class="tablecontent"><a href="buy.jsp?origin=<%=origin %>&destination=<%=destination %>&date=<%=date %>&trainnum=${train.trainnum}&stime=${train.stime}&level=<%="1" %>&leftnum=${train.num01}">${train.num01}</a></td><td class="tablecontent"><a href="buy.jsp?origin=<%=origin %>&destination=<%=destination %>&date=<%=date %>&trainnum=${train.trainnum}&stime=${train.stime}&level=<%="2" %>&leftnum=${train.num02}">${train.num02}</a></td></tr></c:forEach></table><%oo.close();%>
</body>
</html>

确认购买

选择相应车票后,将会出现全部车票信息,点击确认后,才会真正的购买这一车票。
代码在buy.jsp中。

<%@ page language="java" contentType="text/html; charset=UTF-8"pageEncoding="UTF-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@ page import="sqlconnect.OptSql" %>
<%@ page import="java.util.*"%>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>确认购买</title>
</head>
<style>h1{font-size: 25px;color: #8C570F;}h2{font-size: 20px;}
</style>
<body>
<%
String origin=request.getParameter("origin");
String destination=request.getParameter("destination");
String date=request.getParameter("date");
String trainnum=request.getParameter("trainnum");
String stime=request.getParameter("stime");
String strleftnum=request.getParameter("leftnum");
int leftnum=Integer.parseInt(strleftnum);
String level=request.getParameter("level");
int allnum=0;
String seat=null;
System.out.println("level="+level);
if(level.equals("0")){allnum=12;seat="00-";
}else if(level.equals("1")){allnum=20;seat="01-";
}else{allnum=36;seat="02-";
}
int irow=(allnum-leftnum)/4+1;
String row=irow+"";
int icol=(allnum-leftnum)%4;
String col=null;
if(icol==0) col="A";
else if(icol==1) col="B";
else if(icol==2) col="C";
else col="D";
seat=seat+row+col;
System.out.println(seat);
OptSql oo=new OptSql();
int prize=oo.get_prize(level, trainnum);
oo.close();
%><img src="title.jpg" width="266" height="64" alt=""/><div id="maininfo" style="position: absolute;top: 100px;left: 40px;width: 400px;"><h1>车票信息</h1><h2>出发地:<%=origin %></h2><h2>到达地:<%=destination %></h2><h2>车次:<%=trainnum %></h2><h2>出发日期:<%=date %></h2><h2>出发时刻:<%=stime %></h2><h2>座位号:<%=seat %></h2><h1>费用:¥<%=prize %></h1><br><br><a href="buyOpt.jsp?date=<%=date %>&trainnum=<%=trainnum %>&seat=<%=seat %>" id="btn" style="position: absolute;left:50px;border:2px solid #D38220;
        background-color: #D38220;text-decoration: none;">确认付款</a></div>
</body>
</html>

购买成功页面

这个代码将会进行购买车票后的数据库操作,更新数据后会显示购买成功。
代码在buyOpt.jsp中。

<%@ page language="java" contentType="text/html; charset=UTF-8"pageEncoding="UTF-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@ page import="sqlconnect.OptSql" %>
<%@ page import="java.util.*"%>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>购买成功</title>
</head>
<body>
<%
String sdate=request.getParameter("date");
String trainnum=request.getParameter("trainnum");
String seat=request.getParameter("seat");
String userid=(String)session.getAttribute("userid");
OptSql oo=new OptSql();
oo.insert_ticket(sdate, trainnum, seat, userid);
oo.close();
%>
<h1>恭喜您,购票成功!</h1>
<br>
<h2><a href="user.jsp">去查看</a></h2>
</body>
</html>

然后购买车票的操作就全部结束啦~

回头再看这个自己写的代码,其实对于真实的情况来说肯定差了很远,就是也没有分层啊之类的,但是个人感觉可读性还是可以的,对于需要尽快完成作业的小白来说,还是个不错的选择!

12306购票系统以往文章链接:
【Java+JSP+MySql】12306购票系统(一)项目介绍
【Java+JSP+MySql】12306购票系统(二)数据库
【Java+JSP+MySql】12306购票系统(三)JDBC
【Java+JSP+MySql】12306购票系统(四)登录注册

系列更新结束后会把源代码和相关的文档打包上传成资源。
如果你觉得这篇文章对你有用的话,麻烦点赞,收藏,关注一下。
感谢您的阅读,您的支持是对我最大的鼓励~

【Java+JSP+MySql】12306购票系统(五)购买车票相关推荐

  1. Java Swing+Mysql电影购票系统(普通用户/管理员登录+充值购票+影院管理)

    Java Swing+Mysql电影购票系统 文章目录 数据库连接 主要页面 运行截图 文章目录 电影购票系统模拟真实购票流程,在线选座,充值购票,影院信息管理.登录用户分为:普通用户+管理员 数据库 ...

  2. java+jsp+mysql新生报到系统开题报告

    1.1引言 在21世纪这个富有挑战性的时代,中国所决定实施的"科教兴国战略",具有十分重大的意义,显示了我们国家越来越关注人才方面的培养建设.计算机科学在21世纪得到了飞速的发展, ...

  3. 【Java+JSP+MySql】12306购票系统(三)JDBC

    文章目录 配置JDBC 列车信息类 用户信息类 操作数据库 配置JDBC 在编写Java程序前需要配置JDBC环境,有很多教程,需要安装一个驱动. 可以自己找来参考,也可以看看以下链接的参考: 如何在 ...

  4. 【Java+JSP+MySql】12306购票系统(四)登录注册

    文章目录 登录 Servlet代码 html代码 注册 Servlet代码 html代码 登录 Servlet代码 Servlet代码所在文件夹位置如下截图所示 登陆的servlet代码文件命名为Lo ...

  5. java毕业设计——基于java+JSP+MySQL的网上购书系统设计与实现(毕业论文+程序源码)——网上购书系统

    基于java+JSP+MySQL的网上购书系统设计与实现(毕业论文+程序源码) 大家好,今天给大家介绍基于java+JSP+MySQL的网上购书系统设计与实现,文章末尾附有本毕业设计的论文和源码下载地 ...

  6. JAVA JSP火车订票系统(JSP订票系统 JSP火车票预订系统)JSP火车票网上购票系统

    JSP火车订票系统(JSP订票系统 JSP火车票预订系统)JSP火车票网上购票系统 大家好,很高兴和大家分享Java项目和经验.不管同学们是出于什么需求.都希望各位计算机专业的同学有一个提高. 本系统 ...

  7. 基于JAVA高铁在线购票系统计算机毕业设计源码+数据库+lw文档+系统+部署

    基于JAVA高铁在线购票系统计算机毕业设计源码+数据库+lw文档+系统+部署 基于JAVA高铁在线购票系统计算机毕业设计源码+数据库+lw文档+系统+部署 本源码技术栈: 项目架构:B/S架构 开发语 ...

  8. java毕业设计——基于java+JSP+MySQL的电脑彩票销售管理系统设计与实现(毕业论文+程序源码)——彩票销售管理系统

    基于java+JSP+MySQL的电脑彩票销售管理系统设计与实现(毕业论文+程序源码) 大家好,今天给大家介绍基于java+JSP+MySQL的电脑彩票销售管理系统设计与实现,文章末尾附有本毕业设计的 ...

  9. Java+JSP+Mysql+Tomcat实现Web图书管理系统

    图书管理系统 一.系统介绍 1.软件环境 2.功能模块图 3.系统功能 4.数据库表 5.工程截图 二.系统展示 1.系统注册 2.系统登录 3.找回密码 4.管理员-主页 5.管理员-用户管理主页 ...

最新文章

  1. AI一分钟|Uber撤裁100名无人车操作员;京东金融将融资130亿人民币
  2. IUSR_ 计算机名和IWAM_ 计算机名帐户的用户名和密码
  3. Linux启动跟windows启动,Windows,Linux启动机制简介
  4. 常考的 21 条 Linux 命令
  5. 藏妹子之处(excel)
  6. ajax学习第一天。
  7. 【英语学习】【WOTD】valetudinarian 释义/词源/示例
  8. mojolicious mysql_CentOS 下玩 Mojolicious 第一课
  9. eclipse maven 插件的安装和配置
  10. 电子病历系统源码 医院管理系统源码
  11. Security Warning: The negotiated TLS 1.0 is an insecure protocol and is supported for backward compa
  12. h5 虚拟服务器,h5制作选择虚拟主机还是服务器
  13. 傻子也能看懂的迪杰斯特拉算法(转)
  14. C语言在坐标轴上输出曲线,C语言打印正弦曲线、直线、圆等等
  15. 什么是Blazor?
  16. LabVIEW如何实现高性能串口助手-附代码
  17. YOLOv5导出onnx、TrensorRT部署(LINUX)
  18. html网页制作浮动框架,浮动框架在网页制作中使用技巧.doc
  19. 10.MySQL文件
  20. 茗创:脑电数据处理业务

热门文章

  1. STM32开发(2)----CubeMX的安装和使用
  2. JQuery Mobile试试水
  3. c 语言多个if并联使用,if的嵌套和多个并列if的效率有关问题
  4. OpenCV 微信QRCode二维码
  5. 前端使用高德地图url实现地图定位
  6. String字符串的相关语法及JPI
  7. ping检测整个网段地址在线
  8. windows批量删除指定后缀文件
  9. python100天-如何系统地学习 Python,100天从新手到大师
  10. Linux 下的分屏利器-tmux安装、原理及使用