Ola pessoal tudo bem.
E o seguinte tenho 2 tabelas uma de usuarios e a outra de nivel de usuarios, o que estou precisando fazer e o seguinte
Ao Digitar o nome de usuario e a senha tem uma jcombo com o nivel de usuario no caso e um OneToOne
Ao Salvar os Dados gostaria de pegar diretamente da combo e que o Hibernate salva-se o indice, eis minhas classes :
Entidade de Usuarios.
@Entity
@SequenceGenerator(name = "nome_seq", sequenceName = "us_codigo", allocationSize = 1, initialValue = 1)
@Table(name="us_usuarios")
public class us_usuarios implements java.io.Serializable {
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(generator="nome_seq")
private Integer us_codigo;
@Column(length=50)
private String us_nome;
@OneToOne(targetEntity=us_nivel.class)
@JoinColumn(name="us_cod_nivel")
private us_nivel us_cod_nivel;
Entidade de nivel de Usuarios :
@Entity
@Table(name="us_nivel")
public class us_nivel implements java.io.Serializable {
private static final long serialVersionUID = 1L;
@Id
private Integer ni_codigo;
@Column(length=50)
private String ni_descricao;
Salvando os Dados :
try
{
SessionFactory sessionFactory = (SessionFactory) new AnnotationConfiguration()
.setProperty("hibernate.dialect", "org.hibernate.dialect.PostgreSQLDialect")
.setProperty("hibernate.connection.driver_class", "org.postgresql.Driver")
.setProperty("hibernate.connection.url", "jdbc:postgresql://localhost:5432/DBTimer")
.setProperty("hibernate.connection.username", "postgres")
.setProperty("hibernate.connection.password", "adm")
.setProperty("hibernate.show.sql", "true")
//.setProperty("hibernate.format_sql", "true")
//.setProperty("hibernate.pool_size", "10")
.addAnnotatedClass(us_usuarios.class)
.addAnnotatedClass(us_nivel.class)
.buildSessionFactory();
Session session = sessionFactory.openSession();
session.beginTransaction();
us_nivel nivel = ****** aqui preciso informar qual o indice da tabela de nivel de usuarios???????
us_usuarios usuarios = new us_usuarios();
usuarios.setUs_nome(usu_nome.getText());
usuarios.setUs_cod_nivel(nivel);
session.save(usuarios);
session.getTransaction().commit();
session.close();
sessionFactory.close();
Muito obrigado a todos, um forte abraco.