Java 无法使用Hibernate 4.3.0在MySQL中插入布尔类型
伙计们 我正在用MySQL学习Hibernate。我用葡萄牙语制作了这个模型:Java 无法使用Hibernate 4.3.0在MySQL中插入布尔类型,java,mysql,hibernate,Java,Mysql,Hibernate,伙计们 我正在用MySQL学习Hibernate。我用葡萄牙语制作了这个模型: //imports @Entity @Table(name = "alunos", schema = "progweb") public class Aluno { @Id @GeneratedValue private Long id; @Column(name = "nome") private String nome; @Column(name = "email"
//imports
@Entity
@Table(name = "alunos", schema = "progweb")
public class Aluno {
@Id
@GeneratedValue
private Long id;
@Column(name = "nome")
private String nome;
@Column(name = "email")
private String email;
@Column(name = "endereco")
private String endereco;
@Column(name = "formado")
private Boolean formado;
//getters and setters
}
我创建了一个类来测试它:
//imports
public class CriaAluno {
public static void main(String[] args) {
Aluno aluno1 = new Aluno();
aluno1.setNome("Jack");
aluno1.setEmail("jack@gmail.com");
aluno1.setEndereco("Av. dos Estados, 5001");
aluno1.setFormado(true);
System.out.println(aluno1.isFormado());
// gravando registro
EntityManagerFactory factory = Persistence
.createEntityManagerFactory("aluno");
EntityManager manager = factory.createEntityManager();
manager.getTransaction().begin();
manager.persist(aluno1);
manager.getTransaction().commit();
manager.close();
System.out.println("Adicionado");
}
}
一切正常,除了布尔类型;我在MySQL数据库中得到了以下信息:
mysql> select * from alunos;
+----+----------------+-----------------------+---------+------+
| id | email | endereco | formado | nome |
+----+----------------+-----------------------+---------+------+
| 3 | jack@gmail.com | Av. dos Estados, 5001 | | Jack |
+----+----------------+-----------------------+---------+------+
1 row in set (0.00 sec)
我的数据库中有一个空值。表中formado的数据类型是什么?它应该是TINYINT1。试试这个:从alunos中选择formado+0;它将显示0-假或1-真。再见,非常感谢。当我使用hibernate manager.find方法检索数据时,一切正常。通过您传递的命令,我可以在表中看到值true或false。表中formado的数据类型是什么?它应该是TINYINT1。试试这个:从alunos中选择formado+0;它将显示0-假或1-真。再见,非常感谢。当我使用hibernate manager.find方法检索数据时,一切正常。通过您传递的命令,我可以在表中看到值true或false。