You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
test1/ticketing-master/src/com/cn/service/TrainService.java

110 lines
4.8 KiB

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

package com.cn.service;
import java.sql.SQLException; // 导入SQLException类用于处理数据库操作时可能遇到的异常
import java.util.List; // 导入List接口用于返回列表类型的数据
import com.cn.domain.Train; // 导入Train类该类代表车次的实体
/**
* 定义车次服务接口,提供车次相关的业务操作。
*/
public interface TrainService {
/**
* 添加一个新的车次。
* 该方法将车次对象的信息添加到数据库中。
* 如果添加成功返回1如果添加失败抛出SQLException异常。
*
* @param train 车次对象,包含车次的详细信息。
* @return 返回1表示添加成功。
* @throws SQLException 如果数据库操作失败则抛出SQLException异常。
*/
int add(Train train);
/**
* 根据车次ID删除一个车次。
* 该方法根据传入的车次ID从数据库中删除对应的车次信息。
* 如果删除成功返回1如果删除失败抛出SQLException异常。
*
* @param trainId 要删除的车次的ID。
* @return 返回1表示删除成功。
* @throws SQLException 如果数据库操作失败则抛出SQLException异常。
*/
int delete(Integer trainId);
/**
* 更新一个车次的信息。
* 该方法根据传入的车次对象更新数据库中的车次信息。
* 如果更新成功返回1如果更新失败抛出SQLException异常。
*
* @param train 包含更新信息的车次对象。
* @return 返回1表示更新成功。
* @throws SQLException 如果数据库操作失败则抛出SQLException异常。
*/
int update(Train train);
/**
* 获取所有车次的信息。
* 该方法从数据库中查询所有车次的信息,并返回一个包含所有车次信息的列表。
* 如果查询失败抛出SQLException异常。
*
* @return 返回一个包含所有车次信息的List其中每个元素都是Train对象。
* @throws SQLException 如果数据库操作失败则抛出SQLException异常。
*/
List<Train> getAll();
/**
* 根据车次ID查询一个车次的详细信息。
* 该方法根据传入的车次ID从数据库中查询对应的车次详细信息。
* 如果查询失败抛出SQLException异常。
*
* @param trainId 要查询的车次的ID。
* @return 返回一个Train对象包含车次的详细信息。
* @throws SQLException 如果数据库操作失败则抛出SQLException异常。
*/
Train getById(Integer trainId);
/**
* 根据车次号查询车次信息。
* 该方法根据传入的车次号从数据库中查询对应的车次信息。
* 如果查询失败抛出SQLException异常。
*
* @param trainNumber 车次号。
* @return 返回一个包含匹配车次号的所有车次信息的List其中每个元素都是Train对象。
* @throws SQLException 如果数据库操作失败则抛出SQLException异常。
*/
List<Train> getByTrainNumber(String trainNumber);
/**
* 根据起始站、终点站、开车时间查询车次信息。
* 该方法根据传入的起始站、终点站和开车时间从数据库中查询对应的车次信息。
* 如果查询失败抛出SQLException异常。
*
* @param startStation 起始站名称。
* @param endStation 终点站名称。
* @param startTime 开车时间,传入时不包含时分秒。
* @return 返回一个包含匹配起始站、终点站和开车时间的所有车次信息的List其中每个元素都是Train对象。
* @throws SQLException 如果数据库操作失败则抛出SQLException异常。
*/
List<Train> getByStartEndStation(String startStation, String endStation, String startTime);
/**
* 获取所有非重复的起始站。
* 该方法从数据库中查询所有非重复的起始站,并返回一个包含所有非重复起始站的列表。
* 如果查询失败抛出SQLException异常。
*
* @return 返回一个包含所有非重复起始站的List其中每个元素都是Train对象。
* @throws SQLException 如果数据库操作失败则抛出SQLException异常。
*/
List<Train> getAllStartStation();
/**
* 获取所有非重复的终点站。
* 该方法从数据库中查询所有非重复的终点站,并返回一个包含所有非重复终点站的列表。
* 如果查询失败抛出SQLException异常。
*
* @return 返回一个包含所有非重复终点站的List其中每个元素都是Train对象。
* @throws SQLException 如果数据库操作失败则抛出SQLException异常。
*/
List<Train> getAllEndStation();
}