使用pagehelper分页插件遇到的问题

在使用这个插件的时候,若系统为分布式系统,例如dubbo+service+web,项目独立分开

如果在service服务端中使用pagehelper的时候,查询获取到的是代理对象Page,而不在是原来应该获取的实例对象,所以这个时候如果你直接将这个东西返回给web客户端的话,就会报出找不到类,因为在web客户端没有依赖导入pagehelper包,故,无法反序列化接收到service序列化返回给web的Page代理对象,因此有两种解决办法。

第一、在web客户端导入对于pagehelper的依赖
这个在service将对象序列化传给web的时候,web有相应的list可以反序列化接收数据

第二、在service服务端将返回的list做一个包装,不要直接放回第三方的代理对象
不使用第三方的对象做返回对象,就不会出现对象返序列化获取不了第三方代理对象的问题了

如下代码:

@Override
public List<User> listUser(User user, Integer page, Integer rows) throws Exception{
	PageHelper.startPage(page, rows);
	List<User> userList = userMapper.listUser(User );
	Page page = (Page) userList ;
	List<User> returnUserList = new ArrayList<User>(userList );
	return returnUserList;
}

你可能感兴趣的:(mybatis)