| package com.xzx.gc.model; | 
|   | 
| import com.fasterxml.jackson.annotation.JsonIgnore; | 
| import com.xzx.gc.annotation.Query; | 
| import com.xzx.gc.util.PageQuery; | 
|   | 
| import java.lang.reflect.Field; | 
|   | 
| /** | 
|  * 子类继承此类获得翻页功能 | 
|  * @author lijiazhi | 
|  */ | 
| public class PageParam { | 
|      Integer page = null; | 
|      Integer limit = null; | 
|   | 
|     public Integer getPage() { | 
|         return page; | 
|     } | 
|   | 
|     public void setPage(Integer page) { | 
|         this.page = page; | 
|     } | 
|   | 
|     @JsonIgnore | 
|     public PageQuery getPageQuery() { | 
|         Field[] fs =this.getClass().getDeclaredFields(); | 
|         for(Field f:fs){ | 
|             Query query = f.getAnnotation(Query.class); | 
|             if(query==null){ | 
|                 continue ; | 
|             } | 
|             if (query.fuzzy()) { | 
|                 try { | 
|                     if ( f.getType() == String.class) { | 
|                         f.setAccessible(true); | 
|                         Object o = f.get(this); | 
|                         if (o != null && !o.toString().isEmpty()) { | 
|                             f.set(this,"%"+o.toString()+"%"); | 
|                         } | 
|                     } | 
|                 } catch (IllegalAccessException e) { | 
|                     e.printStackTrace(); | 
|                 } | 
|             } | 
|         } | 
|         PageQuery query = new PageQuery(); | 
|         query.setParas(this); | 
|         if (page != null) { | 
|             query.setPageNumber(page); | 
|             query.setPageSize(limit); | 
|         } | 
|         return query; | 
|     } | 
|   | 
|     public Integer getLimit() { | 
|         return limit; | 
|     } | 
|   | 
|     public void setLimit(Integer limit) { | 
|         this.limit = limit; | 
|     } | 
|   | 
|   | 
| } |