06 2018 档案
【java设计模式】(3)---代理模式(案例解析)
摘要:设计模式之代理模式 一、概述 1、什么是代理模式? 解释第一遍:代理模式主要由三个元素共同构成: 1)一个接口,接口中的方法是要真正去实现的。 2)被代理类,实现上述接口,这是真正去执行接口中方法的类。 3)代理类,同样实现上述接口,同时封装被代理类对象,帮助被代理类去实现方法。 解释第二遍: 使用 阅读全文
posted @ 2018-06-28 23:59 雨点的名字 阅读(6528) 评论(1) 推荐(9) 编辑
java设计模式(2)---六大原则
摘要:设计模式之六大原则 这篇博客非常有意义,希望自己能够理解的基础上,在实际开发中融入这些思想,运用里面的精髓。 先列出六大原则:单一职责原则、里氏替换原则、接口隔离原则、依赖倒置原则、迪米特原则、开闭原则。 一、单一职责原则 1、单一职责定义 单一职责原则:一个类只负责一个功能领域中的相应职责,或者可 阅读全文
posted @ 2018-06-28 00:34 雨点的名字 阅读(1875) 评论(1) 推荐(9) 编辑
java设计模式(1)---总则
摘要:设计模式总则 一、概述 1、什么是设计模式 设计模式是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。 解释下: 分类编目:就是说可以找到一些特征去划分这些设计模式,从而进行分类。 代码设计经验:这句很重要,设计经验的总结,也就是说设计模式,是为了指导设计而从经验中总结出来的套路。 阅读全文
posted @ 2018-06-27 20:58 雨点的名字 阅读(1249) 评论(0) 推荐(0) 编辑
【java提高】---java反射机制
摘要:java反射机制 一、概述 1、什么是反射机制 反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法和属性;这种动态获取的信息以及动态调用对象的方法的功能称为java语言的反射机制。 2、反射机制能做什么 反射机制主要提供了以下功能: 阅读全文
posted @ 2018-06-26 19:19 雨点的名字 阅读(3107) 评论(6) 推荐(11) 编辑
【JMeter】(3)---MySQL压测
摘要:JMeter MySQL压测 一、添加MySQL驱动jar包 在测试计划(Test Plan)页面添加jar包 二、添加MySQL连接配置 添加线程组右击-->添加(add)-->配置元件(config element)-->JDBC connection configuration 核心配置 va 阅读全文
posted @ 2018-06-25 22:10 雨点的名字 阅读(1305) 评论(0) 推荐(3) 编辑
【JMeter】(2)---HTTP压测
摘要:JMeter HTTP压测 一、创建线程组 右击-->添加-->Threads(Users)-->线程组 下面对比较重要的几个参数,讲解下: 名称: 就是给你这个线程组起名字。 线程数:指压力测试时候模拟几个用户测试接口。 Ramp-Up:这里指几秒运行完上面的模拟用户数。 循环次数:指循环几次线程 阅读全文
posted @ 2018-06-25 01:18 雨点的名字 阅读(2434) 评论(1) 推荐(3) 编辑
【JMeter】(1)---入门
摘要:JMeter入门 一、概述 JMeter是Apache下一款在国外非常流行和受欢迎的开源性能测试工具,JMeter可用于模拟大量负载来测试一台服务器,网络或者对象的健壮性或者分析不同负载下的整体性能。 1、压测不同的协议和应用 1) Web - HTTP, HTTPS (Java, NodeJS, 阅读全文
posted @ 2018-06-24 22:36 雨点的名字 阅读(1029) 评论(0) 推荐(0) 编辑
【JVM虚拟机】(4)---性能调优
摘要:JVM性能调优 一、调优策略 对于GC的性能主要有2个方面的指标:吞吐量throughput(工作时间不算gc的时间占总的时间比)和暂停pause(gc发生时app对外显示的无法响应)。 1、调优的目的 调优的最终目的当然增大吞吐量,减少暂停时间咯,映射到GC层面主要关心下面这两点: (1)将转移到 阅读全文
posted @ 2018-06-24 11:50 雨点的名字 阅读(1531) 评论(3) 推荐(3) 编辑
【JVM虚拟机】(3)---垃圾回收器
摘要:垃圾回收器 收集算法是内存回收的方法论,垃圾收集器就是内存回收的具体实现。收集器主要分三类:串行收集器、并行收集器以及并发收集器。 一、基础概念 1、并发和并行 a:并行(Parallel):指多条垃圾收集线程并行工作,但此时用户线程仍然处于等待状态。 b:并发(Concurrent):指用户线程与 阅读全文
posted @ 2018-06-21 22:45 雨点的名字 阅读(1364) 评论(2) 推荐(0) 编辑
【JVM虚拟机】(2)---GC 算法与种类
摘要:GC 算法与种类 对于垃圾收集(GC), 我们需要考虑三件事情:哪些内存需要回收?如何判断是垃圾对象?垃圾回收算法有哪些? 一、GC的工作区域 1、不是GC的工作区域 (1)程序计数器、虚拟机栈和本地方法栈三个区域是线程私有的,随线程生而生,随线程灭而灭; (2)栈中的栈帧随着方法的进入和退出而进行 阅读全文
posted @ 2018-06-21 21:50 雨点的名字 阅读(3243) 评论(0) 推荐(4) 编辑
JVM虚拟机(1)---常用JVM配置参数
摘要:常用JVM配置参数 常用JVM配置参数主要有:Trace跟踪参数、堆的分配参数、栈的分配参数。 一、Trace跟踪参数 跟踪参数用于跟踪监控JVM,对于开发人员来讲用于JVM调优以及故障排查的。 1、打印GC的简要信息 -verbose:gc -XX:+PrintGC 这两个配置参数效果是一样的,都 阅读全文
posted @ 2018-06-20 22:53 雨点的名字 阅读(2656) 评论(0) 推荐(5) 编辑
java多线程(8)---阻塞队列
摘要:阻塞队列 再写阻塞列队之前,我写了一篇有关queue集合相关博客,也主要是为这篇做铺垫的。 网址:【java提高】 queue集合 在这篇博客中我们接触的队列都是非阻塞队列,比如PriorityQueue、LinkedList(LinkedList是双向链表,它实现了Dequeue接口)。 使用非阻 阅读全文
posted @ 2018-06-20 21:46 雨点的名字 阅读(1111) 评论(0) 推荐(1) 编辑
java多线程(7)---Condition
摘要:Condition 一、Condition概述 在线程的同步时可以使一个线程阻塞而等待一个信号,同时放弃锁使其他线程可以能竞争到锁。 在synchronized中我们可以使用Object的wait()和notify方法实现这种等待和唤醒。 在Lock可以实现相同的功能就是通过Condition。Co 阅读全文
posted @ 2018-06-20 21:05 雨点的名字 阅读(1000) 评论(0) 推荐(2) 编辑
【java提高】---queue集合
摘要:queue集合 什么是Queue集合? 答:Queue用于模拟队列这种数据结构。队列通常是指“先进先出(FIFO)”的容器。队列的头部保存在队列中存放时间最长的元素,尾部保存存放时间最短的元素。 新元素插入到队列的尾部,取出元素会返回队列头部的元素。通常,队列不允许随机访问队列中的元素。 一、认识q 阅读全文
posted @ 2018-06-19 21:30 雨点的名字 阅读(1082) 评论(0) 推荐(0) 编辑
java多线程(6)---ThreadLocal
摘要:ThreadLocal 什么是ThreadLocal? 顾名思义它是local variable(线程局部变量)。它的功用非常简单,就是为每一个使用该变量的线程都提供一个变量值的副本,是每一个线程都可以独立地改变自己的副本,而不会和其它线程的副本冲突。 从线程的角度看,就好像每一个线程都完全拥有该变 阅读全文
posted @ 2018-06-19 20:54 雨点的名字 阅读(1464) 评论(0) 推荐(2) 编辑
java多线程(5)---ThreadPoolExecutor
摘要:ThreadPoolExecutor 官方API解释线程池的好处: (1)通过重用线程池中的线程,来减少每个线程创建和销毁的性能开销。 (2)对线程进行一些维护和管理,比如定时开始,周期执行,并发数控制等等。 一、Executor Executor是一个接口,跟线程池有关的基本都要跟他打交道。下面是 阅读全文
posted @ 2018-06-14 22:01 雨点的名字 阅读(1265) 评论(1) 推荐(0) 编辑
java多线程(4)---volatile关键字
摘要:volatile关键字 一旦一个共享变量(类的成员变量、类的静态成员变量)被volatile修饰之后,那么就具备了两层语义: 1)保证了不同线程对这个变量进行操作时的可见性,即一个线程修改了某个变量的值,这新值对其他线程来说是立即可见的。 2)禁止进行指令重排序。 想要深刻的理解这两句话,首先得了解 阅读全文
posted @ 2018-06-13 20:48 雨点的名字 阅读(1121) 评论(1) 推荐(1) 编辑
java多线程(3)---synchronized、Lock
摘要:synchronized、Lock 一、概述 1、出现线程不安全的原因是什么? 如果我们创建的多个线程,存在着共享数据,那么就有可能出现线程的安全问题:当其中一个线程操作共享数据时,还未操作完成,另外的线程就参与进来,导致对共享数据的操作出现问题。 2、线程不安全解决办法 要求一个线程操作共享数据时 阅读全文
posted @ 2018-06-12 21:34 雨点的名字 阅读(1527) 评论(1) 推荐(0) 编辑
java多线程(2)---生命周期、线程通讯
摘要:java生命周期、线程通讯 一、生命周期 有关线程生命周期就要看下面这张图,围绕这张图讲解它的方法的含义,和不同方法间的区别。 1、yield()方法 yield()让当前正在运行的线程回到就绪,以允许具有相同优先级的其他线程获得运行的机会。但是,实际中无法保证yield()达到让步的目的,因为,让 阅读全文
posted @ 2018-06-11 22:08 雨点的名字 阅读(1593) 评论(3) 推荐(3) 编辑
java多线程(1)---线程创建、start、run
摘要:线程创建、start、run 一、创建线程方式 java创建线程的方式,主要有三种:类Thread、接口Runnable、接口Callable。 1、Thread和Runnable进行比较 他们之间的区别 1、实现Runnable的类更具有健壮性,避免了单继承的局限。 2、Runnable更容易实现 阅读全文
posted @ 2018-06-11 21:13 雨点的名字 阅读(2034) 评论(0) 推荐(3) 编辑
【shiro】(5)---基于Shiro的权限管理
摘要:基于Shiro的权限管理项目搭建 前面写了四篇有关权限的文章,算是这篇文章的铺垫了。这篇文章采用 开发环境 JDK1.8 Eclipse Maven 技术架构:SpringMVC+Mybatis+jQuery easyUI+Shiro 一、初步框架搭建 1、配置web.xml <!-- shiro的 阅读全文
posted @ 2018-06-09 12:16 雨点的名字 阅读(1089) 评论(0) 推荐(1) 编辑
【shiro】(4)---Shiro认证、授权案例讲解
摘要:Shiro认证、授权案例讲解 一、认证 1、 认证流程 2、用户密码已经加密、加盐的用户认证 (1)测试类 (2)shiro-realm-md5.ini (有关散列加密下面会举例子) 我在ini配置了加密的规则,这个规则要和用户注册保存的密码加密规则一致。 (3)自定义CustomRealmMd5类 阅读全文
posted @ 2018-06-07 21:33 雨点的名字 阅读(1197) 评论(2) 推荐(1) 编辑
【shiro】(3)---了解Shiro
摘要:了解Shiro 一Apache Shiro作用 Apache Shiro是一个功能强大且易于使用的Java安全框架,可执行身份验证,授权,加密和会话管理,令行应用程序。 Shiro提供了应用程序安全API来执行以下几个方面(我喜欢称这些为应用程序安全的四个基石): (1)身份验证 - 验证用户身份, 阅读全文
posted @ 2018-06-07 21:15 雨点的名字 阅读(785) 评论(2) 推荐(2) 编辑
【shiro】(2)---基于RUL的权限管理
摘要:基于RUL的权限管理 我想在写shiro权限管理认证前,先来一个基于URL实现的权限管理控制。 一、基于URI的权限业务逻辑 实现思路: 将系统操作的每个url配置在权限表中,将权限对应到角色,将角色分配给用户,用户访问系统功能通过Filter进行过虑,过虑器获取到用户访问的url,只要访问的url 阅读全文
posted @ 2018-06-06 21:27 雨点的名字 阅读(988) 评论(2) 推荐(4) 编辑
【shiro】(1)---了解权限管理
摘要:了解权限管理 一、概念 1、什么是权限管理 只要有用户参与的系统一般都要有权限管理,权限管理实现对用户访问系统的控制,按照安全规则或者安全策略控制用户可以访问而且只能访问自己被授权的资源。 权限管理包括用户认证和授权两部分。 (1)用户认证 用户认证,用户去访问系统,系统要验证用户身份的合法性。最常 阅读全文
posted @ 2018-06-05 22:28 雨点的名字 阅读(1863) 评论(3) 推荐(9) 编辑
Redis(4)---主从复制
摘要:Redis主从复制 一、环境搭建 既然是主从复制,那肯定需要多个redis服务器,下面我先创建3个服务器,™的端口号分别是:6379、6380、6381。 1、复制默认配置文件redis.conf,放到rediszhucong文件夹中,并重命名。 根据每个端口号不同,重新配置conf文件 (1)端口 阅读全文
posted @ 2018-06-04 22:48 雨点的名字 阅读(863) 评论(0) 推荐(0) 编辑
Redis(3)---Redis事务
摘要:Redis事务 Redis 通过 MULTI 、EXEC、 DISCARD 和 WATCH 四个命令来实现事务功能。 MULTI :标记一个事务块的开始。 EXEC: 执行所有事务块内的命令。 DISCARD :取消事务,放弃执行事务块内的所有命令。 WATCH key [key ...] :监视一 阅读全文
posted @ 2018-06-04 21:26 雨点的名字 阅读(671) 评论(0) 推荐(1) 编辑
Redis(2)---数据持久化
摘要:数据持久化 Redis有两种持久化的方式:快照(RDB文件)和追加式文件(AOF文件) (1)RDB持久化方式是在一个特定的间隔保存某个时间点的一个数据快照。(默认模式) (2)以日志的形式来记录每个写操作,将Redis执行过的所有写指令记录下来(读操作不记录),只许追加文件但不可以改写文件,red 阅读全文
posted @ 2018-06-03 23:40 雨点的名字 阅读(976) 评论(0) 推荐(1) 编辑
Redis(1)---五种数据结构
摘要:五种数据结构 一、全局key操作 二、2.String(字符串) string是redis最基本的类型,一个key对应一个value。string类型是二进制安全的。意思是redis的string可以包含任何数据。比如jpg图片或者序列化的对象 string类型是Redis最基本的数据类型,一个键最 阅读全文
posted @ 2018-06-02 18:25 雨点的名字 阅读(9006) 评论(0) 推荐(5) 编辑
MySQL(5)---锁
摘要:锁 一概述 数据库锁定机制简单来说,就是数据库为了保证数据的一致性,而使各种共享资源在被并发访问变得有序所设计的一种规则。对于任何一种数据库来说都需要有相应的锁定机制。 MySQL各存储引擎使用了三种类型(级别)的锁定机制:表级锁定,行级锁定和页级锁定。 MySQL大致可归纳为以下3种锁: 表级锁: 阅读全文
posted @ 2018-06-01 22:01 雨点的名字 阅读(807) 评论(0) 推荐(0) 编辑


点击右上角即可分享
微信分享提示