mysql - Empty DataBase when i use JPA2 with Hibernate -


i have easy console application jpa.

package com.concretepage.entity;  import javax.persistence.*;  @entity @table(name="farmer") @namedquery(name = "farmer.getall", query = "select farmer a") public class farmer {     @id     @column(name="id")     private int id;     @column(name="name")     private string name;     @column(name="village")      private string village;     public int getid() {         return id;     }     public void setid(int id) {         this.id = id;     }     public string getname() {         return name;     }     public void setname(string name) {         this.name = name;     }     public string getvillage() {         return village;     }     public void setvillage(string village) {         this.village = village;     }  }  package com.concretepage;  import com.concretepage.entity.farmer;  import javax.persistence.entitymanager; import javax.persistence.entitymanagerfactory; import javax.persistence.persistence; import javax.persistence.typedquery; import java.util.list;  public class jpademo {     private static final entitymanagerfactory emfactory;     static {            emfactory = persistence.createentitymanagerfactory("com.concretepage");     }     public static entitymanager getentitymanager(){         return emfactory.createentitymanager();     }     public static void main(string[] args) {         entitymanager em = getentitymanager();           em.gettransaction().begin();          farmer farmer = em.find(farmer.class, 3);         system.out.println(farmer);         typedquery<farmer> namedquery = em.createnamedquery("farmer.getall",     farmer.class);          list<farmer> farmers = namedquery.getresultlist();         system.out.println(farmers);          system.out.println("done");     } }  <persistence xmlns="http://java.sun.com/xml/ns/persistence"              xmlns:xsi="http://www.w3.org/2001/xmlschema-instance"              xsi:schemalocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_2_0.xsd"              version="2.0">     <persistence-unit name="com.concretepage">         <description>jpa test</description>         <provider>org.hibernate.ejb.hibernatepersistence</provider>         <class>com.concretepage.entity.farmer</class>         <properties>             <property name="hibernate.dialect" value="org.hibernate.dialect.mysqldialect"/>             <property name="hibernate.hbm2ddl.auto" value="validate"/>              <property name="javax.persistence.jdbc.driver" value="com.mysql.jdbc.driver"/>             <property name="javax.persistence.jdbc.url" value="jdbc:mysql://localhost/test"/>             <property name="javax.persistence.jdbc.user" value="root"/>             <property name="javax.persistence.jdbc.password" value="root"/>         </properties>     </persistence-unit> </persistence> 

methods em.find(...) , namedquery.getresultlist() return true responses! everythink'is ok :) when use code in web service application:

@stateless public class testservice {      @persistencecontext(unitname = "maindb")     private entitymanager em;      public farmer add(farmer farmer){         farmer = em.merge(farmer);         return farmer;     }      public farmer get(integer id){         return em.find(farmer.class, id);     }      public list<farmer> getall(){         typedquery<farmer> namedquery = em.createnamedquery("farmer.getall", farmer.class);         return namedquery.getresultlist();     } } <persistence-unit name="maindb" transaction-type="jta">     <provider>org.hibernate.jpa.hibernatepersistenceprovider</provider>     <class>model.farmer</class>     <properties>         <property name="hibernate.dialect" value="org.hibernate.dialect.mysqldialect"/>         <property name="hibernate.hbm2ddl.auto" value="validate"/>          <property name="javax.persistence.jdbc.driver" value="com.mysql.jdbc.driver"/>         <property name="javax.persistence.jdbc.url" value="jdbc:mysql://localhost/test"/>         <property name="javax.persistence.jdbc.user" value="root"/>         <property name="javax.persistence.jdbc.password" value="root"/>     </properties> </persistence-unit> 

if use:

<property name="hibernate.hbm2ddl.auto" value="validate"/> or not use

recieve exeption: org.hibernate.hibernateexception: missing table if use:

<property name="hibernate.hbm2ddl.auto" value="update"/>

recieve null response em.find(...) , namedquery.getresultlist(), table , data exist! how can use curent db , data?


Comments

Popular posts from this blog

ubuntu - PHP script to find files of certain extensions in a directory, returns populated array when run in browser, but empty array when run from terminal -

php - How can i create a user dashboard -

javascript - How to detect toggling of the fullscreen-toolbar in jQuery Mobile? -