- 浏览: 78274 次
最新评论
-
letmedown:
使用AOP是不是比这个更简单一些呢?
Java项目如何记录日志
文章列表
输出的结果是?
publicclass A {
static{
System.out.println("A");
}
原文出处:http://www.kaiyuanba.cn/html/1/131/138/7677.htm
1.synchronized与static synchronized 的区别
synchronized是对类的当前实例进行加锁,防止其他线程同时访问该类的该实例的所有synchronized块,注意这里是“类的当前实例”, 类的两个不同实例就没有这种约束了。那么static synchronized恰好就是要控制类的所有实例的访问了,static synchronized是限制线程同时访问jvm中该类的所有实例同时访问对应的代码快。实际上,在类中某方法或某代码块中 ...
原文出处:http://www.iteye.com/topic/136427
jvm classLoader architecture :
a, Bootstrap ClassLoader/启动类加载器主要负责jdk_home/lib目录下的核心 api 或 -Xbootclasspath 选项指定的jar包装入工作.
b, Extension ClassLoader/扩展类加载器主要负责jdk_home/lib/ext目录下的jar包或 -Djava.ext.dirs 指定目录下的jar包装入工作
c, System ClassLoader/系统类加载器主要负责java ...
.InputStream、OutputStream
处理字节流的抽象类
InputStream 是字节输入流的所有类的超类,一般我们使用它的子类,如FileInputStream等.
OutputStream是字节输出流的所有类的超类,一般我们使用它的子类,如FileOutputStream等.
2.InputStreamReader OutputStreamWriter
处理字符流的抽象类
InputStreamReader 是字节流通向字符流的桥梁,它将字节流转换为字符流.
OutputStreamWriter是字符流通向字节流的桥梁,它将字符流转换为字节流.
...
当集合中存储的都是对象时,我们要对其进行排序,就要借助于Comparator或Comparable,以简单的方式实现对象排序或自定义排序。例子:一个对象类:
public class UserPo{
// 名字
private String name;
// 年龄
private int age;
public String getName(){
return name;
}
public void setName(String name) { ...
原文出处:http://my.oschina.net/BlueLife/blog/5535
一、spring工作原理:
1.spring mvc把所有的请求都提交给DispatcherServlet,它会委托应用系统的其他模块负责对请求进行真正的处理工作。2.DispatcherServlet查询一个或多个HandlerMapping,找到处理请求的Controller.
StringBuffer 字符串变量(线程安全) StringBuilder 字符串变量(非线程安全)
StringBuffer是线程安全的,方法中多了synchronized ,而StringBuilder 是非线程安全的。
所以StringBuilder 会比 StringBuffer处理速度快。
Spring MVC 教程,快速入门,深入分析
- 博客分类:
- java
原文出处:
http://elf8848.iteye.com/blog/875830/
我们要做到不但会写SQL,还要做到写出性能优良的SQL,以下为笔者学习、摘录、并汇总部分资料与大家分享! (1) 选择最有效率的表名顺序(只在基于规则的优化器中有效): ORACLE 的解析器按照从右到左的顺序处理FROM子句中的表名,FROM子句中写在最后的表(基础表 driving table)将被最先处理,在FROM子句中包含多个表的情况下,你必须选择记录条数最少的表作为基础表。如果有3个以上的表连接查询, 那就需要选择交叉表(intersection table)作为基础表, 交叉表是指那个被其他表所引用的表. (2) WHERE子句中的连接顺序.: ORACLE采 ...
JQuery对数组的一些操作总结
- 博客分类:
- jquery
JQuery对数组的处理非常便捷并且功能强大齐全,一步到位的封装了很多原生js数组不能企及的功能。下面来看看JQuery数组的强大之处在哪。
$.each(array, [callback]) 遍历
不同于例遍 jQuery 对象的 $.each() 方法,此方法可用于例遍任何对象(不仅仅是数组哦~). 回调函数拥有两个参数:第一个为对象的成员或数组的索引, 第二个为对应变量或内容. 如果需要退出 each 循环可使回调函数返回 false, 其它返回值将被忽略.
each遍历,相信都不陌生,在平常的事件处理中,是for循环的变体,但比for循环强大.在数组中,它可以轻松的攻取数 ...
每一次操作select的时候,总是要出来翻一下资料,不如自己总结一下,以后就翻这里了。
比如<select class="selector"></select>
1、设置value为pxx的项选中
$(".selector").val("pxx");
2、设置text为pxx的项选中
$(".selector").find("option[text='pxx']").attr("selected",true);
这 ...
延长action中属性的生命周期,包括自定义属性,以便在jsp页面中进行访问,让actionContextcleanup过滤器来清除属性,不让action自己清除。
为了使用WebWork,我们只需要在web.xml配置FilterDispatcher一个过滤器即可,阅读一下FilterDispatcher的JavaDoc和源码,我们可以看到它调用了:
finally { ActionContextCleanUp.cleanUp(req); }
在ActionContextCleanUp中,有这样的代码:
req.setAttribute(CLEAN ...
java Socket(二)
- 博客分类:
- socket
上次做了一个java socket一对一通信的例子这次来写一个一对多的通信,这里我们使用java的多线程来实现
首先来看一下服务类
[java] view plaincopy
/**
java socket通信已经被封装好了主要使用两个类ServerSocket 和Socket
首先写一个1v1的通信
服务端
[java] view plaincopy
/**
1. 理解拦截器
1.1. 什么是拦截器:
拦截器,在AOP(Aspect-Oriented Programming)中用于在某个方法或字段被访问之前,进行拦截然后在之前或之后加入某些操作。拦截是AOP的一种实现策略。
在Webwork的中文文档的解释为——拦截器是动态拦截Action