摘要: RBAC模型概述 RBAC即角色访问控制(Role Based Access Control) RBAC认为权限授权实际上是Who、What、How的问题。在RBAC模型中,who、what、how构成了访问权限三元组,也就是“Who对What(Which)进行How的操作”。Who:权限的拥用者或 阅读全文
posted @ 2017-04-09 13:57 夏威夷8080 阅读(1674) 评论(0) 推荐(0) 编辑
摘要: 实现不同权限的用户登录后看到不同的菜单(菜单分两级),二级菜单显示内容根据一级菜单提供 一. menu 菜单表 id(主键), menu_name(菜单名), parent_menu_id(父菜单id), level(菜单级别:0,一级菜单,1,二级菜单……可以无限级) 二. role 角色表 id 阅读全文
posted @ 2017-04-09 13:43 夏威夷8080 阅读(943) 评论(0) 推荐(0) 编辑
摘要: JDK1.5之后java中的计时给出了更精确的方法:System.nanoTime(),输出的精度是纳秒级别,这个给一些性能测试提供了更准确的参考。 但是这个方法有个需要注意的地方,不能用来计算今天是哪一天(应该也没人这么傻,只是早上我突然想起) 看到这个方法不由得会想起System.current 阅读全文
posted @ 2017-04-09 11:17 夏威夷8080 阅读(1280) 评论(0) 推荐(0) 编辑
摘要: 环境 VM VirtualBox安装虚拟机CentOS 7 1、Redis.conf配置文件中 注释掉 bind 127.0.0.1 2、防火墙关闭(或添加可访问的端口,具体不在此描述) 最后一个坑 虚拟机网络配置 使用网络地址转换的方式时,需要配置端口转发规则,添加redis服务6379端口 在w 阅读全文
posted @ 2017-04-08 11:26 夏威夷8080 阅读(33008) 评论(0) 推荐(0) 编辑
摘要: 管道流PipeStream是一种特殊的流,用于在不同线程间直接传送数据,而不需要借助临时文件之类的东西。 jdk中提供了四个类来使线程间可以通信: 1)PipedInputStream和PipedOutputStream 2)PipedReader和PipedWriter 先看看字节流的示例: 再看 阅读全文
posted @ 2017-04-06 19:22 夏威夷8080 阅读(376) 评论(0) 推荐(0) 编辑
摘要: spring中 context:property-placeholder 导入多个独立的 .properties配置文件? Spring容器采用反射扫描的发现机制,在探测到Spring容器中有一个 org.springframework.beans.factory.config.PropertyPl 阅读全文
posted @ 2017-04-06 16:27 夏威夷8080 阅读(1850) 评论(0) 推荐(0) 编辑
摘要: volatile关键字的作用是强制从公共堆栈中取得变量的值,而不是从线程私有数据栈中取得变量的值。 使用volition关键字增加了实例变量在多个线程间的可见性。但volition有个致命的缺点就是不支持原子性。 下面将volition和synchronized关键字进行一下比较: 1.voliti 阅读全文
posted @ 2017-04-03 15:00 夏威夷8080 阅读(4318) 评论(0) 推荐(0) 编辑
摘要: 就是业务上需要完成一个功能,这个功能需要依次调用四个接口,后面接口的参数都依赖于前一个接口的返回值。 类似这样: 但是事实不与愿为,因为什么呢?这个js里的循环,每次都是自顾自的走,它不等ajax执行好走完到success代码,就继续循环下一条数据了,这样数据就全乱了。 后来,想到试试ajax里as 阅读全文
posted @ 2017-04-03 11:28 夏威夷8080 阅读(5542) 评论(0) 推荐(0) 编辑
摘要: MyISAM存储引擎简介 MyISAM存储引擎的表在数据库中,每一个表都被存放为三个以表名命名的物理文件。 首先肯定会有任何存储引擎都不可缺少的存放表结构定义信息的.frm文件,另外还有.MYD和.MYI文件,分别存放了表的数据(.MYD)和索引数据(.MYI)。每个表都有且仅有这样三个文件做为My 阅读全文
posted @ 2017-03-28 21:32 夏威夷8080 阅读(259) 评论(0) 推荐(0) 编辑
摘要: count(*)和count(列)根本就是不等价的,count(*)是针对于全表的,而count(列)是针对于某一列的,如果此列值为空的话,count(列)是不会统计这一行的。 也就是说count(列)会用到索引,并且会过滤掉该列为null的那行。 而count(*)是全表扫描,并且只要某一条数据有 阅读全文
posted @ 2017-03-28 20:48 夏威夷8080 阅读(917) 评论(0) 推荐(0) 编辑