Я пытаюсь сохранить запрос sql в объект, чтобы я мог загрузить / сохранить информацию из этого объекта.
К сожалению, мне кажется, что я что-то упустил ... Но я не знаю, что: D
Когда я выполняю свой код, я получаю сообщение об ошибке:
"java.lang.Integer не может быть приведен к [B» (я ловлю это сообщение в ClassCastException)
Вот чтоЯ делаю:
public static CatalogueClients chargementClient() throws ClassNotFoundException, IOException, SQLException {
// TODO Auto-generated method stub
Connection dbConnection = null;
Statement statement = null;
CatalogueClients maliste = new CatalogueClients();
try {
dbConnection = OpenConnexion.getDBConnection();
statement = dbConnection.createStatement();
ResultSet result = statement.executeQuery("SELECT * FROM client");
while (result.next()) {
byte[] st = (byte[]) result.getObject(1);
ByteArrayInputStream bais = new ByteArrayInputStream(st);
ObjectInputStream ois = new ObjectInputStream(bais);
maliste = (CatalogueClients) ois.readObject();
ois.close();
bais.close();
}
} catch (SQLException e) {
System.out.println(e.getMessage());
} catch (ClassCastException cce){
System.out.println(cce.getMessage());
} finally {
if (statement != null) {
statement.close();
}
if (dbConnection != null) {
dbConnection.close();
}
}
return maliste;
}
Вот как выглядят клиенты Catalogue:
public class CatalogueClients extends ArrayList<Client> {
private static CatalogueClients instance;
private static final long serialVersionUID = 1L;
public String Afficher() {
return (Input.returnOption("Mes clients: "));
}
public static CatalogueClients getInstance() throws SQLException {
if (instance == null) {
instance = Serialization.chargementClient();
}
return instance;
}
Не могли бы вы, ребята, помочь?
Спасибо