En la sección anterior, habla brevemente sobre la construcción y el uso de mybatis-plus. En esta sección, habla brevemente sobre cómo usar MP para implementar la paginación múltiple.
analizar
El proyecto utilizado todavía está en Boot Spring. Con respecto a la paginación, el sitio web oficial da una demostración de una sola tabla. De hecho, el principio de implementación de la paginación múltiple es el mismo, y todos son a través del interceptor mybatis
(¿Qué hace el interceptor? Hará algo por usted antes de que su SQL sea ejecutado, como la paginación. Usamos MP y no nos importa el límite. El interceptor lo hunda por nosotros. No nos importa el número total de caracteres. Después de que el interceptor obtiene nuestro SQL, los empalse select count(*) para nosotros y lo agrega al objeto de los parámetros).
lograr
1. Configure el interceptor
@EnableTransactionManagement@configuration@mapperscan ("com.web.member.mapper") clase pública mybatisplusconfig { / ** * myBatis-plus SQL Efficiency Efficiency complement [se puede desactivar en entorno de producción] * / @Bean Public Interceptorcor Informeinterceptor () {return New Informeinterceptor (); } / * * Complemento de paginación, identificando automáticamente los múltiples inquilinos en el tipo de base de datos, consulte el sitio web oficial [Extensión del complemento] * / @Bean PaginationInterceptor PagationInterceptor () {return New PaginationInterceptor (); }} 2. Interfaz Mapper y XML
/** * <p> * Interfaz MAPPER MAPER * </p> * * * @Author Yin Tianwen * @Since 2018-06-01 */Public Interface Usermapper extiende BaseMapper <User> {List <SerEDListModel> selectUserListPage (página de paginación, @param ("user") UserListBean); }Cabe señalar aquí que esta página de paginación es necesaria, de lo contrario, MP no podrá implementar la paginación para usted.
<select id = "selectUserListPage" resultType = "com.web.member.model.userListModel"> select * de ftms_user u izquierda unirse ftms_user_level l en u.level_id = l.id where 1 = 1 <if test = "user.nickname! = null"> y u.nickname como "%"#{user.nickName} "%" </if> </select> 3. Implementación del servicio
import com.web.member.beans.admin.userlistbean; import com.web.member.entity.user; import com.web.member.mapper.usermapper; import com.web.member.model.userlistmodel; import com.web.member.service.userervice; importar; importación; com.baomidou.mybatisplus.plugins.page; import com.baomidou.mybatisplus.service.impl.serviceImpl; import org.springframework.stereotype.service; importación de importación org.springframe.transaction.annotation.transactional;/** * <p> * Tabla de usuario; @Author Yin Tianwen * @Since 2018-06-01 */ @ServicePublic UserServiceImpl extiende ServiceImpl <SerMapper, User> Implementa UserSerService {@Transactional (readonly = true) @Override Public Page <SererListel> selectUserListPage (usuarios de usuarios) Página <> (user.getCurr (), user.getNums ()); // La página actual, se construye el número total de caracteres. El objeto de página se devuelve la página. }}Finalmente, establezca el resultado establecido en el objeto de página. La estructura JSON del objeto de página es la siguiente
{"Total": 48, // Total Records "Tamaño": 10, // cuántos "actuales" se muestran por página: 1, // Página actual "registros": [// Results set Array {...}, {...}, {...}, ...], "Páginas": 5 // Páginas totales}Lo anterior es todo el contenido de este artículo. Espero que sea útil para el aprendizaje de todos y espero que todos apoyen más a Wulin.com.