属于楼主平时总结出来的和大家分享下,希望在java面试中有所帮助【java自学网】java论坛+ k' A" b% _1 u5 D8 D4 P9 q
1、spring中的aop( Aspect Oriented Programming 面向切面的编程)的原理就是java动态代理机制2、Java不能同时对一个代码块加两个锁,这和数据库锁机制不同,数据库可以对一条记录同时加好几种不同的锁/ M2 X" {! \& g: b S
3、Lock提供了比synchronized更多的功能。但是要注意以下几点:5 f" p( Z* q0 _3 c9 e
1)Lock不是Java语言内置的,synchronized是Java语言的关键字,因此是内置特性。Lock是一个类,通过这个类可以实现同步访问; 2)Lock和synchronized有一点非常大的不同,采用synchronized不需要用户去手动释放锁,当synchronized方法或者synchronized代码块执行完之后,系统会自动让线程释放对锁的占用;而Lock则必须要用户去手动释放锁,如果没有主动释放锁,就有可能导致出现死锁现象。. _9 v* R5 g- \, z# O) ?& a' @" K
4、spring的依赖注入是通过反射实现的. H0 B& g, x& l. ?
5、在Spring配置和Quartz集成内容时,有两点需要注意
7 K6 N# b6 ~5 V& {4 W 1、在<Beans>中不能够设置default-lazy-init="true",否则定时任务不触发,如果不明确指明default-lazy-init的值,默认是false。 2、在<Beans>中不能够设置default-autowire="byName"的属性,否则后台会报org.springframework.beans.factory.BeanCreationException错误,这样就不能通过Bean名称自动注入,必须通过明确引用注入 $ J6 C7 d/ o4 e% T9 Q
2 i$ I: h: B9 D3 X" P- Q2 p2 P3 L' D9 y0 u/ `) ^3 d' _
- Q" {* F! d8 [( o3 F( c) |
. E7 @, ]$ ?4 T0 U; S: p; w
|