SSH 配置成功 数据库无数据

独角兽 2010-09-28 11:45:55
在运行中;产生的数据当时有效;但是数据库里没有;spring事务配置好了;
<!-- 配置事务管理器 -->
<bean id="transactionManager"
class="org.springframework.orm.hibernate3.HibernateTransactionManager">
<property name="sessionFactory">
<ref bean="sessionFactory" />
</property>
</bean>

<!-- 配置事务的传播特性 -->
<tx:advice id="txAdvice" transaction-manager="transactionManager">
<tx:attributes>
<tx:method name="find*" propagation="REQUIRED" />
<tx:method name="attach*" propagation="REQUIRED" />
<tx:method name="save*" propagation="REQUIRED" />
<tx:method name="delete*" propagation="REQUIRED" />
<tx:method name="*" read-only="true" />
</tx:attributes>
</tx:advice>

<!-- 那些类的哪些方法参与事务 -->
<aop:config>
<aop:pointcut id="allManagerMethod" expression="execution(* com.ssh.*.*(..))" />
<aop:advisor pointcut-ref="allManagerMethod" advice-ref="txAdvice" />
</aop:config>

不知道哪里错了.求解!
...全文
141 点赞 收藏 18
写回复
18 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
独角兽 2010-10-18
解决了.DAO需要提取接口;在配置execution(* com.ssh.*.*(..)) 就可以了!
回复
sowuqing 2010-09-29
我也感觉是你的那个
<tx:method name="*" read-only="true" />
有点问题,都写成只读了。那方法还能写入吗。。
回复
zhy0511 2010-09-29
<tx:method name="*" read-only="true" />会不会是你这里配置问题?估计是你把save方法都配成只读的了,所以存不进去吧,你试试吧
回复
kaida_7 2010-09-29
hibernate配置中好像没有指定自动生成表
回复
xyytuo 2010-09-29
回复
java_sick 2010-09-29
[Quote=引用 6 楼 ibm_hoojo 的回复:]
CSS code
execution(* com.ssh.*.*(..))
这个表达式是 任意返回值、参数的凡在com.ssh包下的所有类的所有方法,纳入到事务管理中
不知道你的是不是ssh下面的类
[/Quote]

你那数据库无数据是什么意思》
回复
zhy0511 2010-09-29
没有其他的配置了吗?比如hibernate.properties另外,hibernate.hbm.xml中的字段属性的updateable的值是true还是false??insertable的值呢?
回复
独角兽 2010-09-29
[Quote=引用 10 楼 jiangiwen 的回复:]
是自动生成的bean 吗?
[/Quote]
是自动生成的;
去掉那行也没用;
回复
stone1116 2010-09-28
没报错吗,看看什么问题
回复
zhy0511 2010-09-28
把你配置hibernate那部分贴出来吧
回复
共享to未来 2010-09-28
<aop:pointcut id="allManagerMethod" expression="execution(* com.ssh.*.*(..))" />
看下这里是否匹配对了
回复
zhy0511 2010-09-28
会不会是你hibernate配置的时候 <property name="hbm2ddl.auto">create</property>设置成create了?改成update试试?
回复
jiangiwen 2010-09-28
是自动生成的bean 吗?
回复
computerclass 2010-09-28
感觉哪个地方好象没提交呀!
回复
独角兽 2010-09-28
hibernate部分
<hibernate-configuration>

<session-factory>
<property name="connection.username">sa</property>
<property name="connection.url">
jdbc:sqlserver://localhost:1433;DataBaseName=Test
</property>
<property name="dialect">
org.hibernate.dialect.SQLServerDialect
</property>
<property name="myeclipse.connection.profile">SQL2005</property>
<property name="connection.password">duanyan0332</property>
<property name="connection.driver_class">
com.microsoft.sqlserver.jdbc.SQLServerDriver
</property>
<mapping resource="com/ssh/Entity/TabTest.hbm.xml" />

</session-factory>

</hibernate-configuration>
src下
com.ssh.Action
com.ssh.comm
com.ssh.DAO
com.ssh.Entity
回复
hoojo 2010-09-28
execution(* com.ssh.*.*(..))
这个表达式是 任意返回值、参数的凡在com.ssh包下的所有类的所有方法,纳入到事务管理中
不知道你的是不是ssh下面的类
回复
HYbdbc 2010-09-28
确实的看看hibernate那部分~!
回复
相关推荐
发帖
Web 开发
创建于2007-09-28

8.0w+

社区成员

Java Web 开发
申请成为版主
帖子事件
创建了帖子
2010-09-28 11:45
社区公告
暂无公告