spring+struts+hibernate 中 出现不能连续添加多条记录 应该有错误信息,或者异常信息的!贴出来看看!可以到tomcat控制台下找找看! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 真的一点错误都没报。我用的是自动生成主键的一个BEAN,里面有读取当前要添加的上表的SQL语句,显示了这个,就没有添加的语句出现,就定在那里不动了。 application.xml文件内容<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd"> <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"> <property name="driverClassName" value="com.microsoft.jdbc.sqlserver.SQLServerDriver"> </property> <property name="url" value="jdbc:microsoft:sqlserver://localhost:1433;databaseName=db"> </property> <property name="username" value="sa"></property> <property name="password" value="sa123"></property> </bean> <bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean"> <property name="dataSource"> <ref bean="dataSource" /> </property> <property name="hibernateProperties"> <props> <prop key="hibernate.dialect"> org.hibernate.dialect.SQLServerDialect </prop> </props> </property> <property name="mappingResources"> <list> <value>hibernate/TbContentUser.hbm.xml</value> <value>hibernate/TbCtrlUserRole.hbm.xml</value> <value>hibernate/TbCtrlRole.hbm.xml</value> <value>hibernate/TbCtrlRolelimit.hbm.xml</value> <value>hibernate/TbCtrlMenu.hbm.xml</value> <value>hibernate/TbContentMenu.hbm.xml</value> <value>hibernate/TbContentCorpname.hbm.xml</value> <value>hibernate/TbContentTypename.hbm.xml</value> <value>hibernate/TbContentConfigtime.hbm.xml</value> <value>hibernate/TbContentUploadconfig.hbm.xml</value> <value>hibernate/TbContentUserinfo.hbm.xml</value> <value>hibernate/TbContentGdUploadcontent.hbm.xml</value> <value>hibernate/TbContentA.hbm.xml</value> <value>hibernate/TbContentVersion.hbm.xml</value> <value>hibernate/TbContentSoft.hbm.xml</value></list> </property> </bean> <!-- 事务处理 --> <bean id="transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager" autowire="byName"/> <!-- 抽象代理 --> <bean id="abstractPorxy" class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean" abstract="true"> <property name="transactionManager"> <ref local="transactionManager"/> </property> <property name="transactionAttributes"> <props> <prop key="getAllRole">PROPAGATION_REQUIRED,readOnly</prop> <prop key="login*">PROPAGATION_REQUIRED,readOnly</prop> <prop key="add*">PROPAGATION_REQUIRED</prop> <prop key="delete*">PROPAGATION_REQUIRED</prop> <prop key="upda*">PROPAGATION_REQUIRED</prop> <prop key="updateMenu">PROPAGATION_REQUIRED</prop> <prop key="set*">PROPAGATION_REQUIRED</prop> <prop key="get*">PROPAGATION_REQUIRED,readOnly</prop> <prop key="sele*">PROPAGATION_REQUIRED,readOnly</prop> <prop key="find*">PROPAGATION_REQUIRED,readOnly</prop> <prop key="getMountains">PROPAGATION_REQUIRED</prop> <prop key="userList">PROPAGATION_REQUIRED,readOnly</prop> <prop key="qryUser*">PROPAGATION_REQUIRED,readOnly</prop> <prop key="menu">PROPAGATION_REQUIRED,readOnly</prop> </props> </property> </bean> <!-- 定义Dao --> <bean id="tbContentUserDao" class="dao.impl.HibernateTbContentUserDaoImpl" autowire="byName"/> <bean id="userListDao" class="dao.impl.HibernateUserListDaoImpl" autowire="byName"/> <bean id="tbContentMenuDao" class="dao.impl.HibernateTbContentMenuDaoImpl" autowire="byName" /> <bean id="tbCtrlMenuDao" class="dao.impl.HibernateTbCtrlMenuDaoImpl" autowire="byName"></bean> <bean id="tbCtrlRoleDao" class="dao.impl.HibernateTbCtrlRoleDaoImpl" autowire="byName"></bean> <bean id="tbCtrlRolelimitDao" class="dao.impl.HibernateTbCtrlRolelimitDaoImpl" autowire="byName"/> <bean id="tbCtrlUserRoleDao" class="dao.impl.HibernateTbCtrlUserRoleDaoImpl" autowire="byName"></bean> <bean id="tbContentCorpnameDao" class="dao.impl.HibernateTbContentCorpnameDaoImpl" autowire="byName"/> <bean id="tbContentTypenameDao" class="dao.impl.HibernateTbContentTypenameDaoImpl" autowire="byName"/> <bean id="tbContentConfigtimeDao" class="dao.impl.HibernateTbContentConfigtimeDaoImpl" autowire="byName"/> <!-- 定义真实的Facade --> <bean id="realUserFacade" class="facade.userFacade.UsersFacade" autowire="byName" /> <bean id="realMenuFacade" class="facade.menuFacade.MenuFacade" autowire="byName"></bean> <bean id="realRoleFacade" class="facade.roleFacade.RoleFacade" autowire="byName" /> <bean id="realMobileFacade" class="facade.mobile.MobileFacade" autowire="byName" /> <bean id="realConfigFacade" class="facade.config.ConifgFacade" autowire="byName" /> <!-- 定义代理 --> <bean id="usersFacade" parent="abstractPorxy" > <property name="target"> <ref local="realUserFacade"/> </property> </bean> <bean id="menuFacade" parent="abstractPorxy"> <property name="target"> <ref local="realMenuFacade"/> </property> </bean> <bean id="roleFacade" parent="abstractPorxy"> <property name="target"> <ref local ="realRoleFacade"/> </property> </bean> <bean id="softFacade" parent="abstractPorxy"> <property name="target"> <ref local="realSoftFacade"/> </property> </bean> <!-- BaseAction --><!-- 将所有在BaseAction类中facade定义在下面 --> <bean id="baseActoin" abstract="true" class="struts.action.BaseAction"> <property name="usersFacade"> <ref local="usersFacade"/> </property> <property name="menuFacade"> <ref local="menuFacade"/> </property> <property name="roleFacade"> <ref local="roleFacade"/> </property> <property name="conifgFacade"> <ref local="conifgFacade"/> </property> </bean> <!-- 用户请求 --> <!-- 登陆 --> <bean name="/login" parent="baseActoin" class="struts.action.LoginAction" /> <!-- 用户例表 --><bean name="/qryUserList" parent="baseActoin" class="struts.action.UserListAction"></bean> <!-- 修改菜单 --><bean name="/updateMenu" parent="baseActoin" class="struts.action.UpdateMenuAction"></bean> <!-- 查找角色 --><bean name="/findRole" parent="baseActoin" class="struts.action.FindRoleAction"/> <!-- 退出系统 --><bean name="/exit" parent="baseActoin" class="struts.action.ExitAction"></bean> <!-- 用户例表 --><bean name="/userList" parent="baseActoin" class="struts.action.UserListAction"></bean> <!-- 删除用户 --> <bean name="/deleteUser" parent="baseActoin" class="struts.action.DeleteUserAction"></bean> <!-- 添加用户 --><bean name="/addUser" parent="baseActoin" class="struts.action.AddUserAction"></bean> <!-- 获取用信息 --><bean name="/getUserDetail" parent="baseActoin" class="struts.action.GetUserDetailAction"></bean> <!-- 修改用户 --><bean name="/updateUser" parent="baseActoin" class="struts.action.UpdateUserAction" /> <!-- 获取权限 --><bean name="/getMountains" parent="baseActoin" class="struts.action.GetMountainsAction" /> <!-- 设置权限 --><bean name="/setRole" parent="baseActoin" class="struts.action.SetRoleAction" /> <!-- 删除角色 --><bean name="/deleteRole" parent="baseActoin" class="struts.action.DeleteRoleAction"></bean> <!-- 修改角色 --><bean name="/updateRole" parent="baseActoin" class="struts.action.UpdateRoleAction"></bean> <!-- 修改密码 --><bean name="/updatePassword" parent="baseActoin" class="struts.action.UpdatePasswordAction"></bean> <bean name="/getConfig" parent="baseActoin" class="struts.action.config.GetConfigListAction" /> <!-- 查找配制信息 --><bean name="/findConfig" parent="baseActoin" class="struts.action.config.FindConfigAction" /> </beans>--因为贴不了这么多字,所有删除部份分了,希望有相关经验的人士点拨点拨, tomCat 下的日志在问题中说了明了,红色是我写的类 刚是我提的一个问题的描述,发错地方了,为了弥补这个过错这个问题我可能答得出原因:你的spring+struts+hibernate 框架中事务处理没到位,具体是你的那个请求Spring 中的<bean name ="add.." .. 这个没有进行事务, 也就是说事务没有提交或以借见我发错的Spring中的配制文件内容哦 或以给你解决!加分就无所谓了,助人为快乐之本 你在吗? hongbowu 兄弟,我的QQ是83255363,请加我。 用java实现日历记事本 struts2这个简单的程序哪里出错了 求解啊前辈们 S1SH底层DAO空指针 MyEclipse中如何使用Flex做动态实时曲线图 实现播放器 java mail的问题 Hibernate设置关联,比如(many to one),是否完全可以无视数据库本身有没有外键一类的关联存在 websphere上服务器配置的问题 帮一下小弟呀!!!帮一下小弟呀!!!关于数组的问题 求教:jar包导入后在包下面没有类文件 java连接池问题 我用JNI 法由DLL返回一个jclass 值, JNIEXPORT jclass 实例化的问题.
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd"> <bean id="dataSource"
class="org.apache.commons.dbcp.BasicDataSource">
<property name="driverClassName"
value="com.microsoft.jdbc.sqlserver.SQLServerDriver">
</property>
<property name="url"
value="jdbc:microsoft:sqlserver://localhost:1433;databaseName=db">
</property>
<property name="username" value="sa"></property>
<property name="password" value="sa123"></property>
</bean>
<bean id="sessionFactory"
class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
<property name="dataSource">
<ref bean="dataSource" />
</property>
<property name="hibernateProperties">
<props>
<prop key="hibernate.dialect">
org.hibernate.dialect.SQLServerDialect
</prop>
</props>
</property>
<property name="mappingResources">
<list>
<value>hibernate/TbContentUser.hbm.xml</value>
<value>hibernate/TbCtrlUserRole.hbm.xml</value>
<value>hibernate/TbCtrlRole.hbm.xml</value>
<value>hibernate/TbCtrlRolelimit.hbm.xml</value>
<value>hibernate/TbCtrlMenu.hbm.xml</value>
<value>hibernate/TbContentMenu.hbm.xml</value>
<value>hibernate/TbContentCorpname.hbm.xml</value>
<value>hibernate/TbContentTypename.hbm.xml</value>
<value>hibernate/TbContentConfigtime.hbm.xml</value>
<value>hibernate/TbContentUploadconfig.hbm.xml</value>
<value>hibernate/TbContentUserinfo.hbm.xml</value>
<value>hibernate/TbContentGdUploadcontent.hbm.xml</value>
<value>hibernate/TbContentA.hbm.xml</value>
<value>hibernate/TbContentVersion.hbm.xml</value>
<value>hibernate/TbContentSoft.hbm.xml</value></list>
</property>
</bean>
<!-- 事务处理 -->
<bean id="transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager" autowire="byName"/>
<!-- 抽象代理 -->
<bean id="abstractPorxy" class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean" abstract="true">
<property name="transactionManager">
<ref local="transactionManager"/>
</property>
<property name="transactionAttributes">
<props>
<prop key="getAllRole">PROPAGATION_REQUIRED,readOnly</prop>
<prop key="login*">PROPAGATION_REQUIRED,readOnly</prop>
<prop key="add*">PROPAGATION_REQUIRED</prop>
<prop key="delete*">PROPAGATION_REQUIRED</prop>
<prop key="upda*">PROPAGATION_REQUIRED</prop>
<prop key="updateMenu">PROPAGATION_REQUIRED</prop>
<prop key="set*">PROPAGATION_REQUIRED</prop>
<prop key="get*">PROPAGATION_REQUIRED,readOnly</prop>
<prop key="sele*">PROPAGATION_REQUIRED,readOnly</prop>
<prop key="find*">PROPAGATION_REQUIRED,readOnly</prop>
<prop key="getMountains">PROPAGATION_REQUIRED</prop>
<prop key="userList">PROPAGATION_REQUIRED,readOnly</prop>
<prop key="qryUser*">PROPAGATION_REQUIRED,readOnly</prop>
<prop key="menu">PROPAGATION_REQUIRED,readOnly</prop>
</props>
</property>
</bean>
<!-- 定义Dao -->
<bean id="tbContentUserDao" class="dao.impl.HibernateTbContentUserDaoImpl" autowire="byName"/>
<bean id="userListDao" class="dao.impl.HibernateUserListDaoImpl" autowire="byName"/>
<bean id="tbContentMenuDao" class="dao.impl.HibernateTbContentMenuDaoImpl" autowire="byName" />
<bean id="tbCtrlMenuDao" class="dao.impl.HibernateTbCtrlMenuDaoImpl" autowire="byName"></bean>
<bean id="tbCtrlRoleDao" class="dao.impl.HibernateTbCtrlRoleDaoImpl" autowire="byName"></bean>
<bean id="tbCtrlRolelimitDao" class="dao.impl.HibernateTbCtrlRolelimitDaoImpl" autowire="byName"/>
<bean id="tbCtrlUserRoleDao" class="dao.impl.HibernateTbCtrlUserRoleDaoImpl" autowire="byName"></bean>
<bean id="tbContentCorpnameDao" class="dao.impl.HibernateTbContentCorpnameDaoImpl" autowire="byName"/>
<bean id="tbContentTypenameDao" class="dao.impl.HibernateTbContentTypenameDaoImpl" autowire="byName"/>
<bean id="tbContentConfigtimeDao" class="dao.impl.HibernateTbContentConfigtimeDaoImpl" autowire="byName"/>
<!-- 定义真实的Facade -->
<bean id="realUserFacade" class="facade.userFacade.UsersFacade" autowire="byName" />
<bean id="realMenuFacade" class="facade.menuFacade.MenuFacade" autowire="byName"></bean>
<bean id="realRoleFacade" class="facade.roleFacade.RoleFacade" autowire="byName" /> <bean id="realMobileFacade" class="facade.mobile.MobileFacade" autowire="byName" />
<bean id="realConfigFacade" class="facade.config.ConifgFacade" autowire="byName" />
<!-- 定义代理 -->
<bean id="usersFacade" parent="abstractPorxy" >
<property name="target">
<ref local="realUserFacade"/>
</property>
</bean>
<bean id="menuFacade" parent="abstractPorxy">
<property name="target">
<ref local="realMenuFacade"/>
</property>
</bean>
<bean id="roleFacade" parent="abstractPorxy">
<property name="target">
<ref local ="realRoleFacade"/>
</property>
</bean>
<bean id="softFacade" parent="abstractPorxy">
<property name="target">
<ref local="realSoftFacade"/>
</property>
</bean>
<!-- BaseAction --><!-- 将所有在BaseAction类中facade定义在下面 -->
<bean id="baseActoin" abstract="true" class="struts.action.BaseAction">
<property name="usersFacade">
<ref local="usersFacade"/>
</property>
<property name="menuFacade">
<ref local="menuFacade"/>
</property>
<property name="roleFacade">
<ref local="roleFacade"/>
</property>
<property name="conifgFacade">
<ref local="conifgFacade"/>
</property> </bean>
<!-- 用户请求 -->
<!-- 登陆 --> <bean name="/login" parent="baseActoin" class="struts.action.LoginAction" />
<!-- 用户例表 --><bean name="/qryUserList" parent="baseActoin" class="struts.action.UserListAction"></bean>
<!-- 修改菜单 --><bean name="/updateMenu" parent="baseActoin" class="struts.action.UpdateMenuAction"></bean> <!-- 查找角色 --><bean name="/findRole" parent="baseActoin" class="struts.action.FindRoleAction"/>
<!-- 退出系统 --><bean name="/exit" parent="baseActoin" class="struts.action.ExitAction"></bean>
<!-- 用户例表 --><bean name="/userList" parent="baseActoin" class="struts.action.UserListAction"></bean>
<!-- 删除用户 --> <bean name="/deleteUser" parent="baseActoin" class="struts.action.DeleteUserAction"></bean>
<!-- 添加用户 --><bean name="/addUser" parent="baseActoin" class="struts.action.AddUserAction"></bean>
<!-- 获取用信息 --><bean name="/getUserDetail" parent="baseActoin" class="struts.action.GetUserDetailAction"></bean>
<!-- 修改用户 --><bean name="/updateUser" parent="baseActoin" class="struts.action.UpdateUserAction" />
<!-- 获取权限 --><bean name="/getMountains" parent="baseActoin" class="struts.action.GetMountainsAction" />
<!-- 设置权限 --><bean name="/setRole" parent="baseActoin" class="struts.action.SetRoleAction" />
<!-- 删除角色 --><bean name="/deleteRole" parent="baseActoin" class="struts.action.DeleteRoleAction"></bean>
<!-- 修改角色 --><bean name="/updateRole" parent="baseActoin" class="struts.action.UpdateRoleAction"></bean>
<!-- 修改密码 --><bean name="/updatePassword" parent="baseActoin" class="struts.action.UpdatePasswordAction"></bean> <bean name="/getConfig" parent="baseActoin" class="struts.action.config.GetConfigListAction" />
<!-- 查找配制信息 --><bean name="/findConfig" parent="baseActoin" class="struts.action.config.FindConfigAction" />
</beans>
--因为贴不了这么多字,所有删除部份分了,希望有相关经验的人士点拨点拨,
为了弥补这个过错这个问题我可能答得出原因:你的spring+struts+hibernate 框架中事务处理没到位,具体是你的那个请求
Spring 中的
<bean name ="add.." ..
这个没有进行事务, 也就是说事务没有提交
或以借见我发错的Spring中的配制文件内容哦 或以给你解决!加分就无所谓了,助人为快乐之本