- 浏览: 127477 次
- 性别:
- 来自: 北京
最新评论
-
yanhaijing:
if("classname" in x.p ...
JS对象类型的确定 -
pch272215690:
测试代码无法运行,死循环了:enhancer.setCallb ...
Spring AOP(2):Cglib动态代理 -
ps329795485:
谢谢,在这里找到了我想要的答案。
刚开始我不知道是如何加载ap ...
我不熟悉spring+struts+ibatis配置文件 -
lee_json:
很有帮助 我可以转走吗?谢谢
我不熟悉spring+struts+ibatis配置文件 -
heiwoshimaoya:
good 写的好!喜爱原创! 支持
学习笔记:Javascript数据类型和值
文章列表
对ssi不熟悉导致经常纠结于各种配置文件,对其如何整合也似懂非懂。干脆来写写罢(主要写我不熟悉的,路过的同志可能不适合阅读此文)
一、web.xml
1、contextConfigLocation:Spring容器启动时需要加载Spring的配置文件,默认是/WEB-INF目录下的applicationContext.xml文件。当然也可以放在classpath下,可以包括多个spring配置文件----这就得依靠contextConfigLocation。
<context-param>
<param-name>contextConfigLoca ...
数组的比较:Arrays.sort()方法要求数组元素必须实现Comparable接口,该接口只有一个方法int compareTo(Object obj)。如果数组元素为实现Comparable接口而调用Arrays.sort()方法,将抛出ClassCastException异常。
如果对象已经被某人实现了Comparable接口,并且实现的方式不是你所喜欢的,那么你可以让该元素对象实现Comparator接口,有两个方法compare()和equals()。
另外,Collections.reverseOrder()方法会产生一个Comparator,它可以反转自然的排序顺序。rever ...
互联网网页优化的一大步骤就是减少HTTP连接数,以提高服务器的负载。
通常的做法有:
1、将css文件和js文件放到单独的.css和.js文件引入到页面中。客户端浏览器缓存会缓存css文件和js文件,这样当一个客户第一次访问网页下载了这两类文件后,后面的访问将直接从客户端内存中取。潜在网页中的js代码和css代码却不能被缓存。
2、减少iframe使用。一个iframe跟一个单独的页面本质上没有区别,客户端在访问时需要另行建立一个HTTP连接进行访问,就好比你同时访问了N+1个网页。
3、将网页中用到的背景图片合并到成一张大的图片,在显示时通过css的background-position控制 ...
JS是松散类型的语言,这一点JS的对象表现得尤为突出。那么如何来确定JS对象的具体类型呢?
首先,我们可以使用typeof运算符确定其基本类型(number,object,function,undefined)。如果typeof运算符返回object我们再使用instanceof来确定该对象是否属于某个具体类型。
注意:typeof null得到object,而typeof undefined得到undefined,typeof 数组对象得到object,typeof 函数得到function。
o instanceof Type:判断对象o是否属于Type类型,如果o是Type类型子类的 ...
Function([函数参数1,函数参数2...函数参数N,]函数体)
[list]
Function()构造函数允许JS代码被动态地创建并且在运行时编译,同全局eval()
每次调用时创建一个新的函数-->避免该构造函数出现在循环体中
Function创建的函数并不适用词法作用域,他们总是当做顶层的函数一样来编译。
var x = "global";
function t(){
var x = "local";
return new Function("return x");
}
...
这里讨论这两者的区别
但不是讨论怎么定位xml文件
而是在创建context的方式上有没有什么区别
项目中遇到的问题是:
web service客户端调用服务器端,在服务器端使用FileSystemXmlApplicationContext加载springxml文件获取bean竟然获取不到任何bean
但是用ClasspathXmlApplicationContext却能够搞定
试问:两者是否在在创建context上有什么区别?
当然,如果在服务器端写一个main方法进行测试,则两个都能搞定
使用web service客户端调用的话,则由于不是处在同一个context中的线程引发 ...
使用Spring开发Axis web service服务器端
(那一套都是自动生成的,Locator,Service,ServiceImpl,Stub,Skeleton等等)
现需要在ServiceImpl中添加自己的逻辑,并且需要Spring中的Bean
我是使Skeleton继承了ServletEndpointSupport去获得Bean,在客户端调用(另一项目组)时发现获取不到Bean
但是如果自己使用Spring的ApplicationContext能够加载到(自己写了个main方法进行模拟客户端测试就能够获取)
Spring-references.pdf中有文字如下:
O ...
对象:
是一种复合数据类型,他们将多个数据值集中在一个单元中,而且允许使用名字来存取这些值。
创建对象:使用对象直接量----用逗号分隔开的一对对的属性名和值的列表,包含在一个花括号中,见例子:
var empty={};
var point={x:0,y:0};
var circle={x:point.x,y:point.y,radius:2};
var homer={"name":"Homer simpson","age":"34","married":true};
var ...
JS的函数特殊性:JS中的函数可以被当做一种数据类型来看待,是真正的数值,因此可以被存储在变量数组和对象中,也可以作为参数传递给其他的函数,可以被赋值给某个对象的属性。
定义一个概念:函数直接量(function literal) ...
JS中有三种基本数据类型:数字、文本字符串和布尔值。除此之外还允许两种小数据类型:null和undefined【它们各自都只有一个值】。
除了基本数据类型,JS还支持复合数据类型:对象。对象是值的集合,这里的值可以是基本数据类型,也可以是其他对象。在一般的对象中,值的集合是无序的,但是在数组对象中,值被保存为有序的集合--虽然从根本上来说,数组对象也是对象,只是数组对象拥有很多相对一般对象所独有的特性和行为。另外,函数作为另一种特殊的对象,它也拥有很多独特的行为。所以我们可以将Array和Function看做两种特殊的Object。
另外,JS语言还自定义了一些专用 ...
首先接上一篇文章,我们来看看JDK动态代理和Cglib实现的代理有哪些不经如人意的地方:
对目标类中的所有业务方法都添加了横切逻辑代码,但是现实中我们只需要inhance特定的方法【这点其实可以通过在intercept方法或invoke方法中对目标类进行判断而达到只对特定类的特定方法进行代码织入】
都用硬编码的方式指定了横切逻辑的植入位置,例子中都是在方法调用前后植入织入目标代码,但现实中我们可能需要在抛出异常时织入目标代码,或者只在方法前面织入。这种需求的多样性就要求织入点应该是可以灵活选择或者灵活配置的
为不同的目标类创建代理对象时需要编写不同的创建过程代码,无法做到通用
Cglib和JD ...
先总结一下上篇文章使用JDK动态代理实现AOP的步骤:
定义一个服务类接口
进行接口的实现
编写InvocationHandler的实现类用于封装目标对象和目标类的方法
声明接口类型的服务实现类对象,使用该对象创建我们的InvocationHandler实现类
使用Proxy.newProxyInstance方法获得目标对象的封装对象
当然我们也总结了JDK动态代理的一些缺点,我们可以对比Cglib看看哪个更加强大、各有什么优缺点、什么条件下选择哪种动态代理实现方式。JDK动态代理的缺点有:
必须要存在服务类接口。如论你的业务逻辑复杂与否都必须提供一个服务接口,哪怕是标志接口
代理对象的 ...
声明:本文取材于《精通Spring2.x》上的经典例子。
要了解Spring AOP,建议先熟悉一下设计模式中的代理模式(不基于编程语言的代理模式,关键是理解其思想)。
场景:在各个业务方法中添加进行方法性能测试的逻辑,输出测试方法性能信息(比如运行所花费的时间)。
本例假设业务为ForumServiceImpl,它实现了ForumService接口,该接口提供两个业务操作,见代码:
interface ForumService{
void removeTopic(int topicId);
void removeForum(int forumId);
}
p ...
场景:当我们希望通过无状态Bean获得有状态Bean时,每次获得的有状态Bean都会是同一个对象。直白点说,就是当我们希望通过一个作用域为singleton的BeanA获得一个作用域为prototype的BeanB对象的实例时,每次获得的BeanB都是同一个实例。这时我们可以考虑通过方法注入实现之。
例子:一棵苹果树AppleTree,在应用上下文中我们将其作为一个singleton的Bean,其中提供一个方法用于获得Apple,即Apple apple=AppleTree.getApple()。理所当然,我们希望每次通过AppleTree.getApple() ...
打算好好看看JPetStore,毕竟在新公司也是做网上商城,之前没接触过。为了更好的了解JPetStore,先看看数据库结构。并不是JPetStore的数据库设计得很好从而具有研究价值,只是为了熟悉,所以大家选择性的看吧!
1.商品供应商:每个具体的商品(ITEM)有不同的供应厂商:
create table if not exists supplier (
suppid int not null,--primary key
name varchar(80) null,--name
status varchar(2) not null,
a ...