9月21
       使用Spring时,你有时候可能想把某个Bean的属性(而非该bean本身)注入到另外一个bean的某属性中去,这时候你可以参考如下代码:

在上面的例子中,sessionFactory的mappingResources属性是一个字符串数组类型的属性,熟悉Spring和hibernate的朋友知道这是所有映射文件的列表。而我们定义的hibernateMappingManager中,有一个名为mappingFiles的属性是所有这些文件的列表。通过使用PropertyPathFactoryBean我们成功地将mappingFiles注入到了sessionFactory的mappingResources属性
9月20
        JTidy是一个免费开源的自由软件,你可以使用它将HTML文件转成XHTML。下面这段代码就是一个示例:
Tags: , , , ,
9月20
        Java中利用Thread的stop()方法来终止一个线程是不安全的(这个方法已经被标为depracated)。但是你如何终止一个线程的执行呢?
一个比较好的办法是在你的线程类里面定义一个属性用来表示是否该线程应该被停止。在线程的执行过程中根据这个属性的值来判断是否线程继续向下执行。
还是有点不明白么?可以参照一下下面这段简单的代码:


只要在其他地方调用这个线程的done()方法,这个线程就会停止执行了,注意这只是一个简单的示例,没有考虑synchronize之类的问题。
9月20
请看下面这段代码演示了如何在ejb 3中使用参数化的SQL查询smile
Tags: , , ,
9月20
         C#中把Hashtable中的键或者值转化成ArrayList最简单的办法就是使用ArrayList的构造函数。Hashtable.Keys以及Hashtable.Values属性都返回一个System.Collections.ICollection,你可以将它们传给ArrayList的构造函数:
9月20

在EJB 3.0中查找Bean接口

22:28编程杂谈  From: 本站原创
        在ejb 3.0中,如果需要从另外一个bean中调用一个bean(local或者remote的),大体上有两种方法:
1.通过JNDI查找:下面这段代码是一段通过JNDI查找bean的示例:


2.通过@EJB注释:
@EJB BusinessInterface bi;   //这就可以了

Tags: , ,
9月10

关于工厂模式

先讲一下简单工厂模式、工厂方法模式、抽象工厂模式的东西:

        
  • 简单工厂模式(Simple  Factory  Pattern):工厂类中包含了必要的逻辑判断,根据客户端的选择条件动态实例化相关类,也就是说产品的创建逻辑集中于一个工厂类,客户端只需要传递不同的参数给工厂,这时情况是:一个工厂创建一个产品,所有的具体工厂继承自一个抽象工厂;对于客户端来说,不存在与具体产品的依赖;
  •     
  • 工厂方法模式(Factory  Method  Pattern):提前定义用于创建对象的接口,让子类决定实例化具体的某一个类,即在工厂和产品中间增加接口,工厂不再负责产品的创建,由接口针对不同条件返回具体的类实例,由具体类实例去实现;
  •     
  • 抽象工厂模式(Abstract  Factory  Pattern):提供一个创建一系统或相互依赖对象的接口,不需要指定具体类。抽象工厂正如其名字所说,它抽象的是工厂接口,因此它面向的是多个平等等级结构,其建立对象的原则是以功能相似的对象为单位划分需要建立的对象。

简单工厂并不属于23种基本设计模式中,它是抽象工厂模式的一个特例;抽象工厂与工厂方法区别在于它们抽象的对象不同:工厂方法针对产品进行抽象,而抽象工厂抽象针对工厂。因此可以认为工厂方法是抽象工厂的一种极端情况,工厂方法模式用来创建一个产品的等级结构,它一般只有一个方法,创建一种产品;而抽象工厂是用来创建多个产品的等级结构,一般有多个方法,创建一系列产品。

9月10
        在c# winform中用子窗体刷新父窗体,子窗体改变父窗体控件的值有几种方法,下面我们来看用第一种方法:
用委托,Form2和Form3是同一组
Form2

9月10
         在Java语言中,equals()和hashCode()两个函数的使用是紧密配合的,你要是自己设计其中一个,就要设计另外一个。在多数情况下,这两个函数是不用考虑的,直接使用它们的默认设计就可以了。但是在一些情况下,这两个函数最好是自己设计,才能确保整个程序的正常运行。最常见的是当一个对象被加入集合对象(collection object)时,这两个函数必须自己设计。更 细化的定义是:如果你想将一个对象A放入另一个Collection Object B里,或者使用这个对象A为查找一个元对象在Collection Object B里位置的key,并支持是否容纳,删除Collection Object B里的元对象这样的操作,那么,equals()和hashCode()函数必须开发者自己定义。其他情 况下,这两个函数是不需要定义的。
equals():
它是用于进行两个对象的比较的,是对象内容的 比较,当然也能用于进行对象参阅值的比较。什么是对象参阅值的比较?就 是两个参阅变量的值得比较,我们 都知道参阅变量的值其实就是一个数字,这个数字可以看成是鉴别不同对象的代号。两个对象参阅值的比较,就是两个数字的比较,两个代号的比较。这种比较是默 认的对象比较方式,在Object这个对象中,这种方式就已经设计好了。所以你也不用自己来重写,浪费不必要的时间。
对象内容的比较才是设计equals()的真正目的,Java语言对equals()的要求如下,这些要求是必须遵循的。否则,你就不该浪费时间:
对称性:如果x.equals(y)返回是“true”,那么y.equals(x)也应该返回是“true”。
反射性:x.equals(x)必须返回是“true”。
类推性:如果x.equals(y)返回是“true”,而且y.equals(z)返回是“true”,那么z.equals(x)也应该返回是“true”。
还有一致性:如果x.equals(y)返回是“true”,只要x和y内容一直不变,不管你重复x.equals(y)多少次,返回都是“true”。
任何情况下,x.equals(null),永远返回是“false”;x.equals(和x不同类型的对象)永远返回是“false”。
9月10
一.web.xml文件
分页: 17/20 第一页 上页 12 13 14 15 16 17 18 19 20 下页 最后页 [ 显示模式: 摘要 | 列表 ]