统计 1

Gremlin简介

Gremlin是Apache TinkerPop
框架下的希冀遍历语言。Gremlin是同等种函数式数据流语言,可以令用户用简单之道发挥复杂的性能图(property
graph)的遍历或询问。每个Gremlin遍历由同名目繁多步骤(可能在嵌套)组成,每一样步都以数据流(data
stream)上实行一个原子操作。

Gremlin包括三只中心的操作:

  • map-step
    对数据流中的靶子进行更换;
  • filter-step
    针对数据流中的目标就是尽过滤;
  • sideEffect-step
    本着数码流进行计算统计;

以下是Gremlin在有的景中之求实以:

  • 1.查寻找Gremlin朋友之爱侣

    g.V().has("name","gremlin").
      out("knows").
      out("knows").
      values("name")
    
  • 2.寻觅那些由于少个朋友一起开创的门类

    g.V().match(
      as("a").out("knows").as("b"),
      as("a").out("created").as("c"),
      as("b").out("created").as("c"),
      as("c").in("created").count().is(2)).
    select("c").by("name")
    
  • 3.被来Gremlin的享有上司,直至CEO

    g.V().has("name","gremlin").
      repeat(in("manages")).
    until(has("title","ceo")).
      path().by("name")
    
  • 4.收获Gremlin合作者的职称分布

    g.V().has("name","gremlin").as("a").
      out("created").in("created").
    where(neq("a")).
      groupCount().by("title")
    
  • 5.到手Gremlin购买活之相干产品列表并排序

    g.V().has("name","gremlin").
      out("bought").aggregate("stash").
      in("bought").out("bought").
    where(not(within("stash"))).
      groupCount().order(local).by(values,decr)
    
  • 6.获排名前十的基本人物

    g.V().hasLabel("person").
      pageRank().
    by("friendRank").
    by(outE("knows")).
      order().by("friendRank",decr).
      limit(10)
    

A代码编辑器,在线模版编辑,仿开发工具编辑器,pdf在线预览,文件转换编码
B 集成代码生成器
[正反双向](单表、主表、明细表、树形表,快速支付利器)+快速表单**
构建器
freemaker模版技术
,0个代码不用写,生成完整的一个模块,带页面、建表sql脚本,处理接近,service等整体模块
C 集成阿里巴巴数据库连接池druid  数据库连接池  阿里巴巴底
druid。Druid在督察、可扩展性、稳定性与性方面还出拨云见日的优势
D 集成安全权限框架shiro
  Shiro 是一个就此 Java
语言实现之框架,通过一个简便好用底 API
提供身份验证和授权,更安全,更牢靠
E 集成ehcache分布式缓存
  是一个纯Java的过程内缓存框架,具有高效、精干等特性,广泛使用的开源Java分布式缓存。
F **集成微信接口开发,微信自定义菜单(支持多单公众号)
G 图片爬虫技术:输入有图片的网址,能将这个网页的图形爬取并下充斥至地面服务器
H SQL 编辑器,
支持复杂sql语句(写副语句,查询语句),生成报表,可以导出excel

I  websocket 真正及时通讯技术
  即经常拉、及时站内信并声音提醒、实时在线管理、websocket就刷新页面(完胜ajax技术)
J  redis 工具类接口,方便调用,并发能力强
K 多数据源(支持以连接多独数据库,可以不同之模块连接不同往往的据库)支持N个数据源
L  快递单号物流查询接口(不待选择物流企业,根据单号自动识别)
M 调用摄像头拍,自定义裁剪编辑头像,头像图片色度调节
N  **视频播放技术,视频弹幕技术,多人口即时通讯弹幕聊天**

OLTP 和 OLAP遍历

  • 无异于潮编写,到处运行
    Gremlin遵循“一糟糕编写,到处运行”的设计哲学。这象征不但有着的TinkerPop启用的图形系统都能够行Gremlin遍历,而且每个Gremlin遍历都可以叫评估也实时数据库查询或批处理查询。(前者被称呼在线交易流程(OLTP),后者被誉为在线分析流程(OLAP))。

  • 协调多种图遍历
    这种普遍性是出于Gremlin遍历机实现的。这种分布式、基于图形的虚拟机了解什么协调多机器图遍历的实施。好处是,用户不需要上学数据库查询语言和域特定的BigData分析语言(例如Spark
    DSL,MapReduce等)。Gremlin是构建基于图的应用程序所必需之,其余所有还交给Gremlin遍历机处理。
    统计 2

1
 权限管理:点起来二级菜单上三级菜单显示
角色(基础权限)和按钮权限
    
 角色(基础权限):
分角色组和角色,独立分配菜单权限和增删改查权限。
      按钮权限:
给角色分配按钮权限。
2
 按钮管理:自定义按钮管理,维护按钮权限标识等
3
 菜单管理:无限级别从定义菜单,自定义菜单图标,业务菜单和体系菜单分离,菜单状态显示隐藏(递归处理)
4
 数据字典:无限级别,支持多级别无限分类。内设编号,排序等
5
 日志管理:记录用户登录退出和局部生死攸关操作记录
6
 在线管理:websocket技术,实时检测在线用户列表,统计在线人数,可强制用户下线
同一用户只能于一个客户端登录
7
 系统用户:对一一基本的用户增删改查,单发、群发站内信邮件短信,导入导出excel表格,批量去除
8
 会员管理:对前台用户管理,分配会员级别,到期日,状态,联系信息相当材料
9.   代码生成:生成完整的模块代码,并保存生成记录模版,可复用
(超强悍开发利器)
       
 正向生成:  生成完全的模块,页面、处理类似、service层、myabaits的xml
建表的sql脚本等
       
 反朝变化:  任意连接其他数据库(mysql、oracle、sqlserver),根据表反射生成本系统的模块
10.
性能监控:监控所有系统的属性,SQL监控,SQL防火墙,URL监控,SPRING监控,SESSION监控等
11. 接口测试:POST or GET
方式检测体系接口,参数加密,json返回结果,计算服务器响应时间
12. 发送邮件:单发,群发邮件  
13.
置二维码:生成二维码图表保存至服务器 or  解析读取二维码内信息
14.
图表报表:柱状图、饼状图、折线图、各种图片大全
15. 地图工具:打开地图,
鼠标点击地图某位置获取经纬度坐标,根据经纬度计算两碰离
16. 打印测试:页面打印预览测试
17.
图片管理:对批量达到传的图统一管理
,点击放大,可打开多单,自由切换,绚丽预览效果
18.
图片爬虫:输入有网址,爬起该图片展示在页面上,可以推广预览。可保留及服务器上,到图片管理其中
19. 站内信:收信箱和发邮箱,
websocket技术通讯技术做的立即收信提醒,可配置语音提醒来信
20. 下拉联动:四层下拉联动demo
21.
系统装置:修改系统名称,邮件服务器配置,短信账号设置,图片水印配置,微信配置
22.
及时聊天:打开聊天窗口,可群聊、一针对性一聊天
23.
表单构建:拖拽式快速从定义构建表单,组建元素丰富,有有钱文本、上传控件、下拉框等等
24.
主附结构:提供一个主表和明细表模块的例证(用本代码生成器生成的)
25.
组织机构:无限级别,公司or部门管理
26.
员工管理:和组织机构部门管理,可以绑定登录系统用户,授权数据权限
27.
文件管理:上污染文书,修改删除文件,计算文件大小
28.
快递查询:输入快递单号,查询物流跟踪信息。不需选择物流企业,根据单号自动识别
  ————————————————————————————————————————-数据库管理
29. 数据库备份:可备份单表、整库,支持本地与远程数据库备份(java界面编程技术,socket编程技术)
30.
备份定时器:quartz 2.2
强大的任务调度,多线程备份数据库,任务启动关闭异步操作
31. 数据库还原:历史备份记录,还原数据库 or 单表
,统计备份时间和文件大小
32.

命令式和声明式遍历

Gremlin遍历可以为命令式(程序式)方式,声明性(描述性)方式编写,也得以分包命令性和声明性的混方式编写。

  • 命令式编写方式
    博Gremlin合作者的顶头上司名字分布:

    g.V().has("name","gremlin").as("a").
      out("created").in("created").
    where(neq("a")).
      in("manages").
      groupCount().by("name")
    

    一个命令式的Gremlin遍历告诉运行器如何实施遍历中的各国一样步;然后,遍历器分裂到持有的“Gremlin”的合作方(去除Gremlin自己);下一致步,遍历器走及“Gremlin”合作者的上面(managers),最终因上面的名字进行统计分发。

据此是命令式的Gremlin遍历,就是它们鲜明地、程序化地告知遍历器“去这里,然后去那里”。

  • 声明式编写方式
    以下使用声明式编写方式贯彻了一如既往的结果:

    g.V().match(
      as("a").has("name","gremlin"),
      as("a").out("created").as("b"),
      as("b").in("created").as("c"),
      as("c").in("manages").as("d"),
    where("a",neq("c"))).
      select("d").
      groupCount().by("name")
    

    声明式的Gremlin遍历并无能够告遍历器执行其的步子的各个,而是允许每个遍历器从一个(可能嵌套的)模式之聚众中摘一个模式来实行。

而,声明遍历具有额外的补益,它不仅仅使了编译时查询计划器(如命令式遍历),而且要一个运行时查询计划器,根据每个模式之史统计信息选择下一个实行哪个遍历模式

  • 方便那些倾向被减少/过滤大多数数量的模式。

用户可选择上述提出的办法编写好之遍历语句。不管怎样,用户的遍历语句都见面冲具体的实行引擎以及遍历策略traversal
strategies于重写。Gremlin为用户提供灵活性表达友好之询问的;图系统吧本着具体启用TinkerPop的数据系统进行实用地评估图遍历提供了灵活性。

SQL编辑器:强大的SQL编辑器,支持编辑语句复杂查询语句,生成动态报表,可导出excel

 官网 http://www.fhadmin.org/

食谱权限:分配受每个角色不同的菜单权限,
每个角色看到底食谱不同,无限级别菜单
按钮权限:独立分配不同之角色不同的效用权限,增删改查权限分配具体到不同的菜单,自定义按钮管理
支持多用户分权限管理后台,  权限具体到不同之菜系不同的按钮(
一个用户可基本上只角色**)

资讯管理:新闻之保障、发布、权重排序等
采用百度ueditor富文本框
公告管理:公告的掩护、发布
广告管理:广告的保安、发布,状态维护,上传广告图片
友情链接:友情链接的维护、状态维护
特意推荐:特别推荐、状态维护

**

技术点

**1. 导出 导入 excel
文件

2  导出word文件
3. IO
流上污染下充斥文件

4.
群发邮件,可以发html、纯文本格式,可以发给任意邮箱(实现批量发送广告邮件)

5. 群发or单独
发送短信,支持少数种植第三正在少信商接口

6. spring 
 aop  事务处理

7. 代码生成统计器 (freemarker), 代码 zip
压缩打包

8. MD5加密
SHA加密(登录密码用者加密)接口加密地位校验

9. 数据库连接池  阿里底
druid。Druid在监控、可扩展性、稳定性与性方面都发出明确的优势,支持并发

10.进入安全框架 shiro
(登录授权)(session管理)

11.因汉字
解析汉字之全拼(拼音)和首字母(导入excel到用户表,根据用户之方块字姓名生成拼音的用户称)

12.app接口@ResponseBody(支持以及外语言数据交互)
13.极光推送
(推送给APP及时消息,APP不启动为能够接过)

14.微信接口(身份验证,文本、图文回复等)
微信远程控制服务器又开、锁定、其它应用程序

15.java Quartz2.2 任务调度

16.java websocket
即时通讯技术,点对点,群聊,单聊

17.Lucene**全文检索(在捐赠的类型遭到) 18.Base64传图片 19.图纸加水印(图片水印,文字水印) 20.生成 or  解析
二维码 21.HTML5 + JAVAEE  WebSocket
通信技术,**WebSocket
验证用户登录,强制有用户下线

22.批量异步上传图片,可预览,有速度修,支持拖拽上传(百度webuploader
)。列表动态滑动放大展示。

23.ehcache 于定义二级缓存
,选择缓存存放目录,处理并发,增加系统特性

24.服务器间GET POST
请求

25.uploadify
达成传插件,单条、批量达传多线程,带进度长达,异步,图片、视频,
其它文件格式均只是上污染

26.地图选点获取经纬度坐标,根据俩经纬度计算距离
27.tab标签页面效果,标签自由切换,不更操作数据库
28.站内信语音提醒,js控制音频播放
29.百度富文本编辑器,可达到传图片
30.网页爬虫技术,可因网页地址爬取图片与网页标题等消息(爬取某超市图片保存本服务器)
31.redis
技术

32.多数据源技术
33.springmvc
下拉多层联动技术

34.调用摄像头拍技术,图片裁剪技术
35.快递接口查询技术,输入快递单号查询物流信息
36.在线编辑器,仿开发工具
37.pdf文本在线预览,在线预览文本文件,转码预览
38.视频播放技术,多总人口在线弹幕聊天

统计 3**

 

统计 4

统计 5

统计 6

统计 7

统计 8

统计 9

统计 10

统计 11

统计 12

统计 13

统计 14

统计 15

统计 16

统计 17

统计 18

统计 19

 

统计 20

统计 21

统计 22

 

统计 23

 

无缝嵌入主语言

  • 统一主开发语言及图查询语言
    经典数据库查询语言(如SQL)被看跟终极以养条件遭受运用的编程语言截然不同。因此,经典数据库要求开发人员既而修主编程语言,还要编写数据库相应的查询语言。Gremlin统一了之分,因为遍历可以为此支持功能做及嵌套(主要编程语言都支持)的别编程语言编写。因此,用户的Gremlin遍历可以采取应用程序语言(主语言,Host
    language)编写,并受益于主语言及其工具(例如类型检查,语法高亮,点完等)所提供的亮点。目前是各种Gremlin语言变体,包括:Gremlin-Java,Gremlin-Groovy,Gremlin-Python,Gremlin-Scala等。

  • 以身作则程序
    正如之下简单种植办法,高低立判:

    public class GremlinTinkerPopExample {
      public void run(String name, String property) {
    
    Graph graph = GraphFactory.open(...);
    GraphTraversalSource g = graph.traversal();
    
    double avg = g.V().has("name",name).
                   out("knows").out("created").
                   values(property).mean().next();
    
    System.out.println("Average rating: " + avg);
      }
    }
    

public class SqlJdbcExample {
  public void run(String name, String property) {

    Connection connection = DriverManager.getConnection(...)
    Statement statement = connection.createStatement();
    ResultSet result = statement.executeQuery(
      "SELECT AVG(pr." + property + ") as AVERAGE FROM PERSONS p1" +
        "INNER JOIN KNOWS k ON k.person1 = p1.id " +
        "INNER JOIN PERSONS p2 ON p2.id = k.person2 " +
        "INNER JOIN CREATED c ON c.person = p2.id " +
        "INNER JOIN PROJECTS pr ON pr.id = c.project " +
          "WHERE p.name = '" + name + "');

    System.out.println("Average rating: " + result.next().getDouble("AVERAGE")
  }
}

参考资料

The Gremlin Graph Traversal Machine and
Language