javaweb
dixialaoshu4
这个作者很懒,什么都没留下…
展开
-
HashMap内部实现原理
哈希表(hash table)也叫散列表,是一种非常重要的数据结构,应用场景及其丰富,许多缓存技术(比如memcached)的核心其实就是在内存中维护一张大的哈希表,而HashMap的实现原理也常常出现在各类的面试题中,重要性可见一斑。本文会对java集合框架中的对应实现HashMap的实现原理进行讲解,然后会对JDK7的HashMap源码进行分析。目录 一、什么是哈希表 二、Ha...转载 2018-11-22 00:58:08 · 1079 阅读 · 0 评论 -
spring代理
未完待续。。。。转载张果博客 地址:https://www.cnblogs.com/best/p/5679656.html#_label0一、为什么需要代理模式假设需实现一个计算的类Math、完成加、减、乘、除功能,将代码写在一个java文件中方式但是如果,需求发生了变化,要求项目中所有的类在执行方法时输出执行耗时。最直接的办法是修改源代码,缺点:1、工作量特别大,如果项目...转载 2018-12-04 11:56:56 · 148 阅读 · 0 评论 -
DI/IOC和AOP原理初识
1.前言作为从事java开发的码农,Spring的重要性不言而喻,你可能每天都在和Spring框架打交道。Spring恰如其名的,给java应用程序的开发带了春天般的舒爽感觉。Spring,可以说是任何一个java开发者通往技术高阶的必备基础。当然,要学好Spring,尤其是了解Spring的底层原理并不容易,需要花费很多时间和精力来潜心的研习,并在实际的项目中不断的试错和总结,才能形成属于自...转载 2018-12-04 11:34:30 · 677 阅读 · 0 评论 -
Spring容器和应用上下文理解
有了Spring之后,通过依赖注入的方式,我们的业务代码不用自己管理关联对象的生命周期。业务代码只需要按照业务本身的流程,走啊走啊,走到哪里,需要另外的对象来协助了,就给Spring说,我想要个对象——于是Spring就很贴心的给你个对象。听起来似乎很简单,使用起来也不难,但是如果仅仅是这样的拿来主义,倒也洒脱,不用费什么脑子。。。可是,你就真的不关心,Spring是从哪里把对象给...转载 2018-12-04 11:11:10 · 165 阅读 · 0 评论 -
过滤器Filter理解
1. 背景在设计web应用的时候,用户登录/注册是必不可少的功能,对用户登录信息进行验证的方法也是多种多样,大致可以认为如下模式:前端验证+后台验证。根据笔者的经验,一般会在前端进行一些例如是否输入数据、输入的数据的格式是否正确等一系列的验证,在后台会查询数据库进行验证。一般在后台进行验证的时候,都会选择使用Servlet的Filter作为拦截器,本文主要介绍Servlet的Filter,然...转载 2018-11-23 00:17:00 · 717 阅读 · 0 评论 -
常用的设计模式
单例模式简单点说,就是一个应用程序中,某个类的实例对象只有一个,你没有办法去new,因为构造器是被private修饰的,一般通过getInstance()的方法来获取它们的实例。getInstance()的返回值是一个对象的引用,并不是一个新的实例,所以不要错误的理解成多个对象。单例模式实现起来也很容易,直接看demo吧public class Singleton { privat...转载 2018-11-23 00:06:31 · 133 阅读 · 0 评论 -
单例模式写法
单例模式是最常用到的设计模式之一,熟悉设计模式的朋友对单例模式都不会陌生。一般介绍单例模式的书籍都会提到 饿汉式 和 懒汉式 这两种实现方式。但是除了这两种方式,本文还会介绍其他几种实现单例的方式,让我们来一起看看吧。简介单例模式是一种常用的软件设计模式,其定义是单例对象的类只能允许一个实例存在。许多时候整个系统只需要拥有一个的全局对象,这样有利于我们协调系统整体的行为。比如在某个服务...转载 2018-11-23 00:00:17 · 165 阅读 · 0 评论 -
设计模式之六大原则
设计模式之六大原则(转载) 关于设计模式的六大设计原则的资料网上很多,但是很多地方解释地都太过于笼统化,我也找了很多资料来看,发现CSDN上有几篇关于设计模式的六大原则讲述的比较通俗易懂,因此转载过来。 原作者博客链接:http://blog.csdn.net/LoveLion/article/category/738450/7一.单一职责原则 原文链接:http://blo...转载 2018-11-22 23:51:20 · 189 阅读 · 0 评论 -
wait和sleep的区别
sleep 是线程类(Thread)的静态类方法,导致此线程暂停执行指定时间,给执行机会给其他线程,但是监控状态依然保持,到时后会自动恢复。调用sleep 不会释放对象锁。sleep 谁调用的谁去睡觉,即使在a线程里调用了b的sleep方法,实际上还是a去睡觉,要让b线程睡觉要在b的代码中调用sleep。最主要是sleep方法没有释放锁wait 是Object 类的方法,对此对象调用wait ...转载 2018-11-22 23:27:18 · 181 阅读 · 0 评论 -
Java并发— 线程安全
1、什么是线程安全性 当多个线程访问某个类时,不管运行时环境采用何种调度方式或者这些进程将如何交替执行,并且在主调代码中不需要任何额外的同步或协同,这个类都能表现出正确的行为,那么就称这个类是线程安全的。 在线程安全类中封装了必要的同步机制,因此客户端无需进一步采取同步错失。2、原子性要编写线程安全的代码,其核心在于要对状态访问操作进行管理,特别是对共享的和可变的状态的...转载 2018-11-22 22:24:26 · 281 阅读 · 0 评论 -
创建线程的3种方式
一、继承Thread类创建线程类(1)定义Thread类的子类,并重写该类的run方法,该run方法的方法体就代表了线程要完成的任务。 因此把run()方法称为执行体。(2)创建Thread子类的实例,即创建了线程对象。(3)调用线程对象的start()方法来启动该线程。public class MyThread extends Thread{ @Override...转载 2018-11-22 00:57:33 · 188 阅读 · 0 评论 -
HashMap、LinkedHashMap、ConcurrentHashMap、ArrayList、LinkedList 底层实现
HashMap相关问题1、你用过HashMap吗?什么是HashMap?你为什么用到它? 用过,HashMap是基于哈希表的Map接口的非同步实现,它允许null键和null值, 且HashMap依托于它的数据结构的设计,存储效率特别高,这是我用它的原因2、你知道HashMap的工作原理吗?你知道HashMap的get()方法的工作原理吗? 上面两个问题属于同一答案...转载 2018-11-22 00:57:59 · 1288 阅读 · 0 评论 -
OAuth2.0原理和理解
1. oauth简述oauth本身不是技术,而是一项资源授权协议,重点是协议!Apache基金会提供了针对Java的oauth封装。我们做Java web项目想要实现oauth协议进行资源授权访问,直接使用该封装就可以。2. 概述2.1 官方文档简介1.需要第三方应用存储资源所有者的凭据,以供将来使用,通常是明文密码。2.需要服务器支持密码身份认证,尽管密码认证天生就有安全缺陷...转载 2018-11-30 14:08:21 · 689 阅读 · 0 评论