UJCMS 正在参加 2021 年度 OSC 中国开源项目评选,请投票支持!
UJCMS 在 2021 年度 OSC 中国开源项目评选 中已获得 {{ projectVoteCount }} 票,请投票支持!
2021 年度 OSC 中国开源项目评选 正在火热进行中,快来投票支持你喜欢的开源项目!
2021 年度 OSC 中国开源项目评选 >>> 中场回顾
UJCMS 获得 2021 年度 OSC 中国开源项目评选「最佳人气项目」 !
授权协议 AGPL
开发语言 Java
操作系统 跨平台
软件类型 开源软件
所属分类 建站系统建站系统CMS
开源组织
地区 国产
投 递 者 ujcms
适用人群 未知
收录时间 2022-01-10

软件简介

UJCMS是在Jspxcms多年的开发经验上,重新设计开发的Java开源内容管理系统(java cms)。使用SpringBoot、MyBatis、Shiro、Lucene、FreeMarker、TypeScript、Vue3、ElementPlus等技术。针对原系统中的一些痛点问题,进行解决、优化和改进,并使用AGPL-3开源协议发布。

技术上选择主流、先进、简单的架构,方便用户进行二次开发。持久化层用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),无需后台编写代码,大幅减少后端的开发工作量。

主副表拆分:对查询量大的复杂表进行主副表拆分,把常用的查询字段放到主表,不常用的字段放到副表,提升大数据量下的性能表现。

后端技术

  • SpringBoot:提供了对Spring开箱即用的功能。简化了Spring配置,提供自动配置auto-configuration功能。
  • SpringMVC:MVC框架,使用方便,Bug较少。
  • Mybatis:持久化框架。
  • FreeMarker:网站模板组件。
  • Shiro:安全组件。配置简便。
  • Lucene:全文检索组件。

前端技术

  • TypeScript: JavaScript的一个超集。
  • Vue 3:JavaScript框架。
  • ElementPlus:Vue 3 UI 框架。
  • Tailwind CSS: 功能类优先的 CSS 框架。
  • Tinymce: 富文本编辑器。

前台模板

后台界面

 

展开阅读全文

代码

的 Gitee 指数为
超过 的项目

评论

点击引领话题📣
发表了资讯
07/20 09:45

UJCMS 4.1.1 发布,国内开源 Java CMS

此次更新增加了大量新功能,包括工作流、流程可视化设计、文章审核、文章状态、登录日志、密码复杂度、密码过期等重要功能。 破坏性更新包括: 注意:自定义字段中如涉及下拉选择、单选框、复选框等字典数据,会因自定义字段保存数据的方式改为同时保存字典KEY和字典NAME(之前只保存字典NAME),并以字典KEY作为判断标准,从而使得后台管理时相关自定义字段数据丢失。 注意:本次升级重做了liquibase的changelog。无法通过程序...

0
10
发表了资讯
06/14 08:49

UJCMS 3.0.0 发布,全面使用国密加密算法

全面使用国密加密算法,包括SM2、SM3、SM4、HmacSM3、PBKDF2WithHmacSM3。增加多站点的演示,以及完善多站点的管理和多站点的权限控制,完善用户、角色的管理和授权功能。增加了Markdown编辑器、后台多页签、对象存储、文库及DOC导入功能。 破坏性更新包括: 使用escape标签处理XSS和空值。所有freemarker页面使用[#escape x as (x)!?html]开头和[/#escape]结尾;使用[#noescape]...[/#noescape]功能替换原有的?no_esc 密码需用...

17
17
发表了资讯
03/23 10:32

UJCMS 2.0.2 发布,国内开源 java cms

应用户要求,将许可协议从 `AGPL-3` 改为 `GPL-2`,并开放组织管理功能。同时修复已发现的BUG,升级组件。 升级日志(2.0.1, 2.0.2) 许可协议由 AGPL-3 改为 GPL-2 开放组织管理功能 增加全局设置中栏目URL和文章URL自定义地址的合法校验 增加站点设置中域名的合法校验 修复:前台搜索报错(ChannelInnerBase不能转换为Anchor) 修复:文章管理中没有编辑器的页面无法提交 升级owasp-java-html-sanitizer组件版本至20211018.2 ...

2
17
发表了资讯
03/08 09:43

UJCMS 2.0 发布,使用 Vite2、Vue3、MyBatis 开发

本次主要增加了用户比较关心的页面静态化功能、下载防盗链等功能。并且使用liquibase管理数据库版本,实现数据库表结构自动创建和自动升级功能,以及首次运行自动插入数据库初始化数据,免去了用户手动执行sql脚本的工作。 随着ElementPlus2正式版发布,意味着Vue3的生态已经完善。UJCMS对前端技术进行了完整的更新,打包工具从webpack迁移到vite2,ElementPlus也升级到了2.0正式版,TailwindCSS升级到3.0。 升级日志(2.0.0) ...

4
30
没有更多内容
加载失败,请刷新页面
点击加载更多
加载中
下一页
发表了博客
{{o.pubDate | formatDate}}

{{formatAllHtml(o.title)}}

{{parseInt(o.replyCount) | bigNumberTransform}}
{{parseInt(o.viewCount) | bigNumberTransform}}
没有更多内容
暂无内容
发表了问答
{{o.pubDate | formatDate}}

{{formatAllHtml(o.title)}}

{{parseInt(o.replyCount) | bigNumberTransform}}
{{parseInt(o.viewCount) | bigNumberTransform}}
没有更多内容
暂无内容
暂无内容
0 评论
42 收藏
分享
OSCHINA
登录后可查看更多优质内容
返回顶部
顶部