札记

Spring中的bean

一、什么是Bean   Bean就是一个java类,这个java类交给容器来管理,从而减少类与类之间的耦合。那么什么样的类才能声明为Bean类呢?只有你认为这个类可能会在不同的地方用到(可重用),并且需要交给容器管理,那么就可以将其声明为Bean了。但是要注意Bean类也需要遵守一定的规范。 Java Bean类必须是一个公共类,并将其访问属性设置为public。 Java Be...

Spring依赖注入和面向切面

一、依赖注入   所谓依赖注入是指容器负责创建对象和维护对象间的依赖关系,而不是通过对象本身负责自己创建和解决自己的依赖。依赖注入的主要目的是解耦,体现了一种“组合”的思想。   Spring IoC(Application Context)负责创建Bean,并通过容器将功能类Bean注入到你需要的Bean中。Spring提供xml、注解、java配置、groovv配置实现Bean的创建和...

Java反射学习

  java反射机制听起来似乎很神奇,在自己编程的时候却很少用到,但是在框架中却频繁的使用。以前自己看过一些java反射的内容,但是也没有搞得十分透彻,今天再重新学习一遍,争取把这个问题彻底搞清楚。 一、反射——并不神奇   运行时类型信息(RTTI)可以告诉我们运行时某个对象的类型,只要这个类在编译时已经加载。那么如果在编译阶段我们无法获取某个类的信息,却需要使用类对象怎么办呢?这看起来...

排序算法整理

  一直都想写写排序,今天终于有时间了。记得刚刚开始接触算法的时候,遇到的第一问题往往就是排序问题。因为排序很自然,我们每天都要接触,而排序算法十分丰富,可以让初学者大开眼界的同时对算法复杂度和分治思想有一定的认识。今天我也回顾下自己了解的排序算法,算是做个记录吧。   排序问题如何去分呢?首先应该分为基于比较的排序和非基于比较的排序。基于比较的排序有理论的最优时间复杂度O(N*logN)...

数据库优化

参考美团内部分享,原ppt作者:房晓乐 一、优化相关概念   优化,首先要明确我们需要优化什么,数据库优化其实主要就是优化性能、响应时间和吞吐量。 性能:衡量完成特定任务的速度或者效率。 相应时间:衡量系统与用户交互时多久能够收到响应。 吞吐量:衡量系统在单位时间里可以完成的任务量。   一些内部数据制作的图表不方便贴出来,直接总结下规律吧。对于每个系统,都会有自己的瓶...

缓存机制

  缓存原意是指高速数据交换存储器。现在这一概念已经被扩充,不仅在CPU与主内存之间存在缓存, 而且在内存和硬盘之间也有缓存。缓存有三个要素:命中率、缓存更新策略、缓存最大数据量。 一、缓存三要素 1、命中率   通常通过命中率衡量缓存机制的好坏和效率。 命中率请求缓存的次数和缓存返回正确结果的次数的比例,比例越高,证明缓存的使用率越高。 2、缓存更新策略   MySql内置了查询缓...

Memcached学习

  Memcached是高性能的分布式内存缓存服务器,通过缓存数据库查询结果,减少数据库访问次数,以及提高动态Web应用的速度和可扩展性。Memcached有如下特点: 协议简单 基于libevent的事件处理机制 内置内存存储方式 采用不互相通信的分布式   Memcached以守护程序的方式运行于一个或多个服务器中,随时接受客户端的连接操作,客户端可以由多种语言编...

闭锁、栅栏、futuretask和信号量

  同步工具类可以是任何一个对象,只要它根据自身的状态来协调线程的控制流。阻塞队列可以作为同步类工具,其他类型的同步工具类还包括信号量、闭锁、栅栏和FutureTask。所有的同步工具类都包含一些特定的结构化属性:他们封装了一些状态,这些状态将决定执行同步工具类的线程是继续执行还是等待,此外还提供了一些方法对状态进行操作,以及另一些方法用于高效地等待同步工具类进入语气的状态。 一、闭锁  ...

Trending Tags