Na seção anterior, ele fala brevemente sobre a construção e o uso de Mybatis-plus. Nesta seção, ele fala brevemente sobre como usar o MP para implementar a paginação de várias mesa.
analisar
O projeto usado ainda é a botão de primavera. Em relação à paginação, o site oficial dá uma demonstração de uma única tabela. De fato, o princípio da implementação da paginação multifuncional é o mesmo, e todos estão através do Mybatis Interceptor
(O que o interceptador faz? Ele fará algo para você antes que seu SQL seja executado, como select count(*) paginação. Usamos o MP e não nos importamos com o limite. O interceptador a econha.
concluir
1. Configure o interceptador
@EnabetRansactionManagement@Configuration@mapperscan ("com.web.member.mapper") Public class mybatisplusconfig { / ** * mybatis-plus sql execução eficiência plug-in [pode ser desligado no ambiente de produção] * / @Bean Public Performance Performance Performance (); } / * * Plug-in de paginação, identificando automaticamente multi-inquilinos no tipo de banco de dados, consulte o site oficial [Extensão do plug-in] * / @Bean PublicinIntercept PaginationInterceptor () {return New PaginationInterceptor (); }} 2. Interface de mapeador e XML
/** * <p> * Tabela de usuários interface do mapeador * </p> * * @author yin tianwen * @since 2018-06-01 */interface pública UserMApper estende BasemApper <usery> {list <suserListModel> usuário); }Deve -se notar aqui que esta página de paginação é necessária, caso contrário, o MP não poderá implementar a paginação para você.
<select id = "selectUserListpage" resultType = "com.web.member.model.userlistmodel"> selecione * de ftms_user u junte -se ftms_user_level l em u.level_id = l.id where 1 = 1 <se test = user.nickname! </se> </leclect>
3. Implementação de serviços
importar com.web.member.beans.admin.userlistbean; importação com.web.member.entity.user; importação com.web.member.mapper.userMapper; import com.web.memervice.model.userlistmodel; import.Web.Member.Service.Service; com.baomidou.mybatisplus.plugins.page; importar com.baomidou.mybatisplus.service.impl.serviceImpl; importar org.springframework.anTation.TransAcy.Service; Import org.springFramework.Transaction.annotation.transal; @Author yin tianwen * @since 2018-06-01 */ @ServicePublic Classe UserServiceImpl estende ServiceImpl <UsermApper, Userring> implementa o UserService {@Transactional (readOnly = true) @Override Public Page <SuserListModel> Página <> (user.getCurr (), user.getNums ()); // A página atual, o número total de caracteres é construído. O objeto da página é retornado página.SetRecords (this.baseMapper.SelectUserListPage (página, usuário); }}Por fim, defina o resultado definido no objeto da página. A estrutura JSON do objeto da página é a seguinte
{"Total": 48, // Total Records "Tamanho": 10, // Quantas "atuais" são exibidas por página: 1, // página atual "Records": [// Resultado conjunto de conjunto {...}, {...}, {...}, ...], "Pages": 5 // Total Pages}O exposto acima é todo o conteúdo deste artigo. Espero que seja útil para o aprendizado de todos e espero que todos apoiem mais o wulin.com.