पर रिकॉर्ड सम्मिलित नहीं करता है मुझे EntityManager.persist(Object)
विधि का उपयोग करने में समस्या है। अब जब मैं अपवाद के बिना ऐप काम करके अन्य समस्याओं से छुटकारा पाता हूं लेकिन ऑब्जेक्ट को मेरे डेटाबेस में नहीं रखा जाता है।EntityManager persist() विधि डेटाबेस
मेरी इकाई वर्ग:
@Entity
@Table(name ="Chain")
public class Chain implements Serializable{
@Id
@Column(name = "id")
private Long id;
@Column(name = "date")
private Date date;
@Column(name = "name")
private String name;
//setters and getters
}
मेरी दाव वर्ग:
@Transactional
@Repository("ChainDao")
public class ChainDaoImpl implements ChainDao{
private EntityManager em;
@PersistenceContext
public void setEntityManager(EntityManager em) {
this. em = em;
}
public int saveChain(Chain chain) {
chain.setDate(new Date());
chain.setId((long)44);
Boolean a;
em.persist(chain);
return 222;
}
}
मेरी xml संदर्भ:
<bean id="entityManagerFactory" class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean" >
<property name="persistenceXmlLocation" value="classpath*:META-INF/persistence.xml"></property></bean>
<bean class="org.springframework.orm.jpa.support.PersistenceAnnotationBeanPostProcessor" />
<bean class="org.springframework.orm.jpa.JpaTransactionManager">
<property name="entityManagerFactory"
ref="entityManagerFactory" />
</bean>
<bean id="transactionManager" class="org.springframework.orm.jpa.JpaTransactionManager">
<property name="entityManagerFactory" ref="entityManagerFactory" />
</bean>
और pereistence.xml
:
<persistence xmlns="http://java.sun.com/xml/ns/persistence" version="1.0">
<persistence-unit name="sample">
<provider>org.hibernate.ejb.HibernatePersistence</provider>
<!-- Scan for annotated classes and Hibernate mapping XML files -->
<properties>
<property name="hibernate.archive.autodetection" value="class, hbm"/>
<property name="hibernate.connection.driver_class" value="org.postgresql.Driver"/>
<property name="hibernate.connection.url" value="jdbc:postgresql://localhost:5432/database"/>
<property name="hibernate.connection.username" value="postgres"/>
<property name="hibernate.connection.password" value="pwd"/>
<property name="hibernate.dialect" value="org.hibernate.dialect.PostgreSQLDialect"/>
<property name="hibernate.show_sql" value="true"/>
</properties>
</persistence-unit>
</persistence>
क्या किसी को पता है कि मुझे क्या याद आ रही है?
अपने संस्था के लिए एक आईडी निर्दिष्ट न करें, और हाइबरनेट जाने (आईडी पीढ़ी तंत्रों में से एक का उपयोग करके) को बचाने के लिए उस पर आवंटित। –
यदि मैं '@GeneratedValue (strategy = GenerationType.AUTO) का उपयोग करता हूं, तो मुझे' org.hibernate.exception.SQLGrammarException मिलता है: अगली अनुक्रम मान नहीं मिल सका ' – Grzzzzzzzzzzzzz
कृपया अपनी वसंत-लेनदेन कॉन्फ़िगरेशन की जांच करें, मुझे इसी तरह की समस्या थी, और यह था अनुचित लेनदेन कॉन्फ़िगरेशन – blob