一、菜单设计

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

注意:归属模块应属于核心模块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. d3js scales深入理解

    转自:https://www.cnblogs.com/kidsitcn/p/7182274.html 比例尺函数是这样的javascript函数: 接收通常是数字,日期,类别等data输入并且: 返回 ...

  2. java笔记----property文件读写

    package com.test.property; import java.io.BufferedInputStream; import java.io.File; import java.io.F ...

  3. 记一次 c 语言 的 多线程查找 简单实现

    //仅供参考学习 1 #define _CRT_SECURE_NO_WARNINGS //屏蔽 vs 的a #include <stdio.h> #include <stdlib.h ...

  4. 一个ELK日志检索实施案例

    figure:first-child { margin-top: -20px; } #write ol, #write ul { position: relative; } img { max-wid ...

  5. 网络流 P2770 航空路线问题

    #include <cstdio> #include <cstdlib> #include <map> #include <queue> #includ ...

  6. mybatis insertUseGeneratedKeys 返回主键为null

    package tk.mybatis.mapper.common.special; import org.apache.ibatis.annotations.InsertProvider; impor ...

  7. Python--day07(数据类型转换、字符编码)

    昨天内容回顾 1.  深浅拷贝: 值拷贝:直接赋值,原列表中任何值发生改变,新列表的值都会发生改变. 浅拷贝:通过copy()方法,原列表中存放值的地址没有发生改变,但内部的值发生改变,新列表也随之改 ...

  8. codeblocks-17.12mingw-nosetup(mingw编译,绿色免安装版)的下载、安装及设置一

    一.先进入网址:http://www.codeblocks.org/downloads/,选择Download the binary release. 二.转换网页后,选择codeblocks-17. ...

  9. JSON获取地址

    JSON获取地址一: https://github.com/stleary/JSON-java JSON获取地址二: http://genson.io/ JSON获取地址一: https://code ...

  10. 几个不常用的C++关键字

    volatile 遇到这个关键字声明的变量,编译器对访问该变量的代码就不再进行优化,从而可以提供对特殊地址的稳定访问. 所以说volatile可以保证对特殊地址的稳定访问. mutable 如果需要在 ...