基于jeesite的cms系统(二):整体设计
一、菜单设计
在系统管理-菜单管理中可以设置内容管理菜单(自动生成)
注意:归属模块应属于核心模块core。如果新加的的菜单设置为内容管理模块cms,系统下次重启时会重置本次设置,具体原因不详。

二、数据库设计:
js_cms_articles;js_cms_comments;js_cms_tags;js_cms_categories再加上两个中间表js_cms_articles_categories;js_cms_articles_tags
DROP TABLE IF EXISTS `js_cms_articles`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
SET character_set_client = utf8mb4 ;
CREATE TABLE `js_cms_articles` (
`id` bigint(100) NOT NULL,
`create_at` timestamp NULL DEFAULT NULL,
`update_at` timestamp NULL DEFAULT NULL,
`delete_at` timestamp NULL DEFAULT NULL,
`author_id` bigint(100) DEFAULT NULL,
`title` varchar(100) COLLATE utf8_bin DEFAULT NULL,
`tags` varchar(255) COLLATE utf8_bin DEFAULT NULL,
`content` text CHARACTER SET utf8mb4 COLLATE utf8mb4_bin,
`path` varchar(30) COLLATE utf8_bin DEFAULT NULL,
`view_count` int(11) DEFAULT NULL,
`comment_count` int(11) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin;
/*!40101 SET character_set_client = @saved_cs_client */; --
-- Table structure for table `js_cms_articles_categories`
-- DROP TABLE IF EXISTS `js_cms_articles_categories`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
SET character_set_client = utf8mb4 ;
CREATE TABLE `js_cms_articles_categories` (
`id` int(10) NOT NULL AUTO_INCREMENT,
`article_id` bigint(20) DEFAULT NULL,
`category_code` int(11) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=10000011 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin;
/*!40101 SET character_set_client = @saved_cs_client */; --
-- Table structure for table `js_cms_articles_tags`
-- DROP TABLE IF EXISTS `js_cms_articles_tags`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
SET character_set_client = utf8mb4 ;
CREATE TABLE `js_cms_articles_tags` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`article_id` bigint(20) DEFAULT NULL,
`tag_code` int(11) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=20000011 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin;
/*!40101 SET character_set_client = @saved_cs_client */; --
-- Table structure for table `js_cms_articles_tags`
-- DROP TABLE IF EXISTS `js_cms_articles_tags`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
SET character_set_client = utf8mb4 ;
CREATE TABLE `js_cms_articles_tags` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`article_id` bigint(20) DEFAULT NULL,
`tag_code` int(11) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=20000011 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin;
/*!40101 SET character_set_client = @saved_cs_client */; --
-- Table structure for table `js_cms_categories`
-- DROP TABLE IF EXISTS `js_cms_categories`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
SET character_set_client = utf8mb4 ;
CREATE TABLE `js_cms_categories` (
`c_code` int(10) NOT NULL AUTO_INCREMENT,
`c_title` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL,
PRIMARY KEY (`c_code`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin;
/*!40101 SET character_set_client = @saved_cs_client */; --
-- Table structure for table `js_cms_comments`
-- DROP TABLE IF EXISTS `js_cms_comments`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
SET character_set_client = utf8mb4 ;
CREATE TABLE `js_cms_comments` (
`id` bigint(20) NOT NULL,
`create_at` timestamp NULL DEFAULT NULL,
`update_at` timestamp NULL DEFAULT NULL,
`delete_at` timestamp NULL DEFAULT NULL,
`article_id` bigint(20) DEFAULT NULL,
`author_id` bigint(20) DEFAULT NULL,
`content` text CHARACTER SET utf8mb4 COLLATE utf8mb4_bin,
`parent_comment_id` mediumtext COLLATE utf8_bin,
`building` int(1) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin;
/*!40101 SET character_set_client = @saved_cs_client */; --
-- Table structure for table `js_cms_tags`
-- DROP TABLE IF EXISTS `js_cms_tags`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
SET character_set_client = utf8mb4 ;
CREATE TABLE `js_cms_tags` (
`t_code` int(10) NOT NULL AUTO_INCREMENT,
`t_title` varchar(20) CHARACTER SET utf8 COLLATE utf8_bin DEFAULT NULL,
PRIMARY KEY (`t_code`)
) ENGINE=InnoDB AUTO_INCREMENT=2008 DEFAULT CHARSET=utf8 COLLATE=utf8_bin;
/*!40101 SET character_set_client = @saved_cs_client */;
DROP TABLE IF EXISTS `js_cms_articles`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
SET character_set_client = utf8mb4 ;
CREATE TABLE `js_cms_articles` (
`id` bigint(100) NOT NULL,
`create_at` timestamp NULL DEFAULT NULL,
`update_at` timestamp NULL DEFAULT NULL,
`delete_at` timestamp NULL DEFAULT NULL,
`author_id` bigint(100) DEFAULT NULL,
`title` varchar(100) COLLATE utf8_bin DEFAULT NULL,
`tags` varchar(255) COLLATE utf8_bin DEFAULT NULL,
`content` text CHARACTER SET utf8mb4 COLLATE utf8mb4_bin,
`path` varchar(30) COLLATE utf8_bin DEFAULT NULL,
`view_count` int(11) DEFAULT NULL,
`comment_count` int(11) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin;
/*!40101 SET character_set_client = @saved_cs_client */; --
-- Table structure for table `js_cms_articles_categories`
-- DROP TABLE IF EXISTS `js_cms_articles_categories`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
SET character_set_client = utf8mb4 ;
CREATE TABLE `js_cms_articles_categories` (
`id` int(10) NOT NULL AUTO_INCREMENT,
`article_id` bigint(20) DEFAULT NULL,
`category_code` int(11) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=10000011 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin;
/*!40101 SET character_set_client = @saved_cs_client */; --
-- Table structure for table `js_cms_articles_tags`
-- DROP TABLE IF EXISTS `js_cms_articles_tags`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
SET character_set_client = utf8mb4 ;
CREATE TABLE `js_cms_articles_tags` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`article_id` bigint(20) DEFAULT NULL,
`tag_code` int(11) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=20000011 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin;
/*!40101 SET character_set_client = @saved_cs_client */; --
-- Table structure for table `js_cms_articles_tags`
-- DROP TABLE IF EXISTS `js_cms_articles_tags`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
SET character_set_client = utf8mb4 ;
CREATE TABLE `js_cms_articles_tags` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`article_id` bigint(20) DEFAULT NULL,
`tag_code` int(11) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=20000011 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin;
/*!40101 SET character_set_client = @saved_cs_client */; --
-- Table structure for table `js_cms_categories`
-- DROP TABLE IF EXISTS `js_cms_categories`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
SET character_set_client = utf8mb4 ;
CREATE TABLE `js_cms_categories` (
`c_code` int(10) NOT NULL AUTO_INCREMENT,
`c_title` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL,
PRIMARY KEY (`c_code`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin;
/*!40101 SET character_set_client = @saved_cs_client */; --
-- Table structure for table `js_cms_comments`
-- DROP TABLE IF EXISTS `js_cms_comments`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
SET character_set_client = utf8mb4 ;
CREATE TABLE `js_cms_comments` (
`id` bigint(20) NOT NULL,
`create_at` timestamp NULL DEFAULT NULL,
`update_at` timestamp NULL DEFAULT NULL,
`delete_at` timestamp NULL DEFAULT NULL,
`article_id` bigint(20) DEFAULT NULL,
`author_id` bigint(20) DEFAULT NULL,
`content` text CHARACTER SET utf8mb4 COLLATE utf8mb4_bin,
`parent_comment_id` mediumtext COLLATE utf8_bin,
`building` int(1) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin;
/*!40101 SET character_set_client = @saved_cs_client */; --
-- Table structure for table `js_cms_tags`
-- DROP TABLE IF EXISTS `js_cms_tags`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
SET character_set_client = utf8mb4 ;
CREATE TABLE `js_cms_tags` (
`t_code` int(10) NOT NULL AUTO_INCREMENT,
`t_title` varchar(20) CHARACTER SET utf8 COLLATE utf8_bin DEFAULT NULL,
PRIMARY KEY (`t_code`)
) ENGINE=InnoDB AUTO_INCREMENT=2008 DEFAULT CHARSET=utf8 COLLATE=utf8_bin;
/*!40101 SET character_set_client = @saved_cs_client */;
三、代码设计:
common是一些公共的方法和组件,例如全局异常,搜索组件
modules是我们的cms模块和它给的Demo(test模块)
static.common下放的前端css和js等静态资源
view.modules下是demo的html文件;view.templates下是cms的html文件
views.themes.default.modules.sys.sysIndex.topMenuCorp.html:拷贝自jeesite-core(系统核心jar包),对原来内容进行覆盖修改(路径不能变)

jeesite:beetl是后端模版引擎相关配置jar包
jeesite-common是系统公共工具类集成jar包
jeesite-framework是系统各模块jar包
jeesite-core是系统核心管理框架jar包
jeesite-swagger是系统API管理工具配置jar包

基于jeesite的cms系统(二):整体设计的更多相关文章
- 基于jeesite的cms系统(一):开发环境搭建
基于jeesite的cms系统系列,是对基于jeesite进行二次开发的博客模块开发过程的总结.涉及入门安装,二次开发,部署等 一.概况: JeeSite 是一个 Java 企业级快速开发平台,基于经 ...
- 基于jeesite的cms系统(三):使用RESTful API在前端渲染数据
使用RESTful API可以更好的开发前后分离的应用,后面一节会介绍使用模版引擎Beetl开发后端渲染的应用. 一.配置Swagger(Api 接口文档) 1.使用系统自带 拷贝jeesite-mo ...
- 基于jeesite的cms系统(五):wangEditor富文本编辑器
一.关于wangEditor: wangEditor —— 轻量级 web 富文本编辑器,配置方便,使用简单.支持 IE10+ 浏览器. 官网:www.wangEditor.com 文档:www.ka ...
- 基于jeesite的cms系统(四):使用Beetl模版引擎在后端渲染数据
一.Beetl简介 1. 什么是Beetl Beetl目前版本是2.9.3,相对于其他java模板引擎,具有功能齐全,语法直观,性能超高,以及编写的模板容易维护等特点.使得开发和维护模板有很好的体验. ...
- 基于jeesite的cms系统(七):GlobalException全局异常和部署
关于全局异常: 在业务代码中专注处理业务,而不是返回各种CodeMsg(比如这里只需要知道登录时成功还是失败,其余情况直接抛出异常),可以直接抛出异常,添加一个全局异常类,根据CodeMsg来生成异常 ...
- 基于jeesite的cms系统(六):Lucene全文搜索引擎
1.lucene初始化 // @Value("${lucene.index.path}") private String indexPath = "/Users/vito ...
- 制药企业BI系统方案整体设计分享
制药企业全面预算系统蓝图 全面掌控企业的各种业务活动,及时准确的展现它们的状况与趋势,评估其达成的效果.存在的问题与风险.支持数据的导入,多级上报等多种特色功能,同时通过统一的报表平台实现精细话的权限 ...
- 基于Java的开源CMS系统选择(转)
CMS概述 对于网站CMS系统而言,基于PHP的是主流,如Drupal/Joomla在各个主流虚拟机提供商上都是标准配置,也被广泛使用. 但如果你拥有Java团队,或者项目目标是想建立一个企业网使用的 ...
- 一个基于NodeJS开发的APP管理CMS系统
花了大概3周独立开发了一个基于NodeJS的CMS系统,用于公司APP的内容管理( **公司APP?广告放在最后 ^_^ ** ,管理员请理解~~~ )晚上看了部电影还不想睡,闲着也是闲着就作下小小总 ...
随机推荐
- python使用rabbitMQ介绍五(话题模式)
一.模式介绍 话题模式(Topic)基本思想和路由模式是一样的,只不过路由键支持模糊匹配,符号“#”匹配一个或多个词,符号“*”匹配不多不少一个词 话题模式相当于消息的模糊匹配,或者按照正则匹配.其中 ...
- Chrome 清除当前网站下的缓存
打开开发者工具(F12),选择 Network--Disable cache 即可.需要清除某网站缓存时 F12 打开开发者工具就会自动清除这个网站的缓存,而不必清除所有网站的缓存了. 如评论中大佬所 ...
- Linux、CentOS7下报错-bash: TMOUT: readonly variable怎么办?
一.Linux操作系统版本 二.背景:在项目中当我们配置好JDK环境变量.Tomcat环境变量,通过source /etc/profile使环境变量生效时,发现会报错,如图 三.解决 个人尚不知出现原 ...
- 最新webstorm
https://blog.csdn.net/hdp134793/article/details/81530472 最新webstorm,立即装,还有小盒子要弄个备份的,还有公交卡 2019-3-17( ...
- WPF的架构分析
首先,在这里我要说明的是:这里的例子,都是通过控制台程序来创建WPF应用,而非使用现成的WPF模版.因为WPF模版封装了创建WPF应用所需要的各种基本元素,并不利于我们学习. 创建一个WPF需要引用的 ...
- ASP.NET Core 搭配 Nginx 的真实IP问题
一.前言 Nginx(Engine X)是一个高性能HTTP和反向代理服务,是由俄罗斯人伊戈尔·赛索耶夫为访问量第二的Rambler.ru站点(俄文:Рамблер)开发的,第一个公开版本0.1.0发 ...
- CodeSmith 二、多模板按目录树批量自动生成代码
通过调用指定目录下的所有模板,逐一按照数据表生成独立的代码文件.支持多模板调用.支持所有数据表生成或批量指定多个生成.支持自动的文件目录结构.支持代码文件格式化命名等. 背景:最近一个新项目一高兴选了 ...
- openstack 5大组件之间的关系和基本架构思维导图
云计算是一种按使用量付费的模式,这种模式提供可用的/便捷的/按需的网络访问,进入可配置的计算资源共享池(资源包括网络/服务器/存储/应用软件和服务),这些资源能够被快速提供,只需投入很少的管理工作或与 ...
- 【递归】hex2dec
自己捉摸了好久,由于不熟悉. #include <stdio.h> int dec2hex(char *p); int base; int num; int main(void) { ch ...
- java中定时器的简单使用
1.首先肯定是容器一启动就要启动定时器,所以我们可以选择把定时器写在一个监听器里,容器一启动所以监听器也就跟着启动,然后定时器就可以工作了. 第一步,把自己写的监听器加到web.xml中: 第二步,写 ...