http://blog.sina.com.cn/yangsq[订阅]
个人资料
分类
    内容读取中…
评论
读取中...
访客
读取中...
好友
读取中...
博文
 XPath是W3C定义的一个规范语言,用于定位XML文档中的某些信息。XPath通常情况下使用在XSLT里,通过XPath表达式(XPath expression_r)的形式来定位XML元素。
    XPath表达式是一种规范,必须遵循W3C的定义。此外,为了是XPath表达式更容易使用,它还内置了许多函数。
    既然XPath是规范的,那么他处理的XML也应该是规范的。它把XML看作是一些节点的树形结构。在学习XPath表达式之前,先说明一些概念。为了方便说明,这里举一个XML文档为例:

<?xml version='1.0' encoding='UTF-8'?>

<bookstore>

     <book>
        <title lang='en'>Harry Potter</title>
        <author>J K. Rowling</author>

    XSLT——XML Stylesheet Language Transformations,字面的意思就是做XML文档转换的语言。它不仅可以把XML文档转换为另外的XML文档(不仅可以一到一,还可以是*个到*个),还可以把XML文档转化为其他形式的文档,如HTML、XHTML、PDF等。
    在学习XSLT时,我们应该知道,进行XML转化的不是XSLT本身,而是需要另外的XSLT转换引擎。那么XSLT是干什么的?它是转换引擎在进行转化时参考的依据,要不引擎怎么能够知道怎样进行转化呢。
    在学习XSLT之前,先说比较好的XSLT转换引擎吧,其中有Xalan(IBM transfer to Apache project)、Oracle XSLT、Saxon(个人感觉很不错,目前出道8以上的版本了,支持XSLT2.0)、MSXML(这么重要的东西,当然是微软的,只不过可惜,其他开源项目都支持了XSLT最新技术时,它却实现了一个XSLT的过时版本,可能这就是微软的与众不同吧)、XML::XSLT(SourceForge的,Perl写的)。最后要说一个工具,提到XML,就不能提到XMLSpy,目前的版本是2007,个人感觉是超好使,呵呵,不是在做广告呦。
    XSLT是一种类XML语言,编码风格就是XML式的
 (转自 http://www.donews.com
 
    业界炒作了几年的SaaS,是否会重蹈上世纪90年代末ASP(Application Service Provider,应用服务提供商)无疾而终的覆辙?如今的SaaS热,是虚热还是实热?

 

    SaaS(Software-as-a-Service,软件即服务)作为一种新型软件服务形式,正在全球兴起。作为软件产业的一次革命,中国软件供应商如何看待这场革命?它在中国市场的命运是否会一帆风顺?

 

起跳

 

    主营业务为Call center的北京讯鸟软件有限公司,半年前成为Xtools在线CRM软件的使用者。他们的使用动机很简单,“公司拥有4个办公区,属于分散办公,而且,我们不

    身份验证主要是根据用户的信息,在数据库(或其他方式)获得其权限信息,并把它放到SecurityContext里面(权限信息被封装成GrantedAuthority数组,由AuthenticationManager放到代表用户的Authentication里),而并不决定对资源的真正访问权。用户对资源的访问权是由授权机制来控制的。
    Acegi中,管理授权机制的是AccessDecisionManager。AccessDecisionManager采用民主决策机制判断用户是否有权访问目标程序资源,它包含了多个AccessDecisionVoter。在访问决策时每个AccessDecisionVoter都拥有投票权,AccessDecisionManager统计投票结果,并按照某种决策方式根据这些投票结果决定最终是否向用户开放受限资源的访问。
    Acegi的投票方式有多种,每个Voter对访问权可以投赞成,弃权或反对,当然,我们除了使用Acegi自带的Voter(
    用户的认证权限管理是通常系统的必要组成部分,但由于其与业务一般是不相关的,所以时常单独设计。简单的做法是先开发业务,最后把用户管理授权等编码加到业务执行代码之前。这样做虽然直观、简单,但由于和业务混在了一起,所以降低了逻辑性,增大了耦合性。
    Acegi安全框架是一款非常优秀的开源框架,它致力于为企业应用提供一个良好的认证授权机制。它建立在Spring框架上的,目的是为J2EE应用提供一个非侵入的安全解决方案,通过不断的改进和应用测试,Acegi已经成为目前解决Java安全性的首选框架。为了更符合企业安全性的应用,Acegi社区还特意请了许多的安全专家为其出谋划策,以使Acegi不断的完善。
    Acegi的安全管理分为两个大的部分,Authentication(验证)和Authority(授权)。它能够对Http请求、业务逻辑(method)和domain对象进行有效的保护。在实现机制上,由于应用在Spring框架上,它可以借助Spring的IoC进行管理。同时Acegi也是简单的,因为你可以只通过配置文件就可以实现强大的权限管理功能,它的配置文件的格式与Spring完全相同;Acegi是可扩展性的,在实际应用中,
maven学习笔记(一)(2007-05-09 13:00)
    以前只使用过ant去构建一个应用,但在IBM使用的是maven,它也是一个java项目管理工具,深化了ant,但又有自己一整套的项目集成策略。
StringBuilder学习笔记(2007-04-24 20:55)
    在学习jdk5.0的字符串类型时,我们看到了StringBuilder的出现,StringBuilder同样继承自CharSequence(其它三个CharSequence接口的类是CharBuffer,String,StringBuffer,除CharBuffer不推荐使用外,String和StringBuffer是我们经常使用的)。通过查看StringBuilder的API reference,我们可以看到,它和StringBuffer的方法基本上没有什么区别。但在具体实现上,StringBuilder是线程安全的,这点和StringBuffer有着本质的不同。
    我们知道String类已经提供了强大的功能(众多的API),那么我们为什么还要StirngBuilder呢?这是因为String对象的是固定的,一旦赋值就不能改变了,并且对其操作也是重量级的;而StringBuilder恰可以提供可变长字符串的灵活应用。下面介绍一下StirngBuilder的主要功能:
 
1.  append方法
    StringBuilder的append方法提供了许多的重载方式,如
        append(boolean/char/int/..所有基本类型)
DOM的基本方法(转)(2007-04-22 21:59)
 最近在网上学习了一篇文章,叫《DOM的基本方法》,感觉很有用,拿过来贴一下,原文地址:http://www.cnblogs.com/QiuYun/archive/2007/03/12/672274.aspx
 

一.直接引用结点
1.document.getElementById(id);
      --在文档里面通过id来找结点
2.document.getElementByTagName(tagName);
      --返回一个数组,包含对这些结点的引用
      --如:document.getElementByTagName('span');将返回所有类型为span的结点

二.间接引用结点
3.element.childNodes
      --返回element的所有子结点,可以用element.childNodes[i]的方式来调用
      --element.firstChild=element.childNo

java按拼音排序(2007-04-22 09:38)
    最近遇到一个把汉字按拼音排序的,搞了半天,从网上找到了字符转换关系的代码,可是最后结果总不对。以为算法有问题,又搞了半天算法,结果发现实际上,java的汉字比较直接就是按拼音的,不用什么转换,直接comparaTo就OK了。
java范型学习(2)(2007-04-20 17:00)
    实际上,java的范型机制并不是很完善,因为java的创建之初并没有想到以后会实现范型机制,等到现在真要实现范型了,要考虑的问题就复杂了。下面学习一下java范型的限制。
  1. 对于基本类型

    java中存在8个基本类型(整型4个:int,short,long,byte;浮点型2个:float,double;unicode编码的字符类型:char;真值类型:boolean),他们都不能做范型的邦定类型,如Demo<int>。如果想这样做,java提供了包装类型。

 

   2. 运行时类型检查

 

     java提供了instanceof关键字来提供运行时刻类型检查,如:

if(a instance