CMS系统
CMS(Content Management System,内容管理系统)是一种用于创建、编辑、管理和发布网站内容的软件系统。它允许用户通过一个简单易用的界面,对网站的内容进行增加、修改、删除等操作,而无需具备专业的网页制作技能。CMS系统通常适用于企业网站、电子商务网站、新闻网站、博客、论坛等各种类型的网站建设和内容维护。常见的CMS系统有WordPress、Joomla、Drupal等。

国内开源的CMS
在国内,有很多优秀的开源 CMS 系统,其中一些基于 Java 开发。以下是一些常见的 Java 开源 CMS 系统:
1. Jeecms(http://www.jeecms.com/):Jeecms 是一款基于 Java 开发的开源 CMS 系统,具有强大的内容管理功能,支持模板自定义,适用于企业、政府、学校等各类网站建设。
2. JPress
(https://www.jpress.io/):JPress 是一款基于 Java 开发的轻量级 CMS 系统,具有高性能、高可用、高扩展性等特点,适用于个人博客、企业官网、新闻资讯等各类网站建设。
3. JFinalCMS(http://www.jfinalcms.com/):JFinalCMS 是基于 JFinal 框架开发的一款 CMS 系统,具有易用性、高性能、高扩展性等特点,支持多站点、多模板、多终端等功能。
4. Halo(https://halo.run/):Halo 是一款轻量级的 Java 开源博客系统,采用 Spring Boot 框架开发,支持 Markdown 编辑器、主题自定义、插件扩展等功能,适用于个人博客和小型网站。
5. Solo(https://solo.b3log.org/):Solo 是一款基于 Java 开发的开源博客系统,支持多种数据库、多种主题、多种插件,适用于个人博客和技术分享网站。
6. Zrlog(https://www.zrlog.com/):Zrlog 是一款基于 Java 开发的博客系统,具有简洁的界面、丰富的插件、多种主题等特点,适用于个人博客和小型网站。
这些系统各有特点,可以根据自己的需求选择合适的 CMS 系统进行二次开发和定制。
UJCMS
Java开源内容管理系统(java cms)。使用SpringBoot、MyBatis、Shiro、Lucene、FreeMarker、TypeScript、Vue3、ElementPlus等技术开发。
UJCMS是在Jspxcms多年的开发经验上,重新设计开发的Java CMS系统。针对原系统中的一些痛点问题,进行解决、优化和改进,并使用GPL-2开源协议发布,可免费商用。
技术上尽量选择主流、先进、简单的架构,方便用户进行二次开发。持久化层用MyBatis替换了Hibernate;视图层用前后端分离的Vue3替换了JSP;数据库也进行了重新设计。设计上强调“简单”、“灵活”,避免繁杂的设计和实现,降低系统维护成本和二次开发难度。功能使用上也要求“简单”,避免复杂的使用逻辑。

技术及功能亮点
自定义字段可查询
所有的自定义字段都可查询增强了系统的灵活性。
自定义字段可视化设计
自定义字段使用拖拽式的可视化设计,所见即所得。
URL地址SEO优化
栏目和文章的动态地址可以通过系统的全局设置功能进行修改。默认的栏目和文章URL地址前缀为/channel和/article,可以根据自己的需要修改,如改为/categories和/archives。多站点的情况下,子站点URL地址也由原来的www.example.com/site-abc的形式改为更友好的www.example.com/abc的形式。

清理垃圾附件
系统使用时,可能会多传、误传图片等附件;在删除文章后,文章中的图片还保留在系统中,产生大量的未使用的垃圾图片和附件。系统中的附件管理可以查看所有未使用的图片和附件,并可对其进行删除。

附件、模板、索引文件独立部署
系统运行时产生的文件可以和程序分开,部署到独立的目录,方便系统备份、升级和管理。比如上传的图片和附件、前台的模板、索引文件,都可以部署到程序以外的目录。

模板文件和CSS、JS在同一目录
模板文件和CSS、JS分开的目录结构,会给模板制作和部署带来很大的不便性。而将模板文件和CSS、JS放在一起的设计,会方便很多。

MyBatis参数化查询
后台数据通常会需要通过不同字段进行搜索,对每个表都写大量的查询,无疑是一项繁重的工作。MyBatis参数化查询功能通过前台传递查询参数,即可实现任意字段及关联表的查询功能(如:Q_title=abc,Q_user-username=test),无需后台编写代码,大幅减少后端的开发工作量。

主副表拆分
对查询量大的复杂表进行主副表拆分,把常用的查询字段放到主表,不常用的字段放到副表,提升大数据量下的性能表现。
综上所述,强烈建议使用之前启动程序中介绍的方式启动程序。

前台模板
网站前台模板位于/src/main/webapp/templates目录,使用Freemarker技术。通过修改模板文件,可以完全控制网站页面显示的内容。

后端技术
Spring Boot:提供了对Spring开箱即用的功能。简化了Spring配置,提供自动配置auto-configuration功能。
Spring MVC:MVC框架,使用方便,Bug较少。
Spring Security:安全组件。
Mybatis:持久化框架。
FreeMarker:网站模板组件。
Lucene:全文检索组件。
前端技术
TypeScript: JavaScript的一个超集。
Vue3:JavaScript框架。
ElementPlus:Vue 3 UI 框架。
Vite: 下一代前端开发与构建工具。
Tailwind CSS: 功能类优先的 CSS 框架。
VueRouter: Vue 路由组件。
VueI18n: Vue 国际化组件。
Tinymce: 富文本编辑器。
项目地址
https://gitee.com/ujcms/ujcms猜您喜欢:
添加微信进相关交流群,
备注“微服务”进群交流
备注“低开”进低开群交流
备注“AI”进AI大数据,数据治理群交流
备注“商务”进行商务交流

关注公众号 soft张三丰 
