Pour aller droit au but, le problème est de sauvegarder l'objet Operator dans la base de données MySQL. Avant de sauvegarder, j'essaie de sélectionner à partir de cette table et cela fonctionne, de même que la connexion à la base de données.
Voici mon objet Opérateur :
@Entity
public class Operator{
@Id
@GeneratedValue
private Long id;
private String username;
private String password;
private Integer active;
//Getters and setters...
}
Pour économiser, j'utilise JPA EntityManager
's persist
méthode.
Voici un extrait du journal :
Hibernate: insert into Operator (active, password, username, id) values (?, ?, ?, ?)
com.mysql.jdbc.JDBC4PreparedStatement@15724a0: insert into Operator (active,password, username, id) values (0, 'pass', 'user', ** NOT SPECIFIED **)
De mon point de vue, le problème se situe au niveau de la configuration et de l'incrémentation automatique, mais je n'arrive pas à savoir où.
J'ai essayé quelques astuces que j'ai vues ici : Hibernate ne respecte pas le champ clé primaire auto_incrémenté de MySQL Mais rien de tout cela n'a fonctionné
Si d'autres fichiers de configuration sont nécessaires, je les fournirai.
DDL :
CREATE TABLE `operator` (
`id` INT(10) NOT NULL AUTO_INCREMENT,
`first_name` VARCHAR(40) NOT NULL,
`last_name` VARCHAR(40) NOT NULL,
`username` VARCHAR(50) NOT NULL,
`password` VARCHAR(50) NOT NULL,
`active` INT(1) NOT NULL,
PRIMARY KEY (`id`)
)