param

js递归生成树型下拉菜单

老子叫甜甜 提交于 2020-01-21 17:39:18
需求:我需要把一个单表的数据转换成类似菜单那种如图所示:我呢需要把这个菜单树放入到下框里面去如图所示:下面是实现思路:1.第一步1.1var afTypeJson=${afTypeJson}// 这是从后台接口传到jsp页面的数据看一下后台传过来的源数据,里面并没children字段 //把扁平数据转成树形数据(可以实现无限层级树形数据结构,只适用于单个表的数据)1.2var json=treeDataformat(afTypeJson,'typeId','parentId','children');再来看一下数据: 好的,走到这一步的话先恭喜下自己,已经成功一半啦!(赶紧奶一口白开水) 2.第二步 如果想实现图二的效果我们需要给它伪造爸爸(父节点parentId: -1,typeId: 0,typeNameCn: "最顶层分类",typeNameEn: "Top")这里面的字段根据你自己的实际情况来改 2.1 var tree=[{parentId: -1,typeId: 0,typeNameCn: "最顶层分类",typeNameEn: "Top",children:common.deepClone(json)}];2.2 varselectTree=creatSelectTree(tree);2.3 var selectbox=document.getElementById(

mybatis参数处理

孤人 提交于 2020-01-21 00:38:36
总结 多个参数 :mybatis会做特殊处理。多个参数会被封装成一个map key : param1….paramN,或者使用@Param注解指定的值 value:传入的参数值 //id获取的方式有两种 #{param1} 或者#{id} //name获取的方式有两种 #{param2}或者 #{name} selectUserByIdAndName(@Param("id") Integer id, @Param("name") String name); 传参的方式 POJO :如果多个参数正好是业务逻辑的数据模型,就可以直接传入pojo;使用#{属性名}:取出传入的pojo属性值 Map :如果多个参数不是业务模型中的数据,没有对应的pojo,不经常使用,为了方便,也可以传入map;#{key}:取出map中对应的值 TO : 如果多个参数不是业务模型中的数据,但经常要使用,推荐编写一个TO(Transfer object) //取值:id==>#{id/param1} username==>#{param2} User selectUserByIdAndName(@Param("id") Integer id, String name); //取值:id==>#{param1} username==>#{param2.username} User

Android 嵌套滑动详解

戏子无情 提交于 2020-01-20 00:25:07
参考: Android嵌套滑动讲解简书: https://www.jianshu.com/p/f4763bf8f9ba 方法总结 startNestedScroll : 起始方法, 主要作用是找到接收滑动距离信息的外控件. dispatchNestedPreScroll : 在内控件处理滑动前把滑动信息分发给外控件. dispatchNestedScroll : 在内控件处理完滑动后把剩下的滑动距离信息分发给外控件. stopNestedScroll : 结束方法, 主要作用就是清空嵌套滑动的相关状态 setNestedScrollingEnabled和isNestedScrollingEnabled : 一对get&set方法, 用来判断控件是否支持嵌套滑动. dispatchNestedPreFling和dispatchNestedFling : 跟Scroll的对应方法作用类似NestedScrollingParent onStartNestedScroll : 对应startNestedScroll, 内控件通过调用外控件的这个方法来确定外控件是否接收滑动信息. onNestedScrollAccepted : 当外控件确定接收滑动信息后该方法被回调, 可以让外控件针对嵌套滑动做一些前期工作. onNestedPreScroll : 关键方法,

Spring Boot项目中使用 TrueLicense 生成和验证License(服务器许可)

筅森魡賤 提交于 2020-01-19 04:33:22
icense,即版权许可证,一般用于收费软件给付费用户提供的访问许可证明。根据应用部署位置的不同,一般可以分为以下两种情况讨论: 应用部署在开发者自己的云服务器上。这种情况下用户通过账号登录的形式远程访问,因此只需要在账号登录的时候校验目标账号的有效期、访问权限等信息即可。 应用部署在客户的内网环境。因为这种情况开发者无法控制客户的网络环境,也不能保证应用所在服务器可以访问外网,因此通常的做法是使用服务器许可文件,在应用启动的时候加载证书,然后在登录或者其他关键操作的地方校验证书的有效性。 注:限于文章篇幅,这里只讨论代码层面的许可限制,暂不考虑逆向破解等问题。此外,在下面我只讲解关键代码实现,完整代码可以参考: gitee.com/zifangsky/L… 二 使用 TrueLicense 生成License (1)使用 Spring Boot 构建测试项目ServerDemo,用于为客户生成License许可文件: 注:这个完整的Demo项目可以参考: gitee.com/zifangsky/L… i)在pom.xml中添加关键依赖: de.schlichtherle.truelicense truelicense-core 1.33 provided 复制代码 ii)校验自定义的License参数: TrueLicense的 de.schlichtherle.license

Spring Boot项目中使用 TrueLicense 生成和验证License(服务器许可)

大兔子大兔子 提交于 2020-01-19 04:30:06
一 简介 License,即版权许可证,一般用于收费软件给付费用户提供的访问许可证明。根据应用部署位置的不同,一般可以分为以下两种情况讨论: 应用部署在开发者自己的云服务器上。这种情况下用户通过账号登录的形式远程访问,因此只需要在账号登录的时候校验目标账号的有效期、访问权限等信息即可。 应用部署在客户的内网环境。因为这种情况开发者无法控制客户的网络环境,也不能保证应用所在服务器可以访问外网,因此通常的做法是使用服务器许可文件,在应用启动的时候加载证书,然后在登录或者其他关键操作的地方校验证书的有效性。 注:限于文章篇幅,这里只讨论代码层面的许可限制,暂不考虑逆向破解等问题。此外,在下面我只讲解关键代码实现,完整代码可以参考: gitee.com/zifangsky/L… 二 使用 TrueLicense 生成License (1)使用Spring Boot构建测试项目ServerDemo,用于为客户生成License许可文件: 注:这个完整的Demo项目可以参考: gitee.com/zifangsky/L… i)在pom.xml中添加关键依赖: <dependency> <groupId>de.schlichtherle.truelicense</groupId> <artifactId>truelicense-core</artifactId> <version>1.33<

Unity运行时地形编辑器——RuntimeTerrainEditor

∥☆過路亽.° 提交于 2020-01-19 02:47:30
上一篇关于地形文章写完后(好像也有点遥远了),这个运行时地形编辑器也基本上满足自己需求了,抽空稍微整理了一下做成了一个独立的工具,unity2018.3及以上可用,一开始也是适配了2017的,后来由于自己已经完全不用2017了,就放弃了对2017的支持。 Github源码链接 支持跨地形编辑 笔刷 地形的抬高,降低,平滑 树的种植和删除 草的种植和删除 贴图编辑 地形高度编辑支持使用笔刷 树、草的编辑支持使用笔刷 操作的撤回 一、RuntimeTerrainEditor   提供了对地形高度,细节,树木,纹理四大类的修改,其中地形高度的修改支持使用笔刷,其他几种由于自已没有需要就偷了个懒,后期会补上。 1.笔刷   之前在 自定义笔刷 这篇文章中讲到了自定义笔刷的思路,这里就不多说了,只说怎么创建一张图片用作笔刷。   首先自己制作的笔刷图片一定要带透明通道,推荐使用png格式,图片的alpha值也就代表了笔刷在对应位置的强度,下面这张图片是个最常用的一种笔刷,但由于自己不会做图,实际运用时使用这张图效果不怎么好。这张图中心透明度高,越往外越低,用这张图做地形高度的修改也就是一个中间高外围低的效果。   图片制作完成后导入unity,设置图片的Import Setting如下。   导入并设置完成后,使用自己工程加载资源的方式加载这些贴图

【学习笔记】BP神经网络

不羁岁月 提交于 2020-01-19 00:06:07
转自 huaweizte123 的CSDN博客 链接 https://blog.csdn.net/huaweizte123/article/details/78803045 第一步、向前传播得到预测数据:向前传播的过程,即数据从输入层输入,经过隐含层,输出层的计算得到预测值,预测值为输出层的输出结果。网络层的输出即,该层中所有节点(神经元)的输出值的集合。我们以图一的神经网络结构为例,分析向前传播过程。 1.得到隐含层的输出y 1, y 2 ,y 3 : 2.获取到第二层的隐含层输出y 4 ,y 5 ,输入的数据也就是第一层隐含层的输出数据y 1, y 2 ,y 3 。 3、通过输出层,得到最后的预测值y。 第二步、反向传播更新权重:根据样本的真实类标,计算模型预测的结果与真实类标的误差。然后将该误差反向传播到各个隐含层。计算出各层的误差,再根据各层的误差,更新权重。 1.计算输出层的误差:其中z为该样本的类标 2计算第二层隐含层的误差 3.计算第一次隐含层的误差: 4、更新权重:新的权值=原权值+学习速率×该节点的误差×激励函数的导函数的值(f(e)的倒数)×与该节点相连的输入值 4.1更新输入层与第一层隐含层之间的权值: 4.2更新第一层隐含层与第二层隐含层之间的权值 4.3更新第二层隐含层与输出层之间的权值 以上就是反向传播的过程。误差从输出层反向的传到输入层

柱状饼状统计图表的Flash实现

我与影子孤独终老i 提交于 2020-01-18 22:47:08
很多朋友经常需要在网页上表现一些数据的统计图表,特别是投票统计系统的应用开发,通常情况下,是先用一些软件画出图表,然后转换成GIF或JPEG格式保存,再用img标记插入网页中,或者使用CSS的方式。这些图片常常会占去网页本身大小的很大比例,影响到网页的传输速度,并且显现出来的并不是那么的美观。   常接触统计图表的开发人员会注意到,很多图表其实是比较简单,比如横向柱状的统计图,就是由简单的矩形块拼合。这自然会让人们联想到Html中的表格,所以,有不少这些类型的统计图,直接用表格来实现,比如下面: 这种用Html代替图片的做法,比较简单,显然要比任何图片的方式都要少占用带宽资源。不过,表格的方法对于饼状图和柱状图显得就那么点无能为力了。 这样的统计图表应该可以使用Flash的方式就可以简单完美的实现,而且有3D效果,如下图: 柱状图效果 饼状图效果 <object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=10,0,0,0" width="273" height="185" name="chart" align="middle"> <param

单页应用SPA开发最佳实践

[亡魂溺海] 提交于 2020-01-18 19:51:17
最近用vue+vue-router做了个单页应用的项目,页面大概有15个左右。积累了一些开发经验在此做一些记录.本文主要从可维护性方面来考虑SPA的开发实践 全站的颜色定义放在一个less或者scss的文件里,其他组件和页面import这个配置来引用颜色。 示例代码:define.scss $bgColor: #fff; $color:#619eee; $fontColor:#333333; $fontColor01:#A5A5A5; $fontColor02:#4a4a4a; $fontColor03:#448CFF; $color300:#ed5630; $color3001:#fbfbfb; $accpetColor:#2fbe27; $refusedColor: #de0101; $hrefColor:#4a90e2; $redColor:#ff4c4c; 好处: 方便维护整站的色彩风格,后续遇到VI升级改版等,你就偷着乐吧。 vue,vue-router单独抽出来,用script标签引入 bad case npm install vue npm install vue-router //js import Vue from 'vue' import VueRouter from 'vue-router' good case <script src="/path/to

unbutu rgbd slam v2+kinect2/kinect1

我们两清 提交于 2020-01-18 08:03:11
unbutu rgbd slam v2+kinect2/kinect1 第一步 安装和使用kinect v2摄像头 ibfreenect2安装 iai_kinect2安装 启动使用 第三步 用Kinect2跑RGB-D SLAM 保存点云和轨迹 保存数据集 第一步 安装和使用kinect v2摄像头 ibfreenect2安装 安装opencv 安装其他依赖: $ sudo apt - get install build - essential cmake pkg - config libturbojpeg libjpeg - turbo8 - dev mesa - common - dev freeglut3 - dev libxrandr - dev libxi - dev 下载libfreenect2驱动: $ cd ~ $ git clone https: / / github . com / OpenKinect / libfreenect2 . git $ cd libfreenect2 $ cd depends ; . / download_debs_trusty . sh 安装libusb $ sudo dpkg - i debs / libusb * deb 安装 TurboJPEG $ sudo apt - get install libturbojpeg