Java 无法使用Hibernate 4.3.0在MySQL中插入布尔类型

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"

伙计们

我正在用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")
    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。