`
zhanghong
  • 浏览: 90688 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论
文章列表
2010年的最后一天写了一个JSF2与JDBC集成的例子,记录一下。 准备数据库表创建:   SQL> create table customer(   2  id number(8) not null primary key,   3  name varchar2(20),   4  age number(3),   5  gender varchar2(8)   6  ); insert into customer(id,name,age,gender) values (1,'zhanghong',1,'male'); insert into customer(id ...
      在一对多依赖的对象关系中, 如果这个'一'对象状态发生了变化,那么它所有依赖的'多'对象都应该被通知,然后做相应的变化,这就是观察者模式.  就如同'多'对象一直在观察'一'对象的状态变化一样.       在观察者模式中最重要的俩个对象分别是:Observable和Observer对象.它们的关系可总结如下: 1. Observable和Observer对象是一对多的关系,也就是说一旦Observable对象状态变化,它就要负责通知所有和它有关系的Observer对象,然后做相应的改变. 1. Observable对象不会主动去通知各个具体的Observer对象其状态发生了变 ...

博客收藏

    博客分类:
  • Java
J2SE   How to Write an Equality Method in Java   Design Pattern   http://en.wikipedia.org/wiki/Double-checked_locking http://en.wikipedia.org/wiki/Design_pattern_%28computer_science%29     JavaScript   http://www.javascriptkit.com/javatutors/trycatch.shtml
String是java中经常使用的类,如果使用不当,也有可能出现内存泄露。例如执行以下代码就可能出现内存不够: public class Test { private String large = new String(new char[100000]); public String getSubString() { return this.large.substring(0, 2); } public static void main(String[] args) { ArrayList<String> subStrings = new Arr ...
在有些JVM中,Integer类型从-128到127的范围内会放回用一个对象,所以用”==“ 的时候,同样大小的Ingeter俩个对象会返回TRUE。而超过这个范围,就可能返回False了。 Integer i1 = 300; Integer i2 = 300; if (i1 == i2) System.out.println("i1 and i2 is equal"); else System.out.println("i1 and i2 is not equal ");   运行 ...
p.setX(p.getX() + 1); System.out.println(coll.contains(p)); // prints false (probably)      java.lang.Object类中定义了equals方法,其所有的子类都可以进行重写。但是,有时候不适当的重写会导致一些错误,特别是在使用HashMap,HashSet等的时候。比如以下几种情况重写equals方法会产生不一致的行为: 1. 定义equals方法的时候,方法署名不对; 2.修改了equals方法,却没有修改hashCode方法; 3.使用变量来定义equals方法; 4.在父类 ...
收藏几篇关于String很好的文章: Under the Hood of Java Strings Concatenating Performance   Four Things to Remember about java.lang.String   String Performance   Performance improvement techniques in String and StringBuffer  
      很多人都有写这样代码的经历:                     <a href="#" onclick="doSomething()">click me</a> 其实这样写非常不好,因为页面虽然没有跳转,但是页面会回到顶端。如果在href中链接到一个锚点,eg: href="#bookmark" ,它就会调到<a href="bookmark">的地方。那么我们什么也不用,就不会有什么情况发生了吧,其实不然,这样会在浏览器浏览历史中新增一条记录。 ...
在使用sqlplus的时候遇到了这个问题,记录以下解决方法,在glogin.sql中加入以下代码: define _editor='vi' set editfile /home/oracle/afiedt.buf  
      我们都知道在java中有静态初始化块,也就是static{} ,他们会在类被加载时候调用。如果类中含有实例初始化块,也就是{}块,它会在什么时候被调用呢。 我们来看个例子: public class InstanceInit { public InstanceInit() { System.out.println("InstanceInit created"); } static{ System.out.println("InstanceInit static Initialzer"); ...
instanceof表示此操作符左边的变量的实际类型是否是右边类型或右边子类型的一个实例,用法:                  a instanceof B   Class1.isAssignableFrom(Class2) 表示Class1类型可不可以引用一个Class2表示的实例。也就是Class1 c = new Class2()是否正确。也就是判断Class2类型是否是Class1类型或且子类型:   例如 class C extends B{}; class B extends A{}; A a = new B(); System.o ...
JSF2中注解的应用,使得JSF2很容易与EJB3,JPA2集成。   首先,定义一个业务接口,作为EJB的一个本地接口:   @Local public interface CustomerSessionBeanI { public Customer getById(long id); public List<Customer> findAll(); public void deleteById(long id); public void save(Customer c); }   定义一个SessionBean来实现这个接口:   @State ...
1. 首先创建数据库表   SQL> create table customer(   2  id number(8) not null primary key,   3  name varchar2(20),   4  age number(3),   5  gender varchar2(8)   6  );  
写过一篇关于JSF2中Validator的实现,但那是JSF1中的实现方式,后来了解到JSF2中的实现其实更简单,其实只需要俩步: 1.定义Validator类,并实现Validator接口,并使用@FacesValidator注解 2.在页面中应用: EmailValidator: @FacesValidator(value="com.bond.validator.EmailValidator") public class EmailValidator implements Validator { private String pattern=" ...
在Tomcat中配置DataSource及调用需要三步: 1.server.xml中加入以下片段: <Resource name="jdbc/oracle" auth="Container" type="javax.sql.DataSource" driverClassName="oracle.jdbc.OracleDriver" url="jdbc:oracle:thin:@127.0.0.1:1521:ora1" ...
Global site tag (gtag.js) - Google Analytics