`
matchless1688
  • 浏览: 25282 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论
文章列表
spring给开发人员带来的好处: • Make a Java method execute in a database transaction without having to deal with transaction APIs. • Make a local Java method a remote procedure without having to deal with remote APIs. • Make a local Java method a management operation without having to deal with JMX APIs. • Make ...
Spring 从核心而言,是一个DI 容器,其设计哲学是提供一种无侵入式的高扩展性框架。即无需代 码中涉及Spring专有类,即可将其纳入Spring容器进行管理。 作为对比,EJB则是一种高度侵入性的框架规范,它制定了众多的接口和编码 ...
GoF的著作《设计模式——可复用面向对象软件的基础》 有机会一定看看
Java并发编程实践 电子工业出版社 读书笔记: 1、volatile变量理解    写入volatile变量时就像退出同步块,读取volatile变量时就像进入同步块。volatile变量使用也存在好多限制,它通常被当作完成、中断、状态的标记使用。volatile变量只保证可见性,但不保证原子性。所以自增操作就不能依赖volatile,除非只有一个线程对它进行写操作。    不能用于构建原子化的复合操作,这意味着当一个变量依赖其他变量时,或者当变量的新值依赖于旧值时,是不能用volatile变量的。 2、可重进入的理解(Reentrancy)    当一个线程请求其他线程已经占有的锁时,请 ...
附件中为代码之美中文版和javascript参考手册
1、js是一门动态的,弱类型,基于原型的脚本语言,在js中“一切皆对象” 动态性是指,在一个Javascript对象中,要为一个属性赋值,我们不必事先创建一个字段,只需要在使用的时候做赋值操作 弱类型是指它的数据类型无需在声明时指定,解释器会根据上下文对变量进行实例化 2、对于js而言,分为基本类型和引用类型,引用类型中包括对象,数组以及函数。 通过typeof 来判断引用类型时,对象和数组返回的都是object。在这种情况下需要用instanceof来进一步判断 var obj = {}; var array = ["one", "two", ...
1、通配符提供了使用的灵活性,但对修改却做出了限制 像平常一样,要得到使用通配符的灵活性有些代价。这个代价是,现在像shapes中写入是非法的。比如下面的代码是不允许的:          public void addRectangle(List<? extends ...
先看看Collection库中的几个方法。 public interface Collection<E> {     boolean containsAll(Collection<?> c);     boolean addAll(Collection<? extends E> c); } 我们也可以使用泛型方法来代替: public interface Collection<E> {         <T> boolean containsAll(Collection<T> c);         < ...
1、在泛型代码内部,无法获取任何有关泛型参数类型的信息,Java泛型是使用擦除来实现的,这意味着当你在使用泛型时,任何具体的类型信息都被擦除了。   所以需要为泛型指定边界(extends)=》泛型类型参数将擦除到它的第 ...
1、闭包:是一个可调用的对象,它记录了一些信息,这些信息来自于创建它的作用域。 个人理解:闭包思想主要是函数可以作为一级参数,是一种函数是对象的思想。函数可以作为参数或者返回值使用。 function a(){ var i=0; function b(){ var j=i; //只要是引用了 i 的。 alert(j); } return b; } var c=a(); c(); 2、动态代理:为了提供额外的或不同的操作,而插入的用来代替实际对象的对象(中间人的 ...

java容器

1、Collection与Collections的区别:例如Collection.addAll()与Collection.addAll()的区别 2、Arrays.asList()返回一个受指定数组支持的固定大小的列表,其底层是数组,所以不能调整尺寸(不支持add、delete操作) 3、基本的容器类:List Set Queue Map,其中List、Set、Queue继承于Collection接口 4、IdentityHashMap比较时使用==替换equals()方法 5、如果将自定的类型对象放入HashSet、HashMap、Hashtable、LinkedHashSet、LinkedH ...

java协变

在java中支持协变的有两种情况: 1、数组 A是B的超类,则A【】也是B【】的超类,所有用到A【】的地方都可以用B【】替换 2、允许 子类的覆盖父类函数的返回值类型 是父类被覆盖返回值类型 的子类 在Java1.4及以前,子类方法如果要覆盖超类的某个方法,必须具有完全相同的方法签名,包括返回值也必须完全一样。 Java5.0放宽了这一限制,只要子类方法与超类方法具有相同的方法签名,或者子类方法的返回值是超类方法的子类型,就可以覆盖。 注意:"协变返回(covariant return)",仅在subclass(子类)的返回类型是superclass(父类)返回类型的e ...
http://docs.huihoo.com/hibernate/reference-v3_zh-cn/preface.html 1.对于以数据为中心的程序来说,它们往往只在数据库中使用存储过程来实现商业逻辑,Hibernate可能不是最好的解决方案;对于那些在基于Java的中间层应用中,它们实现面向对象的业务模型和商业逻辑的应用,Hibernate是最有用的。 2、所有的双向关联需要有一端被设置为 inverse。在一对多关联中它必须是代表多(many)的那端。而在多对多(many-to-many)关联中,你可以任意选取一端,因为两端之间并没有差别。必须一方为主控方,inverse那一方为被动 ...
Hibernate一对多映射:一对多单向映射的情况下,会很容易出现约束违例的情况。出现的原因是                   Hibernate在处理保存主表的情况下,会产生两条insert操作,一条对应主表,一条对应子表。但第一条insert的时候,因为Hibernate并不知道主表对应Id,所以会给主表一个nullId,从而导致约束违例。所以一般都采用双向映射,控制权交给子表。 Hibernate多对多映射:多对多映射在保存的时候要双方都要保存。
2011.02.21开博,希望以后多看技术文章,提高自身,加油!
Global site tag (gtag.js) - Google Analytics