JeeSite 是什么、概述

2023-10-27

见JeeSite官网:http://jeesite4.mydoc.io/

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到教程。

总体概述

快速访问

底层架构优化

  1. Maven多项目依赖,模块及插件分项目,尽量松耦合,方便模块升级、增减模块。
  2. 模块化数据库自动升级程序,当模块升级代码需要更新时,自动对应版本执行SQL更新。
  3. 授权模块,支持CAS单点登录,简单properties配置即可,不用再写很多的xml。
  4. 支持多数据源,简单properties配置即可实现,为了安全性吧,暂不提供界面维护数据源,不存数据库。
  5. 数据表主键优化,如分类科目表,采用有意义的主键方式,让客户去自定义,减少后期运维维护成本。
  6. 实体@Table注解配置

    a. 自动生成增删改通用SQL,不需要在mapper.xml里写重复又费时的SQL了,减少开发和后期维护成本。b. 这里所有定义@Column均放到类头,而不是分布到各个属性或方法上,这是如下原因:c. 一是,放到表头的好处是,可一览熟知该实体类对应的物理表结构是什么样,开发者思维从物理表结构到对象的映射转换,都是基于物理表结构的,@Column指定物理字段名,而不是指定类上的属性名,也是这个原因;d. 二是,生成的SQL和查询条件,列的排列顺序,可方便核查定义,优化查询;e. 三是,方便@JoinTable关联表和其它扩展信息的设置,如果分布到类的属性上就不太好管理列。

  7. 用户数据权限优化,不仅仅是角色,颗粒度细化到每个人员的身上,可自定义第三方数据权限,不仅仅是部门和公司,你可以扩展,如:地区,栏目分类,商品分类。

  8. 支持SAAS多租户模式,每个租户数据通过corp_code字段进行分离,数据互不干扰。
  9. 缓存EhCache统一管理,支持快速切换为Redis缓存,集群Session缓存共享。

安全方面优化

  1. 原有JeeSite1.2安全选项及安全考虑保留。
  2. 配置文件数据库密码及其它安全密钥自动加密。
  3. 所有请求参数获取,均通过XSS跨站脚本过滤方法。
  4. 乐观锁简单实现,必要情况下使用,提高数据安全性。
  5. 通过properties简单配置,限制是否允许JS跨域操作。
  6. 身份认证

    a. 登录失败多少次后显示验证码b. 登录失败多少次后锁定账号及锁定账号时间c. 登录账号密码可加密后再提交后台d. 同设备是否允许账号多地登录

  7. 密码策略

    a. 初始密码修改策略,提醒或强制用户修改初始密码。b. 账号密码修改策略,多长时间内未修改,则提醒或强制修改密码。c. 账号密码安全等级限制策略,很弱密码,弱密码,安全密码,很安全密码

  8. 安全审计(后期)

    a. 查询未修改初始密码的账号,使用简单密码的,定期未修改的,长期未登录的。b. 权限审计,按登录账号查询菜单和权限,按菜单和权限查询登录账号

用户界面优化

  1. 平面化界面设计,精细,更加美观、高端、大气、上档次。
  2. 支持手机或平板访问,响应式样式,根据屏幕分辨率自适应控件布局。
  3. 无刷新设计,除了进入功能页面和新页面,其它情况下全部采用Ajax交互,优化体验和性能。
  4. 支持一件换肤,只需在properties里修改下主题名称即可快速切换整个UI的风格,不仅仅是色调和样式,布局也可改变。支持自定义扩展项目独有的主题样式风格。
  5. 优化用户功能操作,大众思维模式,功能清晰,更加贴切和友好。

前端开发优化

  1. 采用当前比较流行的Beetl模板引擎,它的优点很多,大家可自行查阅看看,这里不多说了。
  2. 封装Beetl UI通用组件,简单实现基本表单控件、树选择,列表选择,文件上传,等等很多,总之是简化开发。
  3. 数据表格jqGrid组件封装,自动完成分页、排序、列宽、多表头、子表、编辑表、等。

功能及组件优化

  1. 工具类Utils封装优化,应有尽有,包分类层次分明,独立工具类项目。
  2. 强大的Excel导出导入工具封装,支持大数据量,注解定义,简单配置即可实现。
  3. Job作业调度,界面化在线管理,可新增,编辑、删除、暂停、恢复、运行一次等操作
  4. 在线查询在线人员,强踢在线账号。
  5. 代码生成工具操作简化及优化。

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

JeeSite 是什么、概述 的相关文章

  • Jsf与Spring的整合原理

    Jsf做为Web框架 Spring做为业务层框架 两者可以结合起来用 只要在faces config xml中做一个很简单的配置
  • Mybatis代码生成器——让Java开发更高效

    Mybatis是一款优秀的ORM框架 在Java开发中广泛应用 然而 手写Mybatis代码工作量大 效率低 而Mybatis代码生成器可以帮助开发人员自动生成基本的CRUD代码 极大地提高了开发效率 本文将介绍如何使用Mybatis代码生
  • easy-excel批量导出数据

    easy excel批量导出 前言 最近遇到个用户数据批量导出excel的需求 第一次看到这个需求大家第一时间想到的应该大多都是easy excel这个框架吧 哈哈 我第一时间想到的也是这个框架 但是对于少量的数据 比如有10个用户这样的数
  • Linux 启动脚本 完全注释 1 -- 整体流程

    Linux太伟大了 什么东西都可以由你来做主 Linux加载完内核后 所有的其他系统服务 进程 都是靠脚本来加载的 所以Linux是这么的透明 你可以清除的指导你的系统做了什么 下面我就对Linux的启动脚本做了注释 该脚本是属于LFS的
  • 一文拆解Faas的真实案例

    欢迎大家前往腾讯云 社区 获取更多腾讯海量技术实践干货哦 本文来自腾讯云技术沙龙 本次沙龙主题为Serverless架构开发与SCF部署实践 刘敏洁 具有多年云计算行业经验 曾任职于华为 UCloud等企业担任产品开发 产品经理 目前负责腾
  • maven环境变量配置,总不成功,你就这样试试

    我下载了maven 解压后的目录为 配置了用户变量为下图 然后配置系统的path变量如下图 配置完后我也重启了系统 但是还是显示为下图 这是怎么回事 我进入 bin 下执行命令就没问题 说明程序好好的 但是这个怎么就是不成功呢 分享到 举报
  • POI框架导出EXCEL的简单列子(跨行跨列)合并单元格

    public static void main String args throws IOException try HSSFWorkbook wb new HSSFWorkbook HSSFSheet sheet wb createShe
  • SpringMVC框架在Controller中对于Session的处理

    Controller中的代码 Controller SessionAttributes User Y 此处定义此Controller中将要创建和使用哪些session中的对象名 public class UserController Res
  • MyBatis快速入门(一) 搭建环境和单表映射

    MyBatis简介 一说起对象关系映射框架 大家第一时间想到的肯定是Hibernate Hibernate作为一个著名的框架 功能十分强大 我们只需要配置好实体类和数据表之间的关系 Hibernate就会自动帮我们完成生成并执行SQL语句
  • struts验证框架

    关于validation xml 在validator xml中使用了validation rules xml的验证规则注意一定要加其已经定义好的出错消息考到你的资源包里去 否则出错的时候 显示错误对话框里面却什么错误消息都没有 不允许发生
  • 理解Spring的AOP和Ioc/DI就这么简单

    一 什么叫Ioc DI Ioc Inversion of Control 控制反转 DI Dependency Injection 依赖注入 其实这两个概念本质上是没有区别的 那我们先来看看什么叫做Ioc 假设这么一个场景 在A类中调用B类
  • Android MVP 详解(上)

    作者 李旺成 时间 2016年4月3日 Android MVP 详解 下 已经发布 欢迎大家提建议 MVP 在 Android 上的使用其实已经有挺长一段时间了 长到似乎有点 过时 了 目前风头正劲的是MVVM 那为什么现在还要讲 MVP
  • 接口的加密解密

    接口加密 1 接口参数加密 基础加密 2 接口参数加密 接口时效性验证 一般达到这个级别已经非常安全了 3 接口参数加密 时效性验证 私钥 达到这个级别安全性固若金汤 4 接口参数加密 时效性验证 私钥 Https 我把这个级别称之为金钟罩
  • Robotframework 入门教程(二)

    变量 RF用 分别表示标量 列表 和字典 对应的就是python中的sre list和dict RF中Variables用来创建变量 修改我们的demo robot如下 对应于python的语法 var value list1 a b c
  • 让dapper支持Oracle

    之前的项目数据使用mssql和mysql ORM使用一个轻量级的dapper 感觉很方便 性能也比EF强 关键是语法灵活 上手容易 用这种框架开发了几个网站 感觉非常好 但新项目要使用oracle 就出问题了 dapper里的关键字 在or
  • 一些大厂的开源平台

    百度 http fex baidu com http efe baidu com 饿了么 https fe ele me 腾讯 http www alloyteam com 美团 https tech meituan com 滴滴 http
  • KVM中使用usb设备

    进来学习usb驱动 看到网上都在分析usb skeleton c的驱动框架 就想对其调试一下 看一下其函数调用流程 要想调试usb skeleton 首先需要kvm能够探测到usb设备 其次 在kvm中编译usb skeleton c 最后
  • Swagget技术·SpringBoot继承Swagger框架详解!

    文章目录 一 Swagger简介 二 SpringBoot集成Swagger 三 配置Swagger 1 Swagger实例Bean是Docket 所以通过配置Docket实例来配置Swaggger 2 可以通过apiInfo 属性配置文档
  • html理解MVC模型与MVVM模型底层实现

    一 MVC模型的底层实现 1 1 相关代码 div div
  • 10分钟带你了解轻量级插件框架x3py

    写在前面 由于本人目前主要从事的是Windows客户端开发方面的工作 所以本文介绍x3py的侧重点也是从客户端程序开发者方面叙述的 本文主要参考整理自x3py的官方Wiki 修正了一些官方示例中的错误 有兴趣的同学可以直接阅读原文 设计目的

随机推荐

  • GIT合并分支的三种方法

    一 使用merge命令合并分支 1 目标 将dev分支合并到master分支 1 1 首先切换到master分支上 git checkout master 1 2 如果是多人开发的话 需要把远程master上的代码pull下来 git pu
  • 【华为OD机试 】 单词搜索(C++ Java JavaScript Python)

    题目描述 找到它是一个小游戏 你需要在一个矩阵中找到给定的单词 假设给定单词 HELLOWORD 在矩阵中只要能找到 H gt E gt L gt L gt O gt W gt O gt R gt L gt D连成的单词 就算通过 注意区分
  • flask 写数据mysql_Flask从入门到精通之MySQL数据库操作

    前面的章节中我们已经学习了如何建立模型和关系 接下来我们学习如何使用模型的最好方法是在Python shell 中实际操作 并将介绍最常用的数据库操作 一 创建表 首先 我们要让Flask SQLAlchemy 根据模型类创建数据库 方法是
  • 27.EI文章复现《高比例清洁能源接入下计及需求响应的配电网重构》

    下载地址 高比例清洁能源接入下计及需求响应的配电网重构 1主要内容 该程序复现 高比例清洁能源接入下计及需求响应的配电网重构 以考虑网损成本 弃风弃光成本和开关操作惩罚成本的综合成本最小为目标 针对配电网重构模型的非凸性 引入中间变量并对其
  • Templates and Classes___CH_19

    19 1 Template classes Templates and container classes Template classes in the standard library Now that we ve covered te
  • 分库分表

    名词解释 库 database 表 table 分库分表 sharding 为什么要分库分表 移动互联网时代 海量的用户每天产生海量的数量 比如 用户表 订单表 交易流水表 以支付宝用户为例 8亿 微信用户更是10亿 订单表更夸张 比如美团
  • Python 20.opencv 直方图均衡化,CLAHE(对比度改变)

    import cv2 import numpy as np img cv2 imread pic1 png 0 进行直方图均衡化 equ cv2 equalizeHist img CLAHE有限对比适应性直方图均衡化 作用 限制对比度下降
  • 第一个项目单个交换机接入网络

    按图片上的要求来将一个交换机接入网络 配置明细路由 vlanif当网关
  • MATLAB中LSTM时序分类的用法与实战

    MATLAB中LSTM时序分类的用法与实战 说明 本教程适用于R2018b版本的matlab 不知道R2018a有没有 但是2017版本的肯定是没有LSTM工具箱的了 所以版本低的趁这个机会卸载然后重新下载安装吧 引用参考 1 matlab
  • 基于昇腾CANN的推理应用开发--语义分割(Python)

    前情提要 基于 Python 开发 通过网络模型加载 推理 结果输出的部署全流程展示 快速熟悉并掌握语义分割基本开发流程 目录 1 内容及目标 1 1 内容 1 2 目标 1 3 先导知识 2 理解原始模型 2 1 网络结构 2 2 查看模
  • stable diffusion model训练遇到的问题【No module named ‘triton‘】

    一天早晨过来 发现昨天还能跑的diffusion代码 突然出现了 No module named triton 的问题 导致本就不富裕的显存和优化速度雪上加霜 因此好好探究了解决方案 首先是原因 由于早晨过来发现 电脑重启 导致了 训练终止
  • 冒泡排序与选择排序区别

    冒泡排序 冒泡排序 BubbleSort 的基本概念是 依次比较相邻的两个数 将小数放在前面 大数放在后面 即在第一趟 首先比较第1个和第2个数 将小数放前 大数 放后 然后比较第2个数和第3个数 将小数放前 大数放后 如此继续 直至比较最
  • LeetCode 热门100题 2.两数相加

    public class Solution public ListNode addTwoNumbers ListNode l1 ListNode l2 int num1 ListToArray l1 int num2 ListToArray
  • 开源创作工具一览

    GIMP 2 8 http www gimp org 常见的位图编辑工具 不再赘述 新的 2 8 版本增加了单窗口模式 层分组等功能 Fedora 17 安装 pkcon install gimp MyPaint http mypaint
  • 简单的数据库关系表建立

    表与表之间一般存在三种关系 即一对一 一对多 多对多关系 下面分别就三种关系讲解数据库相关设计的思路和思考过程 1 一对一关系 例如 下面的一张表 保存了人的相关信息 有男有女 要求查处所有的夫妻 sql代码 CREATE TABLE IF
  • android上架备案公钥和md5获取工具

    最近很多公司上架遇到了一个问题 就是要提供app的备案证明 现在android上架都需要备案了 但是我们的证书都是通过工具生成的 哪里知道公钥和md5那些东西呢 无论安卓备案还是ios备案都需要提供公钥和md5 包括ios的备案也是 找了很
  • uni-app使用swiper实现tab左右滑动下拉无法触发onReachBottom页面生命周期

    注意要点 1 通过uni getSystemInfo获取设备具体高度 定义swiper的高度 将swiper撑开 2 利用scroll view视图容器的 scrolltolower属性实现触底加载 3 点击tab切换也会触发swiper的
  • MQTT 5.0 Reason Code 介绍与使用速查表

    Reason Code Reason Code 在 MQTT 中的主要作用是为客户端和服务端提供更详细的反馈 比如我们可以在 CONNACK 报文中将用户名或密码错误对应的 Reason Code 反馈给客户端 这样客户端就能够知道自己无法
  • 使用matplotlib和seaborn绘图的常用参数

    plt grid b True ls color 606060 设置网格线 b控制网格线 ls设置网格线的样式 plt tick params labelsize 20 轴数值大小 labelsize设置数值展示大小 plt ylabel
  • JeeSite 是什么、概述

    见JeeSite官网 http jeesite4 mydoc io 前些天发现了一个巨牛的人工智能学习网站 通俗易懂 风趣幽默 忍不住分享一下给大家 点击跳转到教程 总体概述 快速访问 JeeSite 官网地址 http jeesite c