在我的例子中,我有类和子类。问题是当我自动搜索我的函数increment id时。当我第一次点击搜索它上传5个ID,当我添加一个并返回搜索它上传5个ID我有+(5旧+1新)。如果我想加一个新的,它会给他5+6+1个新的=13个id。
类auto long具有id和名称:
public static AtomicInteger idSequence = new AtomicInteger();
public Car(String name) {
this.id = (long)idSequence.incrementAndGet();
this.name= name;
}
子类:
public OldCars(String name){
super(name);
}
要从h2更新的函数:
public static List<Car> uploadAllCars() throws SQLException, IOException {
Connection connection= connectToDatabase();
List<Car> listOfCars= new ArrayList<>();
Statement stmt = connection.createStatement();
ResultSet rs = stmt.executeQuery("SELECT * FROM CARS");
while(rs.next()){
Long id = rs.getLong("id");
String name= rs.getString("name");
Car car= new Car(name);
car.setId(id);
listOfCars.add(car);
}
closeConnectionToDataBase(connection);
return listOfCars;}
问题是如何停止自动递增和调用函数没有总和的ID。我调用uploadallcars函数来搜索每一辆特定的车,但它会立即自动递增。
编辑:我想从用户输入名称(不是id)
1条答案
按热度按时间wecizke31#
定义另一个从数据库中获取汽车的构造函数,如下所示:
用它来代替
new Car(name)
,所以new Car(name, id)