一、菜单设计

在系统管理-菜单管理中可以设置内容管理菜单(自动生成)

注意:归属模块应属于核心模块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系统(二):整体设计的更多相关文章

  1. 基于jeesite的cms系统(一):开发环境搭建

    基于jeesite的cms系统系列,是对基于jeesite进行二次开发的博客模块开发过程的总结.涉及入门安装,二次开发,部署等 一.概况: JeeSite 是一个 Java 企业级快速开发平台,基于经 ...

  2. 基于jeesite的cms系统(三):使用RESTful API在前端渲染数据

    使用RESTful API可以更好的开发前后分离的应用,后面一节会介绍使用模版引擎Beetl开发后端渲染的应用. 一.配置Swagger(Api 接口文档) 1.使用系统自带 拷贝jeesite-mo ...

  3. 基于jeesite的cms系统(五):wangEditor富文本编辑器

    一.关于wangEditor: wangEditor —— 轻量级 web 富文本编辑器,配置方便,使用简单.支持 IE10+ 浏览器. 官网:www.wangEditor.com 文档:www.ka ...

  4. 基于jeesite的cms系统(四):使用Beetl模版引擎在后端渲染数据

    一.Beetl简介 1. 什么是Beetl Beetl目前版本是2.9.3,相对于其他java模板引擎,具有功能齐全,语法直观,性能超高,以及编写的模板容易维护等特点.使得开发和维护模板有很好的体验. ...

  5. 基于jeesite的cms系统(七):GlobalException全局异常和部署

    关于全局异常: 在业务代码中专注处理业务,而不是返回各种CodeMsg(比如这里只需要知道登录时成功还是失败,其余情况直接抛出异常),可以直接抛出异常,添加一个全局异常类,根据CodeMsg来生成异常 ...

  6. 基于jeesite的cms系统(六):Lucene全文搜索引擎

    1.lucene初始化 // @Value("${lucene.index.path}") private String indexPath = "/Users/vito ...

  7. 制药企业BI系统方案整体设计分享

    制药企业全面预算系统蓝图 全面掌控企业的各种业务活动,及时准确的展现它们的状况与趋势,评估其达成的效果.存在的问题与风险.支持数据的导入,多级上报等多种特色功能,同时通过统一的报表平台实现精细话的权限 ...

  8. 基于Java的开源CMS系统选择(转)

    CMS概述 对于网站CMS系统而言,基于PHP的是主流,如Drupal/Joomla在各个主流虚拟机提供商上都是标准配置,也被广泛使用. 但如果你拥有Java团队,或者项目目标是想建立一个企业网使用的 ...

  9. 一个基于NodeJS开发的APP管理CMS系统

    花了大概3周独立开发了一个基于NodeJS的CMS系统,用于公司APP的内容管理( **公司APP?广告放在最后 ^_^ ** ,管理员请理解~~~ )晚上看了部电影还不想睡,闲着也是闲着就作下小小总 ...

随机推荐

  1. 【转】Python之道

    作者:Vamei 出处:http://www.cnblogs.com/vamei Python有一个彩蛋,用下面语句调出: import this 该彩蛋的文档记录于PEP 20. 语句执行之后,终端 ...

  2. 3星|《陈志武金融投资课》:金融改善社会,A股投资策略

    从历史上的金融说起,介绍金融的基本知识.理念.大事.重要人物.也有一些A股投资策略和A股政策点评. 引用了不少学术研究成果做证据.讲历史的部分,功力比专业历史学者稍逊,毕竟这不是作者的专业. 我读后认 ...

  3. ASP.NET MVC 自定义模型绑定1 - 自动把以英文逗号分隔的 ID 字符串绑定成 List<int>

    直接贴代码了: CommaSeparatedModelBinder.cs using System; using System.Collections; using System.Collection ...

  4. Linux新手随手笔记1.3

    shell脚本的编写(划重点) #!/bin/bash                    脚本的声明信息 #sjsjdhsjdhh                  脚本的注释 ls -l    ...

  5. Reason的介绍和搭建Reason开发环境

    Reason介绍 Reason是在Ocaml语言的基础上修改而来,专门提供给前端开发者使用. Reason是函数式编程语言,使用Bucklescript编译器编译成javascript语言. 在我看来 ...

  6. python基础 常见用法

    1.python计时器timeit模块 1)timeit 模块定义了接收两个参数的Timer类,两个参数都是字符串. 参数1:要计时的语句或者函数 参数2:为参数1构建环境的导入语句 2)Timer对 ...

  7. git客户端的安装及使用

    1.git提交全部文件的基本步骤: 1)git status:查看修改内容 2)git add XX :添加XX文件到暂存区,如果修改内容比较多,可以使用git add -A .来一次性添加所有文件( ...

  8. linux下下载安装jdk

    jdk的安装 一:到oracl官网下载你所需要的jdk版本; https://www.oracle.com/technetwork/java/javase/downloads/index.html 拉 ...

  9. (light oj 1102) Problem Makes Problem (组合数 + 乘法逆元)

    题目链接:http://lightoj.com/volume_showproblem.php?problem=1102 As I am fond of making easier problems, ...

  10. 开发日记:JsonCSharpHelp

    using Newtonsoft.Json; using Newtonsoft.Json.Linq; using Newtonsoft.Json.Converters; public static c ...