UJCMS: um sistema de gerenciamento de conteúdo de código aberto baseado em SpringBoot
UJCMS é um sistema de gerenciamento de conteúdo de código aberto (Java CMS) desenvolvido com base em SpringBoot, com o objetivo de fornecer aos desenvolvedores uma plataforma flexível, fácil de usar e poderosa. Ele faz uso de tecnologias convencionais como SpringBoot, MyBatis, Shiro, Lucene, FreeMarker, TypeScript, Vue3, ElementPlus e faz referência aos anos de experiência de desenvolvimento da Jspxcms para otimizar e melhorar alguns pontos problemáticos do sistema original.
Destaques Técnicos do UJCMS
UJCMS sempre adere aos princípios de "simples" e "flexível" na seleção de tecnologia e design de arquitetura, esforçando-se para reduzir os custos de manutenção do sistema e dificuldades secundárias de desenvolvimento, e fornecer aos desenvolvedores uma experiência mais conveniente.
1. Arquitetura técnica
Camada de persistência: use MyBatis para substituir o Hibernate para simplificar as operações de persistência de dados e melhorar a eficiência do desenvolvimento.
Camada de visualização: use Vue3 com front-end e back-end separados para substituir JSP e obter um design de interface de usuário mais moderno e melhorar a experiência do usuário.
Banco de dados: redesenhe a arquitetura do banco de dados e otimize o armazenamento de dados e os métodos de acesso.
2. Destaques de funções
O UJCMS oferece diversas funções, cobrindo os principais requisitos de um sistema de gerenciamento de conteúdo, e melhora a flexibilidade e facilidade de uso do sistema por meio de alguns designs inovadores:
1. Campos personalizados
Consultável: Todos os campos personalizados podem ser consultados, o que aumenta a flexibilidade do sistema e atende a diversas necessidades de gerenciamento de conteúdo.
Design visual: fornece uma interface de design visual de arrastar e soltar para realizar a configuração de campo personalizado WYSIWYG e simplificar o processo de operação.
2. Otimização SEO do endereço URL
Modificação dinâmica de endereço: O sistema fornece uma função de configuração global para facilitar aos usuários a personalização dos prefixos de endereço URL de colunas e artigos para melhorar os efeitos de otimização de SEO.
Otimização multi-site: Os endereços URL dos subsites não estão mais no formato www.example.com/site-abc, mas no formato mais amigável www.example.com/abc, simplificando os caminhos de acesso do usuário.
3. Limpe anexos indesejados
Gerenciamento de anexos: fornece função de gerenciamento de anexos para facilitar aos usuários a visualização de todas as imagens e anexos não utilizados, excluí-los e limpar o espaço do sistema.
Limpeza automática: após excluir um artigo, o sistema limpará automaticamente as imagens e anexos não utilizados do artigo para evitar a geração de uma grande quantidade de dados inúteis.
4. Anexos, modelos e arquivos de índice são implantados de forma independente
Diretório independente: implanta arquivos gerados quando o sistema está em execução (como imagens e anexos carregados, modelos de front-end, arquivos de índice) em um diretório independente para facilitar o backup, a atualização e o gerenciamento do sistema.
5. O arquivo de modelo está no mesmo diretório que CSS e JS
Gerenciamento conveniente: coloque arquivos de modelo, CSS e JS no mesmo diretório para simplificar o processo de produção e implantação de modelos e melhorar a eficiência do desenvolvimento.
6. Consulta parametrizada MyBatis
Consulta flexível: ao passar parâmetros de consulta no front-end, a função de consulta de qualquer campo e tabela relacionada pode ser realizada. Não há necessidade de escrever código em segundo plano, o que reduz bastante a carga de trabalho do desenvolvimento de back-end.
Melhore a eficiência: simplifique as operações de consulta e melhore a eficiência do desenvolvimento.
7. Divida tabelas primárias e secundárias
Melhore o desempenho: divida tabelas complexas com grande volume de consultas em tabelas primárias e secundárias, coloque campos de consulta comumente usados na tabela primária e coloque campos menos usados em tabelas secundárias para melhorar o desempenho do sistema em grandes volumes de dados.
Requisitos Ambientais para UJCMS
JDK8
MySQL 5.7 (compatível com 5.6, 8.0)
Tomcat 8.5, 9.0 (Servlet 3.1+)
Maven 3.5 ou superior
Navegadores compatíveis com back-end do sistema: Chrome, Firefox, Edge
Os navegadores compatíveis da primeira página dependem do modelo. O usuário tem controle total sobre o modelo e pode, teoricamente, oferecer suporte a qualquer navegador. O modelo de demonstração suporta IE10+ (exceto função de biblioteca), Chrome, Firefox e Edge.
Instalação e inicialização do UJCMS
1. Importe dados para banco de dados
Criar banco de dados: Ao usar MySQL, selecione o conjunto de caracteres utf8mb4 (suporta mais caracteres especiais, como emoji de caracteres emoticons, recomendado).
Executar script do banco de dados: O script do banco de dados está localizado no diretório do banco de dados.
2. Inicie o programa
Importe o projeto Maven: Importe o projeto Maven no Eclipse e aguarde o download do pacote jar de terceiros (como Spring) do servidor Maven.
Modifique a conexão do banco de dados: Abra o arquivo /src/main/resources/application.propertis e modifique os valores de spring.datasource.url, spring.datasource.username e spring.datasource.password de acordo com a situação real.
Inicie o programa: No Eclipse, clique com o botão direito no nome do projeto, selecione Executar como - Aplicativo Java, selecione Aplicativo - com.ujcms e clique em OK.
IntelliJ IDEA: As etapas da operação são semelhantes às do Eclipse. Encontre a classe com.ujcms.Application no projeto e clique com o botão direito nela, selecione Executar 'Aplicativo'.
3. Endereço de acesso
Recepção: http://localhost:8080/
Back-end: http://localhost:8080/cp/ (nome de usuário: admin, senha: senha)
Nota: O front-end do backend é desenvolvido com base no Vue 3. Se você deseja modificar a interface do backend, baixe o projeto ujcms-cp separadamente.
Resumir
UJCMS é um sistema de gerenciamento de conteúdo de código aberto poderoso, flexível e fácil de usar, com excelente desempenho. Ele adota pilhas de tecnologia convencionais e otimiza alguns problemas comuns, com o objetivo de fornecer aos desenvolvedores uma experiência de desenvolvimento e manutenção mais conveniente e eficiente. Se você precisa de uma plataforma CMS confiável e facilmente escalonável, o UJCMS merece sua atenção.