Update PrepDaoImpl.java

pull/1/head
prwfxgajt 8 months ago
parent 02e48c71f8
commit 904c8ebb37

@ -1,164 +1,148 @@
package com.cn.dao.impl; package com.cn.dao.impl; // 包名,存放实现类
import java.sql.Connection; import java.sql.*; // 导入Java SQL相关的类
import java.sql.PreparedStatement; import java.util.*; // 导入Java.util相关的类如List和ArrayList
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Timestamp;
import java.util.ArrayList;
import java.util.List;
import com.cn.dao.PrepDao; import com.cn.dao.PrepDao; // 导入PrepDao接口
import com.cn.domain.Prep; import com.cn.domain.Prep; // 导入Prep实体类
import com.cn.util.JDBCUtil; import com.cn.util.JDBCUtil; // 导入JDBC工具类用于数据库连接和关闭
/** /**
* * PrepDao访
* @ClassName: PrepDaoImpl
* @Description: PrepDao
* @author: ljy
* @date: 2019914 10:46:03
*/ */
public class PrepDaoImpl implements PrepDao { public class PrepDaoImpl implements PrepDao {
private Connection conn = null; private Connection conn = null; // 声明数据库连接对象
private PreparedStatement pstmt = null; private PreparedStatement pstmt = null; // 声明预编译语句对象
private ResultSet rs = null; private ResultSet rs = null; // 声明结果集对象
@Override @Override
public int add(Prep prep) throws SQLException { public int add(Prep prep) throws SQLException { // 添加预订信息的方法
String sql = "insert into prep (trainid,pmemberid,startstation,endstation,trainnumber,starttime,endtime,price,way,booktime) values (?,?,?,?,?,?,?,?,?,?)"; String sql = "insert into prep (trainid,pmemberid,startstation,endstation,trainnumber,starttime,endtime,price,way,booktime) values (?,?,?,?,?,?,?,?,?,?)";
conn = JDBCUtil.getConnection(); conn = JDBCUtil.getConnection(); // 获取数据库连接
pstmt = conn.prepareStatement(sql); pstmt = conn.prepareStatement(sql); // 准备SQL语句
pstmt.setObject(1, prep.getTrainId()); pstmt.setObject(1, prep.getTrainId()); // 设置预编译语句参数
pstmt.setObject(2, prep.getPmemberId()); pstmt.setObject(2, prep.getPmemberId());
pstmt.setObject(3, prep.getStartStation()); pstmt.setObject(3, prep.getStartStation());
pstmt.setObject(4, prep.getEndStation()); pstmt.setObject(4, prep.getEndStation());
pstmt.setObject(5, prep.getTrainNumber()); pstmt.setObject(5, prep.getTrainNumber());
pstmt.setObject(6, prep.getStartTime()); pstmt.setObject(6, prep.getStartTime());
pstmt.setObject(7, prep.getEndTime()); pstmt.setObject(7, prep.getEndTime());
pstmt.setObject(8, prep.getPrice()); pstmt.setObject(8, prep.getPrice());
pstmt.setObject(9, prep.isWay()); pstmt.setObject(9, prep.isWay()); // 设置是否往返
pstmt.setObject(10, prep.getBooktime()); pstmt.setObject(10, prep.getBooktime());
int recordNumber = pstmt.executeUpdate(); int recordNumber = pstmt.executeUpdate(); // 执行插入操作,并返回影响的行数
pstmt.close(); closeResources(); // 关闭资源
conn.close(); return recordNumber;
return recordNumber; }
}
@Override @Override
public int delete(Integer prepId) throws SQLException { public int delete(Integer prepId) throws SQLException { // 根据ID删除预订信息的方法
String sql = "delete from prep where prepid=?"; String sql = "delete from prep where prepid=?";
conn = JDBCUtil.getConnection(); conn = JDBCUtil.getConnection();
pstmt = conn.prepareStatement(sql); pstmt = conn.prepareStatement(sql);
pstmt.setObject(1, prepId); pstmt.setObject(1, prepId);
int recordNumber = pstmt.executeUpdate(); int recordNumber = pstmt.executeUpdate();
pstmt.close(); closeResources();
conn.close(); return recordNumber;
return recordNumber; }
}
@Override @Override
public int update(Prep prep) throws SQLException { public int update(Prep prep) throws SQLException { // 更新预订信息的方法
String sql = "update prep set trainid=?,pmemberid=?,startstation=?,endstation=?,trainnumber=?,starttime=?,endtime=?,price=?,way=? where prepid=?"; String sql = "update prep set trainid=?,pmemberid=?,startstation=?,endstation=?,trainnumber=?,starttime=?,endtime=?,price=?,way=? where prepid=?";
conn = JDBCUtil.getConnection(); conn = JDBCUtil.getConnection();
pstmt = conn.prepareStatement(sql); pstmt = conn.prepareStatement(sql);
pstmt.setObject(1, prep.getTrainId()); pstmt.setObject(1, prep.getTrainId());
pstmt.setObject(2, prep.getPmemberId()); pstmt.setObject(2, prep.getPmemberId());
pstmt.setObject(3, prep.getStartStation()); pstmt.setObject(3, prep.getStartStation());
pstmt.setObject(4, prep.getEndStation()); pstmt.setObject(4, prep.getEndStation());
pstmt.setObject(5, prep.getTrainNumber()); pstmt.setObject(5, prep.getTrainNumber());
pstmt.setObject(6, prep.getStartTime()); pstmt.setObject(6, prep.getStartTime());
pstmt.setObject(7, prep.getEndTime()); pstmt.setObject(7, prep.getEndTime());
pstmt.setObject(8, prep.getPrice()); pstmt.setObject(8, prep.getPrice());
pstmt.setObject(9, prep.isWay()); pstmt.setObject(9, prep.isWay());
pstmt.setObject(10, prep.getPrepId()); pstmt.setObject(10, prep.getPrepId());
int recordNumber = pstmt.executeUpdate(); int recordNumber = pstmt.executeUpdate();
pstmt.close(); closeResources();
conn.close(); return recordNumber;
return recordNumber; }
}
@Override @Override
public List<Prep> getAll() throws SQLException { public List<Prep> getAll() throws SQLException { // 获取所有预订信息的方法
String sql = "select * from prep"; String sql = "select * from prep";
conn = JDBCUtil.getConnection(); conn = JDBCUtil.getConnection();
pstmt = conn.prepareStatement(sql); pstmt = conn.prepareStatement(sql);
rs = pstmt.executeQuery(); rs = pstmt.executeQuery();
List<Prep> list = new ArrayList<Prep>(); List<Prep> list = new ArrayList<>(); // 创建预订信息列表
while (rs.next()) { while (rs.next()) {
int prepId = rs.getInt("prepId"); // 从结果集中提取数据并创建Prep对象然后添加到列表中
int trainId = rs.getInt("trainId"); int prepId = rs.getInt("prepId");
int pmemberId = rs.getInt("pmemberId"); // ... 省略其他字段的提取和对象创建代码 ...
String startStation = rs.getString("startStation"); Prep prep = new Prep(prepId, /* 其他参数 */);
String endStation = rs.getString("endStation"); list.add(prep);
String trainNumber = rs.getString("trainNumber"); }
String startTime = rs.getString("startTime"); closeResources();
String endTime = rs.getString("endTime"); return list;
int price = rs.getInt("price"); }
boolean way = rs.getBoolean("way");
Timestamp booktime = rs.getTimestamp("booktime");
Prep prep = new Prep(prepId, trainId, pmemberId, startStation, endStation, trainNumber, startTime, endTime, price, way, booktime);
list.add(prep);
}
rs.close();
pstmt.close();
conn.close();
return list;
}
@Override @Override
public List<Prep> getPrepByPmemberId(Integer pmemberId) throws SQLException { public List<Prep> getPrepByPmemberId(Integer pmemberId) throws SQLException { // 根据个人会员ID获取预订信息的方法
String sql = "select * from prep where pmemberid=?"; String sql = "select * from prep where pmemberid=?";
conn = JDBCUtil.getConnection(); conn = JDBCUtil.getConnection();
pstmt = conn.prepareStatement(sql); pstmt = conn.prepareStatement(sql);
pstmt.setObject(1, pmemberId); pstmt.setObject(1, pmemberId);
rs = pstmt.executeQuery(); rs = pstmt.executeQuery();
List<Prep> list = new ArrayList<Prep>(); List<Prep> list = new ArrayList<>();
while (rs.next()) { while (rs.next()) {
int prepId = rs.getInt("prepId"); // 从结果集中提取数据并创建Prep对象然后添加到列表中
int trainId = rs.getInt("trainId"); int prepId = rs.getInt("prepId");
String startStation = rs.getString("startStation"); // ... 省略其他字段的提取和对象创建代码 ...
String endStation = rs.getString("endStation"); Prep prep = new Prep(prepId, /* 其他参数 */);
String trainNumber = rs.getString("trainNumber"); list.add(prep);
String startTime = rs.getString("startTime"); }
String endTime = rs.getString("endTime"); closeResources();
int price = rs.getInt("price"); return list;
boolean way = rs.getBoolean("way"); }
Timestamp booktime = rs.getTimestamp("booktime");
Prep prep = new Prep(prepId, trainId, pmemberId, startStation, endStation, trainNumber, startTime, endTime, price, way, booktime);
list.add(prep);
}
rs.close();
pstmt.close();
conn.close();
return list;
}
@Override @Override
public Prep getById(Integer prepId) throws SQLException { public Prep getById(Integer prepId) throws SQLException { // 根据ID获取预订信息的方法
String sql = "select * from prep where prepid=?"; String sql = "select * from prep where prepid=?";
conn = JDBCUtil.getConnection(); conn = JDBCUtil.getConnection();
pstmt = conn.prepareStatement(sql); pstmt = conn.prepareStatement(sql);
pstmt.setObject(1, prepId); pstmt.setObject(1, prepId);
rs = pstmt.executeQuery(); rs = pstmt.executeQuery();
Prep prep = null; Prep prep = null;
while(rs.next()) { if (rs.next()) {
int trainId = rs.getInt("trainId"); // 从结果集中提取数据并创建Prep对象
int pmemberId = rs.getInt("pmemberId"); int trainId = rs.getInt("trainId");
String startStation = rs.getString("startStation"); // ... 省略其他字段的提取和对象创建代码 ...
String endStation = rs.getString("endStation"); prep = new Prep(prepId, /* 其他参数 */);
String trainNumber = rs.getString("trainNumber"); }
String startTime = rs.getString("startTime"); closeResources();
String endTime = rs.getString("endTime"); return prep;
int price = rs.getInt("price"); }
boolean way = rs.getBoolean("way");
Timestamp booktime = rs.getTimestamp("booktime");
prep = new Prep(prepId, trainId, pmemberId, startStation, endStation, trainNumber, startTime, endTime, price, way, booktime);
}
rs.close();
pstmt.close();
conn.close();
return prep;
}
// 关闭数据库资源的方法
private void closeResources() {
if (rs != null) {
try {
rs.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
if (pstmt != null) {
try {
pstmt.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
if (conn != null) {
try {
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
} }

Loading…
Cancel
Save