Utilisation d'hibernate en JSE (swing) et avec netbeans

stealon 16 Messages postés lundi 12 janvier 2009Date d'inscription 1 décembre 2017 Dernière intervention - 1 déc. 2017 à 09:37
Bonjour, Je suis tomber dans l'ORM comme un camicase. j'entends par la que j'ai commencé à le pratiquer sans avoir appris parce que je participais à un projet JEE alors que je ne maitrisais jusque la que le JSE. Ayant donc découvert l'orm j'ai décidé de la pratiquer en JSE en développant une petite application. le problème est donc que j'ai développé mes classes que j'ai à mon avis bien mapper. Pour la suite j'ai développé mes DAOs et je ne sais plus comment faire fonctionner hibernate pour la persistance avec Netbeans comme EDI. Toute idée est bienvenue. J'ai crée mes classes

public class Personne{
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
@Column(name="nom")
protected String firstName;

@Column(name="prenom")
protected String lastName;

@Column(name="sexe")
@Enumerated(EnumType.STRING)
protected Sexe sexe;

@Column(name="date_naissance")
protected LocalDate dateOfBirth;

@Column(name="lieu_naissance")
protected String placeOfBirth;

// j'ai codé les getters et setters
// bref tout ce qu'il faut pour une classe.
}



// l'interface qui est une classe générique

public interface GenericDao<T extends Object, ID extends Serializable> {

/**
  • * @param t * @return * @throws Exception */ public T create(T t) throws Exception; /** * * @param id * @return * @throws Exception */ public T findById(ID id) throws Exception; /** * * @param t * @return * @throws Exception */ public T update(T t) throws Exception; /** * * *@param t * @throws Exception */ public void delete(T t) throws Exception; /** * * @return * @throws Exception */ public List<T> findAll() throws Exception; /** * * @return */ public EntityManager getEntityManager(); /** * * @param entityManager */ public void setEntityManager(EntityManager entityManager);}




public class GenericDaoImpl<T extends Object, ID extends Serializable> implements GenericDao<T, ID>{
/**
  • Le gestionnaire d'entité */ protected EntityManager entityManager; /** * La classe ou le type de l'entité */ protected Class<T> entityClass; /** * * @param entityClass */ public GenericDaoImpl(Class<T> entityClass) { this.entityClass = entityClass; } @Override public EntityManager getEntityManager() { return this.entityManager; } @Override public void setEntityManager(EntityManager entityManager) { this.entityManager = entityManager; } @Override public T create(T t) throws Exception { entityManager.persist(t); return t; } @Override public T findById(ID id) throws Exception { return entityManager.find(entityClass, id); } @Override public T update(T t) throws Exception { return entityManager.merge(t); } @Override public void delete(T t) throws Exception { t = this.entityManager.merge(t); this.entityManager.remove(t); } @Override public List<T> findAll() throws Exception { CriteriaBuilder cb = entityManager.getCriteriaBuilder(); CriteriaQuery<T> cq = cb.createQuery(entityClass); cq.from(entityClass); return entityManager.createQuery(cq).getResultList(); } }



public interface PersonneDao<T extends Personne> extends GenericDao<T, Long> {

}



public class PersonneDaoImpl<T extends Personne> extends GenericDaoImpl<T, Long> implements PersonneDao<T> {

public PersonneDaoImpl(Class<T> entityClass){
super(entityClass);
}
}


Je voudrai ensuite tester si je peut persister un objet dans la base de donné et la je suis bloqué.
Je voudrais savoir si il faut à tout prix créer la base de données
Afficher la suite 

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.