IBATIS insert方法返回值,返沪一直是null

在程序中,当事务控制到达Service层时,DAO层进行insert操作总是返回null,探讨是否由于事务未提交的原因,并提出将DAO层insert返回类型改为Void,通过异常来判断的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1 程序中,事务控制到了Service层(声明式事务),在DAO层进行了insert操作
总是返回null,是不是事务还没有提交的缘故??
索性DAO层的insert返回类型全部用Void
控制层直接用异常来判断。
import org.apache.ibatis.io.Resources; import org.apache.ibatis.session.SqlSession; import org.apache.ibatis.session.SqlSessionFactory; import org.apache.ibatis.session.SqlSessionFactoryBuilder; import org.junit.Test; import org.mybatis.mapper.UserMapper; import org.mybatis.pojo.User; import java.awt.print.Book; import java.io.File; import java.io.IOException; import java.io.InputStream; import java.util.List; public class MyBatisTest { @Test public void testMyBatis() throws IOException { //加载核心配置文件 InputStream is = Resources.getResourceAsStream("mybatis-config.xml"); //获取sqlSessionFactoryBuilder SqlSessionFactoryBuilder sqlSessionFactoryBuilder = new SqlSessionFactoryBuilder(); //获取sqlSessionFactory对象,是生产sqlSession的一个工厂 SqlSessionFactory sqlSessionFactory = sqlSessionFactoryBuilder.build(is); //获取sqlSession对象,代表java程序与数据库之间的对话,HttpSession是Java程序与浏览器间的对话 SqlSession sqlSession = sqlSessionFactory.openSession(true);//默认不自动提交 //获取mapper接口对象 UserMapper mapper=sqlSession.getMapper(UserMapper.class); //测试功能 // 提交事务,打开autoCommit就不用手动提交了 // sqlSession.commit(); // int result=mapper.insertUser();//返回一个受影响的行数,增删改查返回值都是返回行数 // int result=mapper.updateUser(); // User user=mapper.selectUser(); // int result=mapper.deleteUser(); // System.out.println(user); // System.out.println(result); } }如何查找所有对象,形成list集合
最新发布
03-15
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值