Web Analytics

uni-page

⭐ 158 stars Spanish by ethan-carter-g

🌐 Idioma

Uni-Page Marco de Paginación

Uni-Page es un marco de paginación universal basado en Java, que mediante un diseño abstracto, proporciona una interfaz de consulta de paginación unificada para diferentes fuentes de datos. El marco adopta una arquitectura modular, integrando actualmente JDBC, Mybatis, MongoDB, Elasticsearch y otras fuentes de datos, y ofrece un mecanismo de extensión flexible.

Diseño Central

El diseño central del marco gira en torno a cuatro componentes clave:

Objetivos de diseño

Escenarios de uso

Módulos principales

uni-page

Biblioteca central de paginación, proporciona interfaces básicas de paginación y una implementación abstracta.

uni-page-jdbc

Módulo de soporte para fuentes de datos JDBC, ofrece una implementación de paginación basada en JDBC.

uni-page-jdbc-mybatis

Módulo de integración con MyBatis, proporciona soporte de integración con el framework MyBatis.

uni-page-mongodb

Módulo de soporte para fuentes de datos MongoDB, ofrece una implementación de paginación basada en MongoDB.

uni-page-elasticsearch

Módulo de soporte para fuentes de datos Elasticsearch, ofrece una implementación de paginación basada en ES.

spring-boot-starter-web-uni-page

Módulo de soporte de paginación para entornos Spring MVC, proporciona integración con Spring MVC, tan simple como escribir un controlador común.

web-uni-page-test

Módulo de pruebas de paginación en entorno Spring Boot Web, proporciona pruebas de integración de la funcionalidad de paginación.

Inicio rápido, usando uni-page-jdbc como ejemplo

Dependencia Maven


    com.github.ethancarter
    uni-page-jdbc
    1.9

Ejemplo sencillo

public class PaginationTest {
   
    public void page() {
        PaginationStatementTemplate operations = new PaginationStatementTemplate();
        operations.addStatementExecutor(new Sql2oPaginationNamedParameterStatementExecutor(dataSource));
        
        // 1. 创建分页语句
        PaginationStatement statement = of(b -> b
                .sql("SELECT * FROM user WHERE username LIKE :username")
                .paramMap("username", "%admin%")
                .pageable(0, 10)
                .sort("id", Sort.Direction.DESC));
        
        // 2. 执行查询
        PageInformation information = operations.queryForInformation(statement);
        Page page = operations.queryForResultSet(statement, new JdbcBeanPropertyPaginationRowMapper<>(User.class));
    }

// User实体类 class User { private Long id; private String username; // getters and setters } }

Agradecimientos

Durante el desarrollo de este marco, he sido profundamente influenciado e inspirado por la comunidad de código abierto. Gracias a esos expertos que comparten desinteresadamente sus experiencias técnicas, es vuestra sabiduría y contribución lo que ha permitido el nacimiento de este marco. Un agradecimiento especial a los excelentes proyectos de código abierto que han aportado inspiración en el diseño y enfoques de implementación; estas valiosas experiencias me han permitido avanzar apoyándome en los hombros de gigantes.

¡Gracias a todos los expertos que contribuyen a la comunidad de código abierto!

🌟 Apoya el proyecto

Si crees que este proyecto te ha sido útil, ¡te invito a hacer clic en la ⭐Star en la esquina superior derecha para apoyarme!

--- Tranlated By Open Ai Tx | Last indexed: 2025-08-28 ---