- 浏览: 58263 次
- 性别:
- 来自: 南京
最新评论
-
lemon_gogogo:
看看这个http://blog.csdn.net/lemon8 ...
Java中@Inherited注解的运用 -
lemon_gogogo:
赶紧删了把。。错了 This annotatio ...
Java中@Inherited注解的运用 -
showzh:
...
如何查看现有项目的struts和hibernate和spring版本
文章列表
我们自定义注解(Annotation)时,把自定义的注解标注在父类上不会被子类所继承,但是我们可以在定义注解时给我们自定义的注解标注一个@Inherited注解来实现注解继承。
自定义的注解代码如下:
package com.xdf.annotation;
import java.lang.annotation.Inherited;
import java.lang.annotation.Retention;
@Inherited
@Retention(java.lang.annotation.RetentionPolicy.RUNTIME)
public @i ...
以前对Object类的equals()方法和hashcode()方法很模糊,只知道用equals()来判断两个对象是否相等,hashcode()是来计算散列值的,重写equals()方法时,总是要重写hashcode(),却不知道为什么要这样,昨天在家研究了一天,终于弄懂了一点点,所以写下来加深印象,不懂的同学也可以看看。
在网上查了很多资料,但是都写得不明不白的,压根写那些资料的人自己都不明白,还出来误导人!靠你大爷的。于是我查了Effective+java,think in java 两本书,但是里面有些讲得很难懂(大师们写得太深奥了!!) ,加之又是看英文翻译过来的中文版,(-.- ...
一、JVM内存模型及垃圾收集算法
1.根据Java虚拟机规范,JVM将内存划分为:
New(年轻代)
Tenured(年老代)
永久代(Perm)
其中New和Tenured属于堆内存,堆内存会从JVM启动参数(-Xmx:3G)指定的内存中分配,Perm不属于堆内存,有虚拟机直接分配,但可以通过-XX:PermSize -XX:MaxPermSize 等参数调整其大小。
年轻代(New):年轻代用来存放JVM刚分配的Java对象
年老代(Tenured):年轻代中经过垃圾回收没有回收掉的对象将被Copy到年老代
永久代(Perm):永久代存放Class、Method元信息,其大小跟项目 ...
1 属性
1.11 ajaxOptions,当选项卡加载内容时,添加一个ajax选项。只有ajax时,添加的ajax选项才起作用。默认值为null。上面的例子中,添加了beforeSend和success两个选项。ajax还有一些选项请参考jquery ajax,这里不做详解。。。
1.12 初始化设置例:请注意,$('.selector')是tabs 的类名,在本例中.selector=#tabs,以后不再说明。
$('.selector').tabs({ ajaxOptions: { async: false } });//这里是将异步改为了同步。
1.13 初始化后的参数获取和设置:请注意 ...
通常如果一样东西需要编码,说明这样东西并不适合传输。原因多种多样,如Size过大,包含隐私数据,对于Url来说,之所以要进行编码,是因为Url中有些字符会引起歧义。
例如,Url参数字符串中使用key=value键值对这样的形 ...
HttpClient是一个模拟HTTP请求的工具类.
对HttpClient进行了一个简单的封装:
import static org.apache.commons.httpclient.params.HttpMethodParams.SO_TIMEOUT;
import java.util.Map;
import java.util.Map.Entry;
import org.apache.commons.httpclient.Header;
import org.apache.commons.httpclient.HttpClient;
im ...
JS获取form表单中多个submit中当前点击的submit:
<script>
function submitForm()
{
var src=document.activeElement;
if(src.name=='save')
{
alert('保存');
}
else
{
alert('修改');
}
}
</script>
<form name="frm1" onSubmit="return submitForm()&q ...
命令(Command)模式就是对命令的封装,也就是把一个请求或操作封装到一个对象中。
命令模式示意性代码如下:
/**
* 抽象命令接口
* @author Administrator
*
*/
public interface Command {
void execute();
}
抽象命令接口角色规定了具体命令接口必须实现的接口。即一个执行方法(execute)
/**
* 具体命令类
* @author Administrator
*
*/
public class ConcreteCommand implements C ...
<script>
function Panel () {
this.el = document.createElement('div');
this.el.style.position = 'absolute';
this.initPosition();
this.initStyle();
document.body.appendChild(this.el);
}
Panel.prototype = {
initPosition: function () {},
initStyle: functio ...
有时候我们想在一个目标jsp页面里获取跳转( RequestDispatcher.forward() )到这个目标jsp页面的servlet和action的请求地址,可以这样获取
String url = pageContext.getRequest().getAttribute(
"javax.servlet.forward.request_uri").toString();
1、首先从findbugs网站下载插件:http://findbugs.sourceforge.net/downloads.html
2、将下载回来的zip包解压,得到文件夹:edu.umd.cs.findbugs.plugin.eclipse_1.3.9.20090821,将该文件夹拷贝到myeclipse安装目录下common/plugins目录下。我的目录结构:D:\Genuitec\MyEclipse8.5\Common\plugins\edu.umd.cs.findbugs.plugin.eclipse_1.3.9.20090821
3、修改myeclipse安装目录下conf ...
昨天下午闲暇无事翻了一下《java与模式》,偶然看到模板方法模式这一章,猛然间明白自己以前常用这模式,居然不知道。现把模板方法模式学习记录一下。
模板方法模式示意性代码如下.
下面定义的是抽象模板类:
public abstract class AbstractFatherClass {
/**
* 模板方法的声明与实现
*/
public void templateMethod() {
// 调用基本方法
this.doOperation1();
// 调用基本方法
this.doOperation2();
this.doO ...
官方”的解释是:闭包是一个拥有许多变量和绑定了这些变量的环境的表达式(通常是一个函数),因而这些变量也是该表达式的一部分。
相信很少有人能直接看懂这句话,因为他描述的太学术。其实这句话通俗的来说就是:Jav ...
对于rownum来说它是oracle系统顺序分配为从查询返回的行的编号,返回的第一行分配的是1,第二行是2,依此类推,这个伪字段可以用于限制查询返回的总行数,且rownum不能以任何表的名称作为前缀。
(1) rownum 对于等于某值的查询条件
如果希望找到学生表中第一条学生的信息,可以使用rownum=1作为条件。但是想找到学生表中第二条学生的信息,使用rownum=2结果查不到数据。因为rownum都是从1开始,但是1以上的自然数在rownum做等于判断是时认为都是false条件,所以无法查到rownum = n(n>1的自然数)。
SQL> select rownum,id ...
这个js脚本只是提供一个通用的验证框架,具体的验证规则,以及不能通过验证的时候所产生的动作完全可以定制。
首先,给需要验证的表单(Form)中的需要加入验证器的input控件加入一定的验证规则,这个例子中是通过给Input控件加入一个自定义的属性来实现的,如下例:
<script src="validate.js" ></script>
<style>
input.invalid{background: #faa;}
input.valid{background: #afa;}
&l ...