当前位置:编程学习 > JAVA >>

不能持久化到数据库中的一个问题

最近想用注解的方式 搭建一个框架 可以测试过程中出现点小问题。
public String add() {

mytest m=new mytest();
m.setUserName("123");
m.setPassword("44");
System.out.println(t.myservice());
try
{
t.entityManager.persist(m);
                   //这里不报错,但是数据库中也没有写入记录,不解...
                   }
catch(Exception ex)
{
ex.printStackTrace();
}
m=t.entityManager.find(mytest.class, 1);//这里的查询是可以查出数据的。
System.out.println(m.getUserName());

System.out.println("添加测试");
return SUCCESS;
} --------------------编程问答-------------------- 数据库里没有主键是1的,但是find()居然查出来了? --------------------编程问答-------------------- 数据库里有主键为1 的记录  ,出现的问题是数据存不到数据库里,  但是从数据库读是没有问题的 --------------------编程问答-------------------- 这个是我的Spring 配置

<!-- 使用annotation 自动注册bean,并保证@Required,@Autowired的属性被注入 -->
<context:component-scan base-package="com.my.test.service" />

<!-- 注释有效 -->
<bean class="org.springframework.orm.jpa.support.PersistenceAnnotationBeanPostProcessor" />

<!-- 配置事务管理器 -->
<bean id="transactionManager" class="org.springframework.orm.jpa.JpaTransactionManager">
<property name="entityManagerFactory" ref="entityManagerFactory" />
</bean>

<bean id="entityManagerFactory"
class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean"
p:persistence-xml-location="classpath:META-INF/persistence.xml"
p:data-source-ref="dataSource">
<property name="jpaVendorAdapter">
<bean class="org.springframework.orm.jpa.vendor.HibernateJpaVendorAdapter">
<property name="generateDdl" value="false" />
<property name="showSql" value="true" />
</bean>
</property>
<property name="jpaProperties">
<value>
hibernate.ejb.naming_strategy=org.hibernate.cfg.ImprovedNamingStrategy
hibernate.dialect=${hibernate.dialect}
hibernate.hbm2ddl.auto=update
</value>
</property>
</bean>

<!-- 配置数据源 -->
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"
destroy-method="close" p:driverClassName="${jdbc.driver}" p:url="${jdbc.url}"
p:username="${jdbc.username}" p:password="${jdbc.password}"
p:validationQuery="${jdbc.validationQuery}" />
<!-- jdbcTemplate -->
<bean id="sjTemplate" class="org.springframework.jdbc.core.simple.SimpleJdbcTemplate">
<constructor-arg type="javax.sql.DataSource">
<ref bean="dataSource" />
</constructor-arg>
</bean>

<!-- 使用annotation定义事务 -->
<tx:annotation-driven transaction-manager="transactionManager" />
<bean id="messageSource"
class="org.springframework.context.support.ResourceBundleMessageSource">
<property name="basenames">
<list>
<value>global</value>
<value>application</value>
</list>
</property>
</bean>
--------------------编程问答-------------------- 问题已解决了不劳烦大家了

呵呵!!! --------------------编程问答-------------------- 解决办法分享下啊。。。。。。 --------------------编程问答-------------------- 不用new对象,提供get,set,方法会自动填充参数
补充:Java ,  Web 开发
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,