我使用ibatis会话ResultHandler传输ResultSet。
我有自己的ResultHandler实现
public class StreamResultHandler<T> implements ResultHandler
{
private JobType<T> job;
public StreamResultHandler(ReplicatorType<T> replicatorType)
{
this.job = replicatorType;
}
@Override
public void handleResult(ResultContext context)
{
T type = (T) context.getResultObject();
job.callEndPointService(type);
}
}
&#13;
当我的select语句没有返回任何行时,mybatis甚至没有调用handleResult方法。我想在没有返回任何行时对数据库进行一些更新。
是否有指定行数的计数/标志?我怎样才能做到这一点。
我正在使用mybatis-3.2.2。
感谢任何帮助。
提前致谢。
答案 0 :(得分:0)
在count
实施中添加StreamResultHandler
,并在handleResult()
中将其递增。处理的总结果将在count()
方法中提供,如下所述。
public class StreamResultHandler<T> implements ResultHandler
{
private JobType<T> job;
private int count;
public StreamResultHandler(ReplicatorType<T> replicatorType)
{
this.job = replicatorType;
}
@Override
public void handleResult(ResultContext context)
{
T type = (T) context.getResultObject();
job.callEndPointService(type);
count++;
}
public int count()
{
return count;
}
}