- 博客(37)
- 收藏
- 关注
转载 权限系统数据库建模
权限系统设计2019.05.23 13:58:35字数 1408阅读 56我们比较常见的就是基于角色的访问控制,用户通过角色与权限进行关联。简单地说,一个用户拥有多个角色,一个角色拥有多个权限。这样,就构造成“用户-角色-权限”的授权模型。在这种模型中,用户与角色之间、角色与权限之间,通常都是多对多的关系。如下图:image基于这个,得先了解角色到底是什么?我们可以理解它为一定数量...
2019-09-15 22:50:14
410
原创 mysql中的数据括号里的数字含义
数字类型整型如int(2),表示显示的长度。存储范围不会变,或者说不会被影响。如果数字长度超过了2位,则没什么;否则如果设置了零填充,则会用零来填充浮点型如 float(5,2)表示整个数值的位数不能超过5位(小数位 + 整数位)整数位的个数为(5 - 2 = 3),小数位不能超过2位(超过了需要四舍五入),如输入10.226,只会截取小数点后两位,变成10.23字符类型5.0之...
2019-09-12 20:04:43
921
转载 一篇文章告诉你如何设计数据库表
0.三大范式及反范式◆ 第一范式(1NF):强调的是列的原子性,即列不能够再分成其他几列。 ◆ 第二范式(2NF):首先是 1NF,另外包含两部分内容,一是表必须有一个主键;二是没有包含在主键中的列必须完全依赖于主键,而不能只依赖于主键的一部分。 ◆ 第三范式(3NF):首先是 2NF,另外非主键列必须直接依赖于主键,不能存在传递依赖。即不能存在:非主键列 ...
2019-09-12 17:10:00
9460
转载 ASCII,Unicode和UTF-8到底什么关系?!
1.ASCII我们知道,计算机内部,所有信息最终都是一个二进制值。每一个二进制位(bit)有0和1两种状态,因此八个二进制位就可以组合出256种状态,这被称为一个字节(byte)。也就是说,一个字节一共可以用来表示256种不同的状态,每一个状态对应一个符号,就是256个符号,从00000000到11111111。上个世纪60年代,美国制定了一套字符编码,对英语字符与二进制位之间的关系,做了统一...
2019-09-12 16:02:34
362
转载 看过最棒的mysql数据库锁文章
锁是计算机协调多个进程或线程并发访问某一资源的机制。在数据库中,除传统的 计算资源(如CPU、RAM、I/O等)的争用以外,数据也是一种供许多用户共享的资源。如何保证数据并发访问的一致性、有效性是所有数据库必须解决的一 个问题,锁冲突也是影响数据库并发访问性能的一个重要因素。从这个角度来说,锁对数据库而言显得尤其重要,也更加复杂。本章我们着重讨论MySQL锁机制 的特点,常见的锁问题,以及解决My...
2019-09-12 09:38:07
235
转载 硬盘的相关知识
概述盘片(platter)磁头(head)磁道(track)扇区(sector)柱面(cylinder)盘片 片面 和 磁头硬盘中一般会有多个盘片组成,每个盘片包含两个面,每个盘面都对应地有一个读/写磁头。受到硬盘整体体积和生产成本的限制,盘片数量都受到限制,一般都在5片以内。盘片的编号自下向上从0开始,如最下边的盘片有0面和1面,再上一个盘片就编号为2面和3面。如下图:...
2019-09-08 15:40:49
286
转载 JVM虚拟机栈的结构分析
目录JVM栈之局部变量表:包含参数和局部变量JVM栈之操作数栈JVM栈之栈上分配(动态链连接) 每当启动一个新线程时,Java虚拟机都会为它分配一个Java栈。Java栈以帧为单位保存线程的运行状态。虚拟机只会直接对Java栈执行两种操作:以帧为单位的压栈和出栈。 某个线程正在执行的方法被称为该线程的当前方法,当前方法使用的栈帧称为当前帧,当前方法所属的类称为当前类,当...
2019-09-07 21:35:50
230
转载 Mysql的InnoDB和MyIsam存储引擎9点区别(清晰明了)
区别:1. InnoDB支持事务,MyISAM不支持,对于InnoDB每一条SQL语言都默认封装成事务,自动提交,这样会影响速度,所以最好把多条SQL语言放在begin和commit之间,组成一个事务; 2. InnoDB支持外键,而MyISAM不支持。对一个包含外键的InnoDB表转为MYI...
2019-09-07 20:29:34
132
转载 红黑树是什么?红黑树的作用?红黑树的调整?
前戏红黑树,对很多童鞋来说,是既熟悉又陌生。熟悉是因为在校学习期间,准备面试时,这是重点。然后经过多年的荒废,如今已经忘记的差不多了。如果正在看文章的你,马上快要毕业,面临着找工作的压力;又或者你觉得需要将这块知识重新复习一遍;又或者只是看看,那么恭喜你,赚到了。那么我将带领大家重新认识下红黑树,用简单的语言,搞懂红黑树。在学习红黑树之前,咱们需要先来理解下二叉查找树(BST)。二叉查找树要想了解...
2019-09-06 17:44:57
3551
2
转载 什么是哈希表?为什么要使用哈希表?哈希表的实现原理?哈希冲突怎么解决?
前言 当我们在编程过程中,往往需要对线性表进行查找操作。在顺序表中查找时,需要从表头开始,依次遍历比较a[i]与key的值是否相...
2019-09-06 16:51:44
10685
转载 IT常用英语词汇
Aabstract 抽象的abstract base class 抽象基类abstract class 抽象类abstraction 抽象、抽象物、抽象性access 存取、访问access function 访问函数access level 访问级别account 账户action 动作activate 激活actual parameter ...
2019-09-06 16:31:39
1857
转载 AVL树的旋转操作(图解)
二叉搜索树的平衡–AVL树和树的旋转(图解) 二叉搜索树只有保持平衡时其查找效率才会高。要保持二叉搜索树的平衡不是一件易事。不过还是有一些非常经典的办法可以做到,其中最好的方法就是将二叉搜索树实现为AVL树。AVL树得名于它的发明者 G.M. Adelson-Velsky 和 E.M. Landis,他们在 1962 年的论文 "An algorithm for the or...
2019-09-06 12:05:17
946
转载 二叉查找树,AVL树,B树,B+树,红黑树的区别与联系
二叉查找树:二叉查找树就是左结点小于根节点,右结点大于根节点的一种排序树,也叫二叉搜索树。也叫BST,英文Binary Sort Tree。二叉查找树比普通树查找更快,查找、插入、删除的时间复杂度为O(logN)。但是二叉查找树有一种极端的情况,就是会变成一种线性链表似的结构。此时时间复杂度就变味了O(N...
2019-09-06 11:21:20
892
转载 oracle 查看用户表数目,表大小,视图/过程/函数数目等
查看当前用户的缺省表空间 SQL>select username,default_tablespace fromuser_users; 查看当前用户的角色 SQL>select * from user_role_privs; 查看当前用户的系统权限和表级权限 SQL>select * from user_sys_privs; SQL&...
2019-03-27 16:54:39
1655
转载 java中byte和short类型的相互转换(不是用隐式转换)
技术点:计算机中存储是用补码!!,同时注意一下计算省略了高位不变部分1、byte:有符号(意思是有正和负),在网络传输中都是会用到byte的,它占1个字节,共8位,比如说11111111就可以用1个byte表示,转化为10进制:- (2的6次+2的5次+2的4次+2的3次+2的2次+2的1次+2的0次) = -127。其中前7位表示数字,最高位表示符号,0为正,1为负。范围是 (-2的7次 ~...
2019-03-14 17:04:16
21556
5
转载 java正则表达式的大量例子及常用构造元素
(1) “^\d+$” //非负整数(正整数 + 0)(2) “1[1-9][0-9]$” //正整数(3) “^((-\d+)|(0+))$” //非正整数(负整数 + 0)(4) “^-[0-9][1-9][0-9]$” //负整数(5) “^-?\d+$” //整数(6) “^\d+(.\d+)?$” //非负浮点数(正浮点数 +...
2019-03-13 16:12:48
778
转载 SQL中IN和EXISTS用法的区别
结论1. in()适合B表比A表数据小的情况2. exists()适合B表比A表数据大的情况当A表数据与B表数据一样大时,in与exists效率差不多,可任选一个使用.select * from Awhere id in(select id from B)以上查询使用了in语句,in()只执行一次,它查出B表中的所有id字段并缓存起来.之后,检查A表的id是否与B表中的id相等,如果相等...
2019-03-11 17:55:47
186
转载 spring 定时器 表达式 org.springframework.scheduling.quartz.CronTriggerBean
一个Quartz的CronTrigger表达式分为七项子表达式:其中每一项以空格隔开,从左到右分别是:秒,分,时,月的某天,月,星期的某天,年;其中年不是必须的,也就是说任何一个表达式最少需要六项!例:0 0 12 ? * WED 表示每个星期三的12点执行,这里没有“年”这项!字段名(项) 必须 值范围 特殊字符秒 是 0-59 , - * /分 是 0-59 , - * /...
2019-03-07 11:12:26
446
转载 为什么不推荐用外键约束
其实这个话题是老生常谈,很多人在工作中确实也不会使用外键。包括在阿里的JAVA规范中也有下面这一条:【强制】不得使用外键与级联,一切外键概念必须在应用层解决。 但是呢,询问他们原因,大多是这么回答的:每次做DELETE 或者UPDATE都必须考虑外键约束,会导致开发的时候很痛苦,测...
2019-03-06 11:02:54
818
转载 Sql的with as 的使用
with as语法–针对一个别名with tmp as (select * from tb_name)–针对多个别名with   tmp as (select * from tb_name),   tmp2 as (select * from tb_name2),   tmp3 as (sel
2019-03-05 17:22:56
6819
转载 lombok的@Accessors注解3个属性说明
Accessors翻译是存取器。通过该注解可以控制getter和setter方法的形式。@Accessors(fluent = true)使用fluent属性,getter和setter方法的方法名都是属性名,且setter方法返回当前对象@Data@Accessors(fluent = true)class User { private Integer id; private St...
2019-02-27 21:09:11
3049
转载 group by分组多个字段原理
group by 的简单说明: group by 一般和聚合函数一起使用才有意义,比如 count sum avg等使用group by的两个要素: (1) 出现在select后面的字段 要么是是聚合函数中的,要么就是group by 中的. (2) 要筛选结果 可以先使用where 再用group by 或者先用grou...
2019-02-21 17:10:02
19214
3
原创 oracle函数定义小例子
最近在学习oracle的函数定义,发现sql函数的编写可真不简单,哪怕有一点点的格式不正确都不能编译通过。但是正是因为这样就又变得有意思了。尝试了几个例子,做一下记录,本人使用的是plsql工具1、返回一个字符串--创建一个函数: f_testcreate or replace function f_test -- 注意无传入参数的函数不要加括号,否则会报错return varch...
2019-02-21 14:50:00
936
原创 定义sql无参函数的问题
我们在定义sql无参函数的时候,要注意不能带括号create or replace function f_test带括号是会报错的create or replace function f_test() --报错
2019-02-20 16:35:22
1146
原创 更新文件不用重启springboot
只需要添加依赖: <dependency> <groupId>org.springframework</groupId> <artifactId>springloaded</artifactId> <version>1.2.6.RELEASE</version> </dependenc
2019-02-14 22:33:42
593
转载 为什么要用泛型而不是object
为什么要用泛型而不是object 【为什么要使用泛型】 通过泛型可以定义类型安全的数据结构(类型安全),而无须使用实际的数据类型(可扩展)。这能够显著提高性能并得到更高质量的代码(高性能),因为您可以重用数据处理算法,而无须复制类型特定的代码(可重用)。在概念上,泛型类似于 C++ 模板,但是在实现和功能方面存在明显差异。基于 Object 的解决方案存在两个问题。...
2019-02-14 14:40:28
1324
原创 java复制数组的两种常用方法copyOf和copyOfRange
遇到某些场景,我们需要去复制数组。java已经为我们封装了许多方法来满足我们的需求常用的两种复制数组的方法:使用java.util.Arrays.copyOf(T[], int)方法使用java.util.Arrays.copyOfRange(T[], int, int)方法java.util.Arrays.copyOf(T[], int)T[]:传入要复制的数组int:传入新数...
2019-02-14 11:28:00
4480
原创 mysql的server time zone exception解决方法
今天在使用mysql的时候出现如下错误java.sql.SQLException: The server time zone value 'Öйú±ê׼ʱ¼ä' is unrecognized or represents more than one time zone. You must configure either the server or JDBC driver (via t...
2019-02-12 21:10:27
603
转载 HashMap和Hashtable的区别
HashMap和Hashtable的比较是Java面试中的常见问题,用来考验程序员是否能够正确使用集合类以及是否可以随机应变使用多种思路解决问题。HashMap的工作原理、ArrayList与Vector的比较以及这个问题是有关Java 集合框架的最经典的问题。Hashtable是个过时的集合类,存在于Java API中很久了。在Java 4中被重写了,实现了Map接口,所以自此以后也成了Java...
2019-02-12 18:07:30
118
原创 切换jdk环境失败的解决方案
系统装了两个jdk环境,一个是jdk7,另外一个是jdk8。今天要从jdk8切换到jdk7,配置完环境变量之后使用java -version命令查看并不成功。后面上网查看找到了解决方法:将path下的%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;移至字符串的开头原因:环境变量具有优先级,排在前面的要由于后面的具体可以参考:https://www.cnblogs....
2019-02-11 14:18:18
386
1
原创 java中的String s; String s = null; String s = ''之间的区别
String s; 表示声明了一个String类型的变量名,但是没有申请内存地址,也没有指向某一块内存空间 String s = null; 表示声明了一个String类型的变量名,同时申请了内存地址,但是没有指向某一块内存空间 String s = ‘’; 表示生命了一个String类型的变量名,同时申请了内存地址并指向了某一块内存空间,该内存的内容为空...
2019-02-10 21:02:46
1232
1
转载 算法经典面试题(java)
&amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp
2018-12-28 10:15:53
1860
转载 值得关注的java博主
转载:https://blog.youkuaiyun.com/sunnyboy9/article/details/71598863
2018-12-26 18:01:07
2486
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人