IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JSF Java Discussion :

Jsf et database Postgres


Sujet :

JSF Java

  1. #1
    Membre averti
    Inscrit en
    Juillet 2010
    Messages
    20
    Détails du profil
    Informations forums :
    Inscription : Juillet 2010
    Messages : 20
    Par défaut Jsf et connexion à une database Postgres
    Bonjour,
    J'avance un peu dans le learning du jsf
    J'ai crée une base de donnée simple Postgres contenant une seule table User ayant les champs nom et prenom, je veux afficher ces 2 informations des user dans un tableau dans une page jsp utilisant les composant jsf.
    Commant je dois procéder, càd comment me connecter à une bd afin de récuperer les infos

  2. #2
    Rédacteur

    Profil pro
    Inscrit en
    Juin 2003
    Messages
    4 184
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 4 184
    Par défaut
    Citation Envoyé par Myriouma Voir le message
    Bonjour,
    Commant je dois procéder, càd comment me connecter à une bd afin de récuperer les infos
    JSF est un framework de présentation, pour ce connecter à la base de données, tu dois plutôt regarder du coté de JDBC, Hibernate...

  3. #3
    Nouveau candidat au Club
    Inscrit en
    Juillet 2010
    Messages
    2
    Détails du profil
    Informations forums :
    Inscription : Juillet 2010
    Messages : 2
    Par défaut classe
    tu dois d'abord faire une classe ou tu créera des fonctions necessaire comme la connection a la base de donnée puis l'extraction des données de la base... et cette classe sera utilisée dans la page jsf ...

  4. #4
    Nouveau candidat au Club
    Inscrit en
    Juillet 2010
    Messages
    2
    Détails du profil
    Informations forums :
    Inscription : Juillet 2010
    Messages : 2
    Par défaut exemple
    package FoetusIX;

    import java.sql.*;
    import java.util.Iterator;
    import java.util.Vector;

    public class foetus1 {
    String zone;
    Vector mazone=new Vector();

    public void foetus2() throws SQLException, ClassNotFoundException{// constructeur
    //1-tout pour la connection a la base de donnée
    Class.forName("org.postgresql.Driver");
    String url="jdbc:postgresql://localhost:5432/foetusix";

    String user="postgres";
    String password="FoetusIX";
    Connection conn=null;


    String ok="jj";

    //try {

    conn=DriverManager.getConnection(url,user,password);

    Statement state = conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_UPDATABLE);
    String query="SELECT desig FROM zone";
    ResultSet res=state.executeQuery(query);
    res.first();
    do{

    zone=res.getString("desig");
    mazone.add(zone);
    res.next();
    }while(res.isAfterLast()==false);


    res.close();
    state.close();
    conn.close();
    //}
    //catch (SQLException e) {mazone.add("erreur connection");}
    }
    public Iterator getAllZone(){
    return mazone.iterator();
    }


    public static void main(String[] args) throws SQLException, ClassNotFoundException {
    foetus1 test=new foetus1();
    test.foetus2();


    }


    }

    //pour plus d'information il suffit de poster une question sur le forum

  5. #5
    Membre averti
    Inscrit en
    Juillet 2010
    Messages
    20
    Détails du profil
    Informations forums :
    Inscription : Juillet 2010
    Messages : 20
    Par défaut
    Merci beaucoup pour votre aide.
    J'ai fait la connexion avec hibernate et il m'a générée un fichier User.hbm.xml et une classe BaseUser.Java
    Mais le problème lorsque j'ai fait avec le bouton droit sur le fichier xml: hibernate synchronizer> Synchronize files , il m'a généré aussi une classe User.java

    Ci-dessous est le contenu de certains fichier de mon projet après la configuration de l'hibernate.

    hibernate.cfg.xml
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    <?xml version="1.0" encoding="utf-8"?>
    <!DOCTYPE hibernate-configuration
        PUBLIC "-//Hibernate/Hibernate Configuration DTD//EN"
        "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
     
    <hibernate-configuration>
        <session-factory >
     
    		<!-- local connection properties -->
    		<property name="hibernate.connection.url">jdbc:postgresql://localhost/test</property>
    		<property name="hibernate.connection.driver_class">org.postgresql.Driver</property>
    		<property name="hibernate.connection.username">postgres</property>
    		<property name="hibernate.connection.password">postgres</property>
    		<!-- property name="hibernate.connection.pool_size"></property -->
     
    		<!-- dialect for DB2 -->
            <property name="dialect">org.hibernate.dialect.DB2Dialect</property>
     
            <property name="hibernate.show_sql">false</property>
            <property name="hibernate.transaction.factory_class">org.hibernate.transaction.JDBCTransactionFactory</property>
        </session-factory>
    </hibernate-configuration>

    User.bhm.xml
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    <?xml version="1.0"?>
    <!DOCTYPE hibernate-mapping PUBLIC
    	"-//Hibernate/Hibernate Mapping DTD//EN"
    	"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd" >
     
    <hibernate-mapping package="org.hibernate">
    	<class
    		name="User"
    		table="User"
    	>
    		<meta attribute="sync-DAO">false</meta>
    		<id
    			name="Id"
    			type="string"
    			column="nom"
    		>
    			<generator class="sequence"/>
    		</id>
     
    		<property
    			name="Prenom"
    			column="prenom"
    			type="string"
    			not-null="true"
    			length="250"
    		/>
     
     
    	</class>	
    </hibernate-mapping>

    User.java
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    package org.hibernate;
     
    import org.hibernate.base.BaseUser;
     
     
     
    public class User extends BaseUser {
    	private static final long serialVersionUID = 1L;
     
    /*[CONSTRUCTOR MARKER BEGIN]*/
    	public User () {
    		super();
    	}
     
    	/**
             * Constructor for primary key
             */
    	public User (java.lang.String id) {
    		super(id);
    	}
     
    	/**
             * Constructor for required fields
             */
    	public User (
    		java.lang.String id,
    		java.lang.String prenom) {
     
    		super (
    			id,
    			prenom);
    	}
     
    /*[CONSTRUCTOR MARKER END]*/
     
     
    }

    BaseUser.java
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    package org.hibernate.base;
     
    import java.io.Serializable;
     
     
    /**
     * This is an object that contains data related to the User table.
     * Do not modify this class because it will be overwritten if the configuration file
     * related to this class is modified.
     *
     * @hibernate.class
     *  table="User"
     */
     
    public abstract class BaseUser  implements Serializable {
     
    	public static String REF = "User";
    	public static String PROP_PRENOM = "Prenom";
    	public static String PROP_ID = "Id";
     
     
    	// constructors
    	public BaseUser () {
    		initialize();
    	}
     
    	/**
             * Constructor for primary key
             */
    	public BaseUser (java.lang.String id) {
    		this.setId(id);
    		initialize();
    	}
     
    	/**
             * Constructor for required fields
             */
    	public BaseUser (
    		java.lang.String id,
    		java.lang.String prenom) {
     
    		this.setId(id);
    		this.setPrenom(prenom);
    		initialize();
    	}
     
    	protected void initialize () {}
     
     
     
    	private int hashCode = Integer.MIN_VALUE;
     
    	// primary key
    	private java.lang.String id;
     
    	// fields
    	private java.lang.String prenom;
     
     
     
    	/**
             * Return the unique identifier of this class
         * @hibernate.id
         *  generator-class="sequence"
         *  column="nom"
         */
    	public java.lang.String getId () {
    		return id;
    	}
     
    	/**
             * Set the unique identifier of this class
             * @param id the new ID
             */
    	public void setId (java.lang.String id) {
    		this.id = id;
    		this.hashCode = Integer.MIN_VALUE;
    	}
     
     
     
     
    	/**
             * Return the value associated with the column: prenom
             */
    	public java.lang.String getPrenom () {
    		return prenom;
    	}
     
    	/**
             * Set the value related to the column: prenom
             * @param prenom the prenom value
             */
    	public void setPrenom (java.lang.String prenom) {
    		this.prenom = prenom;
    	}
     
     
     
     
    	public boolean equals (Object obj) {
    		if (null == obj) return false;
    		if (!(obj instanceof org.hibernate.User)) return false;
    		else {
    			org.hibernate.User user = (org.hibernate.User) obj;
    			if (null == this.getId() || null == user.getId()) return false;
    			else return (this.getId().equals(user.getId()));
    		}
    	}
     
    	public int hashCode () {
    		if (Integer.MIN_VALUE == this.hashCode) {
    			if (null == this.getId()) return super.hashCode();
    			else {
    				String hashStr = this.getClass().getName() + ":" + this.getId().hashCode();
    				this.hashCode = hashStr.hashCode();
    			}
    		}
    		return this.hashCode;
    	}
     
     
    	public String toString () {
    		return super.toString();
    	}
     
     
    }
    J'arrive pas à comprendre la différence entre ces 2 classes java générées.
    De plus, comment je peux réellement accèder aux différents champs des différents ligne de ma table User afin de les afficher dans ma page JSF.
    Est ce que je dois ajouter des méthodes pour y accèder et dans quelle classe java entre 2 générées dois-je le faire?
    Merci beaucoup pour vos conseils

    PS: en effet, dois je plutôt poster ce problème dans une autre rubrique plus convenable dans ce forum?

Discussions similaires

  1. Renommer une database Postgres
    Par Johnybegood dans le forum PostgreSQL
    Réponses: 3
    Dernier message: 16/10/2014, 09h49
  2. embedded database la plus proche de postgres
    Par clubist dans le forum Débuter
    Réponses: 1
    Dernier message: 12/04/2013, 12h09
  3. probleme(http500) :jsf & ejb3 & database
    Par med_sala7 dans le forum JSF
    Réponses: 5
    Dernier message: 19/01/2010, 10h33
  4. createdb: could not connect to database postgres
    Par pat001 dans le forum Installation
    Réponses: 0
    Dernier message: 03/11/2009, 15h44
  5. [POSTGRES - C#] Remove Database
    Par angusyoung34 dans le forum PostgreSQL
    Réponses: 1
    Dernier message: 20/01/2006, 11h56

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo