sqlSession.update返回是int 不是自定义的类型呀
时间: 2024-01-02 08:02:20 浏览: 89
Mybatis(2).pdf
非常抱歉,我之前的回答有误。在 MyBatis 中,`SqlSession` 的 `update` 方法返回的确实是一个 `int` 类型,表示更新操作影响的行数,而不是返回被更新的数据。
如果你希望获取更新后的数据,你可以考虑在更新操作之后,再执行一次查询操作来获取最新的数据。例如,在更新操作之后,可以通过 `selectOne` 或者 `selectList` 方法来执行查询操作,获取更新后的数据。
以下是一个示例:
```java
// 执行更新操作
int affectedRows = sqlSession.update("yourMapper.updateStatement", yourParameter);
// 执行查询操作,获取更新后的数据
YourResultType updatedData = sqlSession.selectOne("yourMapper.selectStatement", yourParameter);
```
这样,`updatedData` 对象将包含更新后的数据。
请注意,这种方式需要进行两次数据库操作,可能会影响性能。如果你对性能要求较高,可以考虑使用数据库特定的功能,如 PostgreSQL 的 `RETURNING` 子句或触发器来实现更新后返回被更新的数据的需求。
阅读全文