您现在所在的位置: 北风技术专栏 > Java

艺术,真的和Haskell有关吗?

归类于Java | 2010年06月14日 | 发表评论 »

我知道,很多(确有很多吗?)人会觉得Haskell这样的纯粹的静态强类型函数式语言太过于严肃抽象了,只适合用来完成生冷坚硬的科学任务。可是,亲爱的Paul Hudak(http://cs-www.cs.yale.edu/homes/hudak/)却在一次名为”Haskell and the Arts”的讲演中让我们看到,原来严谨思辨的Haskell也可以为许多领域的艺术家提供独特的助力。
详细内容 »

深入dwr2之三 Dwr2页面请求处理机制分析之engine.js

归类于Java, Web开发 | 2008年12月02日 | 1 条评论 »

DWREnginedwr在客户端的存根,它其中的方法基本上不需要用户来直接调用;通常你会在服务器的dwr.xml定义需要暴露的java类及其可调用方法,dwr会根据这个配置文件自动生成一个dwr/interface/**.js文件,对应你暴露的java类及其方法,你会在本地调用**.js文件定义的方法,和调用java的方法一样,除了多了一个回调参数,然后这个方法会委托DWREngine._execute发出请求;

Engine.jsutil.js不同之处在于,util.js是静态js文件,可以直接从jar文件中拿出来,页面可以直接引用;而engine.js则有部分动态内容,这决定了它必须经过servelt资源请求,在servelt为动态内容赋值之后,才可以返回给客户端;

详细内容 »

认识安全框架acegi(5)

归类于Java, Web开发 | 2008年11月14日 | 发表评论 »

Acegi称受保护的应用资源为“安全对象”,这包括URL资源和业务类方法。我们知道在Spring AOP中有前置增强、后置增强、异常增强和环绕增强,其中环绕增强的功能最为强大——它不但可以在目标方法被访问前拦截调用,还可以在调用返回前改变返回的结果,甚至抛出异常。Acegi使用环绕增强对安全对象进行保护。

Acegi通过AbstractSecurityInterceptorInterceptor:拦截器)为安全对象访问提供一致的工作模型,它按照以下流程进行工作:

详细内容 »

认识安全框架acegi(4)

归类于Java, Web开发 | 2008年11月14日 | 发表评论 »

Acegi支持多种方式的用户认证:如典型的基于数据库的认证、基于LDAP的认证、基于Yale中心认证等方式。不同的认证环境拥有不同的用户认证方式,现在我们先抛开这些具体的细节,考察一下Acegi对受限资源进行访问控制的典型过程:

1.你点击一个链接访问一个网页;

2.浏览器发送一个请求到服务器,服务器判断出你正在访问一个受保护的资源;

详细内容 »

认识安全框架acegi(3)

归类于Java, Web开发 | 2008年11月14日 | 发表评论 »

每个框架都有一些核心的概念,这些概念被固化为类和接口,成为框架的重要组件类。框架的管理类、操作类都在这些组件类的基础上进行操作。在进入Acegi框架的具体学习前,有必要事先了解一下这些承载Acegi框架重要概念的组件类。

首先,我们要接触是UserDetails接口,它代表一个应用系统的用户,该接口定义了用户安全相关的信息,如用户名/密码,用户是否有效等信息,你可以根据以下接口方法进行相关信息的获取:

详细内容 »

认识安全框架acegi(2)

归类于Java, Web开发 | 2008年11月14日 | 发表评论 »

乘飞机前需要通过安检,乘客必须提供身份证以验证其身份。在通过安检进入候机室后,国航、海航、南航等不同航空公司的飞机陆续到达,但你只能登上机票上对应航班的飞机。在登机后,只能坐在机票对应的座位上——你不能抢占他人的座位,你不能在座位上刻字留念、你不能要求空姐打开机窗……

乘飞机的过程最能体现安全控制的流程,我们可以从中找到身份认证、资源访问控制、领域对象安全控制的对应物:安检对应身份认证,登机对应资源访问控制,而按号就座则对应领域对象安全控制。

详细内容 »

Java类的基本运行顺序

归类于Java | 2008年11月12日 | 4 条评论 »

作为程序员,应该对自己写的程序具备充分的掌控能力,应该清楚程序的基本运行过程,否则糊里糊涂的,不利于对程序的理解和控制,也不利于技术上的发展。

我们以下面的类来说明一个基本的Java类的运行顺序:

详细内容 »

认识安全框架acegi(1)

归类于Java | 2008年11月10日 | 1 条评论 »

本系列是讲acegi的基本概念,下系列是acegi实战,主要讲acegi在项目中的具体应用;感兴趣的可以关注

一、 概述

对于任何一个完整的应用系统,完善的认证和授权机制是必不可少的。Acegi Security(以下简称Acegi)是一个能为基于Spring的企业应用提供强大而灵活安全访问控制解决方案的框架,Acegi已经成为Spring官方的一个子项目,所以也称为Spring Security。它通过在Spring容器中配置一组Bean,充分利用SpringIoCAOP功能,提供声明式安全访问控制的功能。虽然,现在Acegi也可以应用到非Spring的应用程序中,但在Spring中使用Acegi是最自然的方式。 Acegi可以实现业务对象方法级的安全访问控制粒度,它提供了以下三方面的应用程序的安全:

详细内容 »

Java编程思想:面向对象的逻辑思维方法

归类于综合 | 2008年11月10日 | 发表评论 »

什么是面向对象的设计思想?也许有不少初学者对这个概念还有许多不明白的地方,特别是这个处于新旧思想交替的时代,许多人刚刚学完现在看来是快要淘汰的只是面向过程的语言。他们的脑子还没有脱离面向过程思想的束缚,抬头却发现,“面向对象”早已经流行开来,这个陌生的词漫天飞舞。随便拿起一本流行计算机技术书籍,那里会没有“面向对象”的字眼!于是心中便惶惑了:什么叫“面向对象”?不感兴趣者,一带而过;有志于在这方面发展的,匆忙找到一本有关书籍来啃究竟什么是“面向对象”。然而,要突破思想的束缚,说难也不难,说到要深刻认识却也不容易。笔者在做了一些轻量级的工作后,颇以为有点心得,不怕贻笑大方,写出已供广大同行批评指正。

详细内容 »

按值传递还是按引用传递

归类于Java | 2008年10月22日 | 3 条评论 »

这个在Java里面是经常被提起的问题,也有一些争论,似乎最后还有一个所谓的结论:“在Java里面参数传递都是按值传递”。事实上,这很容易让人迷惑,下面先分别看看什么是按值传递,什么是按引用传递,只要能正确理解,至于称作按什么传递就不是个大问题了。

详细内容 »

每周之星

陈臣陈臣

七年Java和JEE开发经验,JEE应用设计和高级架构师,拥有Sun的多项Java和J2EE方面的技能认证,多年项目经理、技术部经理的管理经验。拥有全面、扎实的Java和JEE理论知识,丰富的JEE应用开发经验。

更多作者:

  • Adam
  • ikon999
  • jk1234
  • jk2345
  • libin_8745
  • lifengxing
  • taohuang100
  • xingkong
  • 北风
  • 呆子
  • 子晨
  • 小白
  • 张章
  • 张维亮
  • 陈臣
  • 陶宝哥
  • 风风
  • 最新内容

    推荐内容

    标签

    分类