代码-findByProperty不提交事务

问题描述

findByProperty不提交事务
用框架自动生成的代码,findById就能提交事务,findByProperty不提交事务

action代码

 // 查找管理员    public String searchAdmin() {        HttpServletRequest request = ServletActionContext.getRequest();        String aname = request.getParameter(""aname"");        List<Admin> list=iAdminBiz.findByAname(aname);        request.setAttribute(""admin"" list);        return ""searchAdmin"";    }

接口

    public List<Admin> findByAname(Object aname);
    @Override    public List<Admin> findByAname(Object aname) {        return adminDAO.findByAname(aname);    }

Hibernate生成代码

    public List findByProperty(String propertyName Object value) {        log.debug(""finding Admin instance with property: "" + propertyName                + "" value: "" + value);        try {            String queryString = ""from Admin as model where model.""                    + propertyName + ""= ?"";            Query queryObject = getSession().createQuery(queryString);            queryObject.setParameter(0 value);            return queryObject.list();        } catch (RuntimeException re) {            log.error(""find by property name failed"" re);            throw re;        }    }    public List findByAname(Object aname) {        return findByProperty(ANAME aname);    }

解决方案

分布式事务的两级提交
mybatis不提交事务获取主键

解决方案二:
看看spring的配置文件,也许byId结尾的方法走事务,by~~其他的就不走事务了

解决方案三:
看看spring的配置文件,也许byId结尾的方法走事务,by~~其他的就不走事务了

解决方案四:
我发现在测试类中能调用该方法,但是在action中却不能调用
但是findById是可以用的,完全不知道是什么问题

时间: 2024-10-29 22:59:52

代码-findByProperty不提交事务的相关文章

mysql出错的代码扫盲

扫盲大讲堂:mysql出错的代码解析及解答 1005:创建表失败 1006:创建数据库失败 1007:数据库已存在,创建数据库失败 1008:数据库不存在,删除数据库失败 1009:不能删除数据库文件导致删除数据库失败 1010:不能删除数据目录导致删除数据库失败 1011:删除数据库文件失败 1012:不能读取系统表中的记录 1020:记录已被其他用户修改 1021:硬盘剩余空间不足,请加大硬盘可用空间 1022:关键字重复,更改记录失败 1023:关闭时发生错误 1024:读文件错误 102

spring-在Hibernate声明式事务中,提交事务抛出异常

问题描述 在Hibernate声明式事务中,提交事务抛出异常 感谢在前 在使用Spring+Hibernate声明式事务中,需要插入大量数据,为了提高插入效率, 需要每隔固定条数提交一次错误,但是在提交事务之后,声明式事务自动提交时就 会抛出异常: Could not commit Hibernate transaction; nested exception is org.hibernate.Tra nsactionException: Transaction not successfully

谁能帮我注释一下每句代码的意思

问题描述 class DataBaseOperate { SqlConnection conn; private void OpenConn()//打开数据库 { conn = new SqlConnection();conn.ConnectionString = ConfigurationManager.AppSettings["sqlconn"].ToString(); conn.Open(); } private void CloseConn()//关闭数据库 { conn.Cl

Android 保存Fragment 切换状态实例代码_Android

前言  一般频繁切换Fragment会导致频繁的释放和创建,如果Fragment比较臃肿体验就非常不好了,这里分享一个方法.  正文  一.应用场景   1.不使用ViewPager   2.不能用replace来切换Fragment,会导致Fragment释放(调用onDestroyView)  二.实现 1.xml <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:

PostgreSQL 同步流复制原理和代码浅析

数据库ACID中的持久化如何实现 数据库ACID里面的D,持久化. 指的是对于用户来说提交的事务,数据是可靠的,即使数据库crash了,在硬件完好的情况下,也能恢复回来.PostgreSQL是怎么做到的呢,看一幅图,画得比较丑,凑合看吧.假设一个事务,对数据库做了一些操作,并且产生了一些脏数据,首先这些脏数据会在数据库的shared buffer中.同时,产生这些脏数据的同时也会产生对应的redo信息,产生的REDO会有对应的LSN号(你可以理解为REDO 的虚拟地址空间的一个唯一的OFFSET

session-Hibernate的这段代码在myeclipse中运行使用tx.com

问题描述 Hibernate的这段代码在myeclipse中运行使用tx.com static Department add(){ Session s = null; Transaction tx = null; try{ Department depart = new Department(); depart.setName("depart"); Employee employee1 = new Employee(); employee1.setName("employee

项目连接分布式数据库之后,无法提交事务。求大神指点

问题描述 项目需要连接分布式数据库,采用了Atomikos3.7.0+spring3.2.0+hibernate4.2.0.目前能够连接到数据库,但是无法进行事务的提交,下面贴上配置:spring.xml<?xmlversion="1.0"encoding="UTF-8"?><beansxmlns="http://www.springframework.org/schema/beans"xmlns:aop="http:

MySQL数据库的出错代码列表_Mysql

MySQL出错代码列表:  1005:创建表失败  1006:创建数据库失败  1007:数据库已存在,创建数据库失败  1008:数据库不存在,删除数据库失败  1009:不能删除数据库文件导致删除数据库失败  1010:不能删除数据目录导致删除数据库失败  1011:删除数据库文件失败  1012:不能读取系统表中的记录  1020:记录已被其他用户修改  1021:硬盘剩余空间不足,请加大硬盘可用空间  1022:关键字重复,更改记录失败  1023:关闭时发生错误  1024:读文件错误

CodeSmith系列(二)——使用CodeSmith生成ASP.NET后台代码

因为表单的后台代码都差不多,所以采用了CodeSmith生成.由于表单的控制是基于XML的,所以可以根据XML自定义生成.由于没时间,就不多写了,具体模板代码见最后. 在这里,先选择变量.如下: XMl文件内容如下: <?xml version="1.0" encoding="utf-8" ?> <FieldConfig> <GlobalDefaultConfig> <Description>付款确认单</Des