`
文章列表

实现动态代理

AOP的实现有两种,一种是接口的实现,一种是产生自己实现,分别的代表为JDK的Proxy和CGLIB的Proxy 下面是模拟接口代理实现 ,通过模拟JDK的动态代理,更深刻的理解 通过动态代理可以面向切面编程 1 定义被代理的对象和接口 public interface BookInterface { void selling(); }   public interface PhoneInterface { void selling(); }   public class Book implements BookInterface { @Override ...

实现LindedList

public class MyLinkedList { public LinkedNode first; public LinkedNode last; public int size; public void add(Object obj) { LinkedNode n = new LinkedNode(); if (first == null) { n.setPrevious(null); n.setObj(obj); n.setNext(null); first = n; last = n; } else ...

实现ArrayList

public class MyList { private transient Object[] elementData; private int size; public MyList(int initialCapacity) { elementData = new Object[initialCapacity]; } public MyList() { this(10); } public void add(Object obj) { if (size == elementData.length) { Object[] newE ...

mybatis-1

mybatis 支持注解支持sql.方便与spring集成。 1 映射 1.1文件的映射    注意xml文件一定要规范,xml文件如果在最前面的<?xml 加个空格,就是报错,这种错误极其难找,所以碰到这种操蛋问题可费神,规范极其重要   <mapper resource="com/xx/xxx/xxx/XXXMapper.xml"/> 1.2表,字段的映射     <resultMap type="com.xxx.xxx.mapper.MyEntity" id="MyEntityResult&q ...

Mysql B+tree

mysql为什么使用B+tree B+tree是B-tree的一个变种,在innodb中用的就是B+tree,主要是用在索引,比如innodb的聚集索引。 B+树非叶子结点只存储键值,大大滴减少了非叶子节点的大小,索引块能够存储更多的节点(每个节点就可以存放更多的记录),从磁盘读索引时所需的索引块更少,树更矮了,所以索引查找时I/O次数较B-Tree索引少,效率更高。 B+Tree在叶子节点存放的记录以链表的形式链接,范围查找或遍历效率更高, b+树在同级节点间还存在一条连接,B+Tree的每个叶子节点增加一个指向相邻叶子节点的指针,就形成了带有顺序访问指针的B+Tree。做这个优化 ...

又见好文

http://www.hollischuang.com/archives/489 http://www.mianwww.com/
CountDownLatch 的countDown()是如何退出所在线程的? http://www.blogjava.net/BucketLi/archive/2010/09/30/333471.html
条件debug   比如这个例子 debug进去i 直接等于501
首先介绍一个网站  http://mvnrepository.com/  如果maven下载失败了,就去这里找里面可以找到相关的信息  
  注:所有java框架配置都是基于maven创建的   先介绍下maven如何创建eclipse项目,eclipse安装maven插件看 链接    1  eclipse 中new-maven project   点击 create simple project ,填写属性 直接点finish,然后webapp里面添加WEB-INF文件夹和文件夹下的web.xml  web.xml内容暂时可以写为: <?xml version="1.0" encoding="UTF-8"?> <web-app version=&quo ...
chrome给提供了手机调试模式,只需要点击一下手机图标即可
 如果发现eclipse里面有dropins 目录 那么这种方式就可以用,插件的安装极其简单,下面就常规的方式 例如SVN安装 将SVN解压到eclipse\dropins下创建svn文件夹(名字自己随便取即可) 然后将下载的SVN插件解压新建的svn文件夹即可。 Eclipse启动可能会有一个提示框去掉它,window-perferences-General-Startuip and ShutDown 把Subclipse Usage Reporting勾去掉即可。   maven安装i,gef插件也需要安装,这2个插件网上下载,同理,创建maven和gef文件夹,插件各自解压即可。 ...
1 解压mysql压缩包,配置环境变量 新增环境变量MySQL,值为mysql的目录,最后面path后面添,加%MySQL%\bin;         ----------------后面以 %MySQL% 代替MySQL的路径 2 %MySQL%\my-default.ini文件,修改这个文件,添加    basedir=%MySQL% datadir=%MySQL%\data default-character-set=utf-8 character_set_server=utf-8     后面2个是设置字符编码的 3 以管理身份cmd进入到mysql的bin目录 执行 ...
Global site tag (gtag.js) - Google Analytics