摘要:shiro是一款开源的安全框架。由于其易用比较强,功能覆盖比较全面(身份验证,会话管理和鉴权)。这里主要讲鉴权! 鉴权:包括前台按钮,菜单以及请求权限的控制。代码截图如下 后台的请求,可对应到前台的页面或者按钮:这个主要是控制是否有后台请求的权限 前台页面:这个主要控制前台是否展示某个页面或者说是按
阅读全文
摘要:三大范式: 第一范式(1NF):字段值具有原子性,不能再分(所有关系型数据库系统都满足第一范式); 例如:姓名字段,其中姓和名是一个整体,如果区分姓和名那么必须设立两个独立字段; 第二范式(2NF):一个表必须有主键,即每行数据都能被唯一的区分; 备注:必须先满足第一范式; 第三范式(3NF):一个
阅读全文
摘要:Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口。 一个完整的Docker有以下几个部分组成: dockerClient客户端 Docker Dae
阅读全文
摘要:JPA-java Persistence API 持久化java框架。 ORM映射元数据 JPA支持XML和JDK5.0注解两种元数据的形式,元数据描述对象和表之间的映射关系,框架据此将实体对象持久化到数据库表中; API 用来操作实体对象,执行CRUD操作,框架在后台替代我们完成所有的事情,开发者
阅读全文
摘要:熔断器:在电力方便又熔断器,保险丝:其作用就是在电流过大或者说是电压过大情况下,形成断路。以达到对设备和线路的保护。 我们这里所说的springCloud的熔断器hystrix 1 断路器:当失败或者说是错误返回到一定比例,后开路。保持时间t,而后改为闭路,如果此时已然有误,则继续开路 2 fall
阅读全文
摘要:mybatis的xml文件去写动态sql的话,关于占位符我们有两种写法,截图如下: Select * from Table_name where Cloumn = ${value} 共同:两者都是动态传参 区别:$纯碎的 string 替换,在动态 SQL 解析阶段将会进行变量替换,也就是传的A 后
阅读全文
摘要:问题场景:基于springCloud的微服务搭建,建立网关服务基于Zuul。限流Filter 限流:即在一定时间内,特定的主题或者特定类型的请求数量做一定的限制limit,如果超过limit,则切断请求做固定返回。其目的和作用:维护系统稳定性、抵抗高峰期请求对系统的冲击。 算法:目前比较流行的算法有
阅读全文
摘要:要去对比两个事物,那么两个事物肯定是有共性,才能去谈差异。 第一步: hibernate和Mybatis的共性 两者都是优秀的对象关系映射框架,对jdbc对象的封装的持久层框架。 第二步: 两者的差异 A: hibernate映射关系为POJO到表的映射;Mybatis为sql结果集与 POJO的映
阅读全文
摘要:java虚拟机在执行java程序的过程中会把它所管理的内存划分为若干不同区域:有些是依赖用户线程的启动和结束而创建和销毁的,有的则是随着虚拟机进程的启动而存在。 线程共享区域:方法区 、堆。 线程隔离(各个线程独有区域)虚拟机栈、本地方法栈、程序计数器。 方法区:用于存储已被虚拟机加载的类信息、常量
阅读全文
摘要:线程池是为多线程而生的,首先我们先聊聊线程 1 什么是线程 线程,程序执行流的最小执行单位 - thread。 2 线程的创建以及状态切换 start() run() sleep() >blocked new Thread >Runnable >Runing wait() >blocked noti
阅读全文