package com.db;
import com.Main;
import com.bean.*;
import com.utils.ConstantsUtils;
import java.sql.*;
import java.util.ArrayList;
import java.util.List;
public class SqlHelper {
private Connection connection = null;
String INSERT_SQL = "INSERT INTO table VALUES(x);";
String QUERY_SQL = "SELECT sth FROM table ";
/**
* |构造函数,实例化Connection
*
* @param sqlUser
*/
public SqlHelper(SqlUser sqlUser) {
this.connection = sqlUser.getConnection();
}
/**
* 添加用户
*
* @param user
*/
public Boolean InsertUser(User user) {
String sql = INSERT_SQL.replace("table", "UserTrain");
String values = "'" + user.getUserPhone() + "','" + user.getUserPassWord() + "','" + user.getUserEmail() + "','" + user.getUserAvatarName()
+ "'," + user.getType();
sql = sql.replace("x", values);
System.out.println(sql);
if (executeUpdate(sql)) {
System.out.println("插入用户成功");
return true;
} else {
System.out.println("表中已有该用户信息,插入用户失败");
return false;
}
}
/**
* 查询用户
*
* @param limit
* @return
*/
public User queryUser(String limit) {
User user = new User();
user.setUserPhone("-");
String sql = QUERY_SQL.replace("sth",
"UserPhoneNumber,UserPassWord,UserEmail,UserAppName,UserType");
sql = sql.replace("table", "UserTrain");
sql = sql + limit;
System.out.println(sql);
ResultSet resultSet = executeQuery(sql);
try {
while (resultSet.next()) {
user = new User(
resultSet.getString("UserPhoneNumber").trim(),
resultSet.getString("UserPassWord").trim(),
resultSet.getString("UserEmail").trim(),
resultSet.getString("UserAppName").trim(),
resultSet.getInt("UserType")
);
}
System.out.println("查询成功");
return user;
} catch (SQLException e) {
e.printStackTrace();
System.out.println("查询失败:" + e.toString());
return user;
}
}
/**
* 查询列车
*
* @param trainNumber
* @return
*/
public Train queryTrain(String trainNumber) {
String sql = "SELECT TrainNumber,TrainName,TrainCompartmentNumber,TrainCapacityOfCompartment,TrainSpeed,firstPrice,secondPrice,bedPrice FROM Train WHERE TrainNumber = ?";
Train train = new Train();
train.setTrainNumber(" ");
try {
sql = sql.replace("?", formatString(trainNumber));
ResultSet resultSet = executeQuery(sql);
System.out.println(sql);
while (resultSet.next()) {
train = new Train(
resultSet.getString("TrainNumber").trim(),
resultSet.getString("TrainName").trim(),
resultSet.getInt("TrainCompartmentNumber"),
resultSet.getInt("TrainCapacityOfCompartment"),
resultSet.getFloat("TrainSpeed"),
resultSet.getFloat("firstPrice"),
resultSet.getFloat("secondPrice"),
resultSet.getFloat("bedPrice")
);
}
} catch (SQLException e) {
e.printStackTrace();
}
return train;
}
/**
* 添加班次
*
* @param trainClass
*/
public boolean addClass(TrainClass trainClass) {
String sql = "INSERT INTO Classes VALUES(cn,ctn,cdp,cgp,cdis,cde,cpn,time)";
sql = sql.replace("cn", formatString(trainClass.getClassNumber()));
sql = sql.replace("ctn", formatString(trainClass.getTrainNumber()));
sql = sql.replace("cdp", formatString(trainClass.getDepaturePlace()));
sql = sql.replace("cgp", formatString(trainClass.getGoalPlace()));
sql = sql.replace("cdis", trainClass.getDinstance() + "");
sql = sql.replace("cde", formatString(trainClass.getDepatureDay().toString()));
sql = sql.replace("cpn", trainClass.getPassengerNumber() + "");
sql = sql.replace("time", formatString(trainClass.getTime() + ""));
System.out.println(sql);
return executeUpdate(sql);
}
/**
* 管理员删除班次
*
* @param trainClass
* @return
*/
public Boolean deleteClasses(TrainClass trainClass) {
String sql1 = "DELETE FROM Ticket WHERE TicketClassesNumber = " + formatString(trainClass.getClassNumber());
String sql2 = "DELETE FROM Classes WHERE ClassesNumber = '" + trainClass.getClassNumber() + "'";
executeUpdate(sql1);
return executeUpdate(sql2);
}
/**
* 查询班次
*
* @return
*/
public List<TrainClass> queryClasses() throws SQLException {
ResultSet resultSet;
List<TrainClass> mList = new ArrayList<>();
String sql = "SELECT ClassesNumber,ClassesTrainNumber,ClassesDepaturePlace,ClassesGoalPlace,ClassesDistance," +
"ClassesDepatureTime,ClassesPassengerNumber,DepatureTime FROM Classes ORDER BY ClassesDepatureTime DESC";
resultSet = executeQuery(sql);
while (resultSet.next()) {
mList.add(new TrainClass(
resultSet.getString("ClassesNumber").trim(),
resultSet.getString("ClassesTrainNumber").trim(),
resultSet.getString("ClassesDepaturePlace").trim(),
resultSet.getString("ClassesGoalPlace").trim(),
resultSet.getFloat("ClassesDistance"),
resultSet.getDate("ClassesDepatureTime"),
resultSet.getInt("ClassesPassengerNumber"),
resultSet.getString("DepatureTime").trim()
));
}
return mList;
}
/**
* 按班次号查询
*
* @param classesNumber
* @return
* @throws SQLException
*/
public TrainClass queryClasses(String classesNumber) throws SQLException {
String sql = "SELECT ClassesNumber,ClassesTrainNumber,ClassesDepaturePlace,ClassesGoalPlace,ClassesDistance,ClassesDepatureTime,ClassesPassengerNumber,DepatureTime FROM Classes WHERE ClassesNumber = '" + classesNumber + "'";
ResultSet resultSet = executeQuery(sql);
TrainClass re = new TrainClass();
re.setClassNumber(" ");
while (resultSet.next()) {
re = new TrainClass(
resultSet.getString("ClassesNumber").trim(),
resultSet.getString("ClassesTrainNumber").trim(),
resultSet.getString("ClassesDepaturePlace").trim(),
resultSet.getString("ClassesGoalPlace").trim(),
resultSet.getFloat("ClassesDistance"),
resultSet.getDate("ClassesDepatureTime"),
resultSet.getInt("ClassesPassengerNumber"),
resultSet.getString("DepatureTime").trim()
);
}
return re;
}
/**
* 按起终点查询
*
* @param startplace
* @param goalplace
* @return
* @throws SQLException
*/
public List<TrainClass> queryClasses(String startplace, String goalplace, Date depatureDay) throws SQLException {
String sql = "SELECT ClassesNumber,ClassesTrainNumber,ClassesDepaturePlace,ClassesGoalPlace,ClassesDistance," +
"ClassesDepatureTime,ClassesPassengerNumber,DepatureTime FROM Classes WHERE ClassesDepaturePlace = '"
+ startplace + "' AND ClassesGoalPlace = '" + goalplace + "' AND ClassesDepatureTime = '" + depatureDay + "'";
ResultSet resultSet;
resultSet = executeQuery(sql);
没有合适的资源?快使用搜索试试~ 我知道了~
火车站票务管理系统源码
共155个文件
class:77个
java:39个
jpg:20个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 103 浏览量
2023-09-07
16:37:14
上传
评论
收藏 642KB ZIP 举报
温馨提示
火车票务管理系统是一个专为铁路公司或火车站设计的软件应用程序,旨在优化和自动化火车票务业务的各个方面。该系统提供了一种全面的解决方案,以有效地管理火车票销售、车站运营和客户服务。下面是系统的主要特点和功能: 1. 票务销售管理: 票务预订:允许乘客在线或线下预订火车票。 席位选择:提供座位图,并允许乘客选择和预订座位。 价格管理:管理票价、优惠和折扣政策。 支付集成:整合多种支付方式,以便乘客可以方便地支付车票费用。 2. 车站管理: 列车时刻表:维护列车时刻表和路线信息。 车站工作人员管理:管理售票员、安检员、站务员等工作人员的信息和排班。 列车状态跟踪:实时监控列车运行状态,包括延误和取消信息。 3. 客户服务: 乘客信息管理:存储和管理乘客个人信息,包括历史订单。 售后服务:处理退票、改签和客户投诉。 乘客通知:通过短信、电子邮件或应用程序通知乘客有关车次信息和变更。 4. 安全和检票: 安全管理:确保车站安全,包括安全检查和设备管理。 检票系统:使用电子或纸质车票进行检票,确保只有有效乘客能够上车。 5. 数据分析和报告: 数据统计:收集和分析车票销售、座位利用率和
资源推荐
资源详情
资源评论
收起资源包目录
火车站票务管理系统源码 (155个子文件)
SqlHelper.class 16KB
TrainManagerActivity.class 8KB
Place2PlaceFragment.class 7KB
InformationFragment.class 7KB
LoginActivity.class 7KB
TicketsQueryFragment.class 6KB
RegisterActivity.class 6KB
IdCardChooseDialog.class 6KB
ConstantsUtils.class 5KB
ChossesCreditCardDialog.class 5KB
IdCardDialog.class 5KB
PeopleDetailDialog.class 4KB
InformationDialog.class 4KB
BuyRecordFragment.class 4KB
ChangeUtiles.class 4KB
TrainManagerActivity$6.class 4KB
LoginActivity$2.class 3KB
RegisterActivity$1.class 3KB
MD5Util.class 3KB
ClassesDialog.class 3KB
User.class 3KB
CreditCardDialog.class 3KB
TrainClass.class 3KB
BaseDialog.class 3KB
Train.class 2KB
ChossesCreditCardDialog$1.class 2KB
UserActivity.class 2KB
Place2PlaceFragment$1.class 2KB
TicketsQueryFragment$2.class 2KB
Ticket.class 2KB
CreditCardDialog$1.class 2KB
TrainManagerActivity$4.class 2KB
IdCardChooseDialog$5.class 2KB
SqlUser.class 2KB
BaseActivity.class 2KB
TrainManagerActivity$2.class 2KB
BaseFragment.class 2KB
TrainManagerActivity$1.class 2KB
MyButton.class 2KB
MyDatePicker.class 2KB
MyFrame.class 2KB
IdCardDialog$2.class 1KB
InformationFragment$2.class 1KB
Place2PlaceFragment$2.class 1KB
InformationFragment$6.class 1KB
IdCardDialog$1.class 1KB
InformationFragment$4.class 1KB
IdCard.class 1KB
BuyRecordFragment$2.class 1KB
LoginActivity$3.class 1KB
InformationFragment$1.class 1KB
TrainManagerActivity$5.class 1KB
PhoneFormatCheckUtils.class 1KB
Main.class 1KB
Place2PlaceFragment$3.class 1KB
TrainManagerActivity$3.class 1KB
BuyRecordFragment$1.class 1KB
PeopleDetailDialog$2.class 1KB
TicketsQueryFragment$1.class 1KB
CreditCard.class 1KB
Seat.class 1KB
InformationFragment$3.class 990B
InformationFragment$5.class 975B
BaseDialog$1.class 960B
LoginActivity$1.class 951B
PeopleDetailDialog$1.class 859B
InformationDialog$1.class 852B
IdCardChooseDialog$1.class 796B
IdCardChooseDialog$4.class 796B
IdCardChooseDialog$3.class 796B
IdCardChooseDialog$2.class 796B
MyUtils.class 786B
MyLabel.class 779B
RegisterActivity$2.class 754B
BaseActivity$1.class 622B
BaseFragment$1.class 622B
MyTextField.class 506B
.gitignore 190B
SqlHelper.java 21KB
TrainManagerActivity.java 12KB
InformationFragment.java 9KB
LoginActivity.java 9KB
RegisterActivity.java 7KB
Place2PlaceFragment.java 7KB
ConstantsUtils.java 6KB
TicketsQueryFragment.java 6KB
IdCardDialog.java 5KB
MD5Util.java 5KB
IdCardChooseDialog.java 5KB
BuyRecordFragment.java 3KB
ChossesCreditCardDialog.java 3KB
PeopleDetailDialog.java 3KB
InformationDialog.java 3KB
CreditCardDialog.java 3KB
ClassesDialog.java 3KB
ChangeUtiles.java 3KB
TrainClass.java 3KB
User.java 2KB
BaseDialog.java 2KB
Train.java 2KB
共 155 条
- 1
- 2
资源评论
超级无敌暴龙战士塔塔开
- 粉丝: 5018
- 资源: 159
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 【java毕业设计】大健康老年公寓管理系统源码(ssm+mysql+说明文档).zip
- 【java毕业设计】小雨杂志在线投稿网站源码(ssm+mysql+说明文档+LW).zip
- 【java毕业设计】汽车租赁故障上报网上租车源码(ssm+mysql+说明文档+LW).zip
- 【java毕业设计】药品销售配送网站系统-源码(ssm+mysql+说明文档+LW).zip
- 多语言实现字符串逆序算法详解与代码示例
- Android Studio中创建简单计算器应用的方法详解
- MATLAB模拟退火算法代码实例及其应用
- 【java毕业设计】家庭食谱管理系统-源码(ssm+mysql+说明文档+LW).zip
- 【java毕业设计】汉服文化平台网站源码(ssm+mysql+说明文档+LW).zip
- 通过javascript过滤重复整数.rar
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功