Ê×Ò³ | ×ÊѶ¶¯Ì¬ | linux»ù´¡ | ϵͳ¹ÜÀí | ÍøÂç¹ÜÀí | ±à³Ì¿ª·¢ | linuxÊý¾Ý¿â | ·þÎñÆ÷¼¼Êõ | linuxÏà¹Ø | linuxÈÏÖ¤ | ǶÈëʽ | ÏÂÔØÖÐÐÄ | רÌâ | linuxÕÐƸ | ¾µÏñÕ¾
OKLinuxÖÐÎļ¼ÊõÕ¾
¡¤ÉèΪÊ×Ò³
¡¤¼ÓÈëÊÕ²Ø
¡¤ÁªÏµÎÒÃÇ
ϵͳ¹ÜÀí: ÖÐÎÄ»·¾³ ϵͳ¹ÜÀí ×ÀÃæÓ¦Óà Äں˼¼Êõ | Linux»ù´¡: »ù´¡ÈëÃÅ °²×°ÅäÖà ³£ÓÃÃüÁî ¾­Ñé¼¼ÇÉ Èí¼þÓ¦Óà | LinuxÊý¾Ý¿â: Mysql Postgre Oracle DB2 Sybase other
ÍøÂç¹ÜÀí: ÍøÂ簲ȫ ÍøÂçÓ¦Óà Linux·þÎñÆ÷ »·¾³ÅäÖà ºÚ¿Í°²È« | ±à³Ì¿ª·¢: PHP CC++ Python Perl Shell ǶÈëʽ¿ª·¢ java jsp | PHP¼¼Êõ: PHP»ù´¡ PHP¼¼ÇÉ PHPÓ¦Óà PHPÎÄÕª
Linux×ÊѶ LinuxÕÐƸ LinuxרÌâ Apache | LinuxÏà¹Ø: Ó²¼þÏà¹Ø Linux½â¾ö·½°¸ LinuxÈÏÖ¤ ÆóÒµÓ¦Óà ÆäËüUnix | Ïà¹ØÏÂÔØ: ×ÊÁÏÏÂÔØ ²Î¿¼ÊÖ²á ¿ª·¢¹¤¾ß ·þÎñÆ÷Àà Èí·ÓÉ ÆäËü
 ¼¼ÊõËÑË÷:
»áÔ±ÖÐÐÄ ×¢²á»áÔ± ¸ß¼¶ËÑË÷  
  ¡ú µ±Ç°Î»ÖÃ:Ê×Ò³>±à³Ì¿ª·¢>java>JAVA¼¼Êõ>ÕýÎÄ

ÃæÏòJava¿ª·¢ÈËÔ±db4oÖ¸ÄÏ:Êý×éºÍ¼¯ºÏ

http://www.oklinux.cn  2008-03-07  À´Ô´: ccidnet baocl  »áÔ±ÊÕ²Ø  ÓοÍÊղؠ ¡¾´ó ÖРС¡¿ 

´¦Àí¶àÑùÐÔ¹Øϵ

ÊæÊʵļÒÍ¥Éú»î»áµ¼ÖÂÒ»¸ö»ò¸ü¶à ¡°Ð¡È˶ù¡± ½µÁÙµ½Õâ¸ö¼ÒÍ¥¡£µ«ÊÇ£¬ÔÚÔö¼ÓСº¢µ½¼ÒÍ¥ÖÐ֮ǰ£¬ÏÈÈ·±£ Person ÕæÕýÓеط½¿Éס¡£¸øËûÃÇÒ»¸ö¹¤×÷³¡Ëù£¬»òÕß»¹ÓÐÒ»¸öºÜºÃµÄÏÄÈնȼÙÎÝ¡£Ò»¸ö Address ÀàÐÍÓ¦¸Ã¿ÉÒÔ½â¾öËùÓÐÕâÈý¸öµØ·½¡£


Çåµ¥ 1. Ìí¼ÓÒ»¸ö Address ÀàÐ͵½ Person ÀàÖÐ


package com.tedneward.model;

public class Address
{
public Address()
{
}

public Address(String street, String city, String state, String zip)
{
this.street = street; this.city = city;
this.state = state; this.zip = zip;
}

public String toString()
{
return "[Address: "
"street=" street " "
"city=" city " "
"state=" state " "
"zip=" zip "]";
}

public int hashCode()
{
return street.hashCode() & city.hashCode() &
state.hashCode() & zip.hashCode();
}

public boolean equals(Object obj)
{
if (obj == this)
return this;

if (obj instanceof Address)
{
Address rhs = (Address)obj;

return &&
this.city.equals(rhs.city) &&
this.state.equals(rhs.state) &&
this.zip.equals(rhs.zip));
}
else
return false;
}

public String getStreet() { return this.street; }
public void setStreet(String value) { this.street = value; }

public String getCity() { return this.city; }
public void setCity(String value) { this.city = value; }

public String getState() { return this.state; }
public void setState(String value) { this.state = value; }

public String getZip() { return this.zip; }
public void setZip(String value) { this.zip = value; }

private String street;
private String city;
private String state;
private String zip;
}


¿ÉÒÔ¿´µ½£¬Address Ö»ÊÇÒ»¸ö¼òµ¥µÄÊý¾Ý¶ÔÏó¡£½«ËüÌí¼Óµ½ Person ÀàÖÐÒâζ×Å Person ½«ÓÐÒ»¸öÃûΪ addresses µÄ Address Êý×é×÷Ϊ×ֶΡ£µÚÒ»¸öµØÖ·ÊǼÒͥסַ£¬µÚ¶þ¸öÊǹ¤×÷µØÖ·£¬µÚÈý¸ö£¨Èç¹û²»Îª null µÄ»°£©ÊǶȼÙÎݵØÖ·¡£µ±È»£¬ÕâЩ¶¼±»ÉèÖÃΪ protected£¬ÒԱ㽫À´Í¨¹ý·½·¨À´·â×°¡£

Íê³ÉÕâЩÉèÖúó£¬ÏÖÔÚ¿ÉÒÔÔöÇ¿ Person À࣬ʹ֧֮³ÖСº¢£¬ËùÒÔΪ Person ¶¨ÒåÒ»¸öÐÂ×ֶΣºÒ»¸ö Person ArrayList£¬ËüͬÑùÒ²ÓÐһЩÏà¹ØµÄ·½·¨£¬ÒÔ±ã½øÐÐÊʵ±µÄ·â×°¡£

½ÓÏÂÀ´£¬ÓÉÓÚ´ó¶àÊýСº¢¶¼Óи¸Ä¸£¬»¹½«Ìí¼ÓÁ½¸ö×Ö¶ÎÀ´±íʾĸÇ׺͸¸Ç×£¬²¢Ôö¼ÓÊʵ±µÄ accessor/mutator ·½·¨¡£½«Îª Person ÀàÔö¼ÓÒ»¸öеķ½·¨£¬Ê¹Ö®¿ÉÒÔ´´½¨Ò»¸öÐ嵀 Person£¬Õâ¸ö·½·¨ÓÐÒ»¸öÌùÇеÄÃû³Æ£¬¼´ haveBaby¡£´ËÍ⻹Ôö¼ÓһЩҵÎñ¹æÔò£¬ÒÔÖ§³ÖÉúСº¢µÄÉúÎïѧÐèÇ󣬲¢½«Õâ¸öеÄС Person Ìí¼Óµ½ÎªÄ¸Ç׺͸¸Ç××ֶδ´½¨µÄ children ArrayList ÖС£×öÍêÕâЩ֮ºó£¬ÔÙ½«Õâ¸öÓ¤¶ù·µ»Ø¸øµ÷ÓÃÕß¡£

Çåµ¥ 2 ÏÔʾ£¬Ð¶¨ÒåµÄ Person Àà¿ÉÒÔ´¦ÀíÕâÖÖ¶àÑùÐÔ¹Øϵ¡£

Çåµ¥ 2. ¶¨ÒåΪ¶àÑùÐÔ¹ØϵµÄ¼ÒÍ¥Éú»î


package com.tedneward.model;

import java.util.List;
import java.util.ArrayList;
import java.util.Iterator;

public class Person
{
public Person()
{ }
public Person(String firstName, String lastName, Gender gender, int age, Mood mood)
{
this.firstName = firstName;
this.lastName = lastName;
this.gender = gender;
this.age = age;
this.mood = mood;
}

public String getFirstName() { return firstName; }
public void setFirstName(String value) { firstName = value; }

public String getLastName() { return lastName; }
public void setLastName(String value) { lastName = value; }

public Gender getGender() { return gender; }

public int getAge() { return age; }
public void setAge(int value) { age = value; }

public Mood getMood() { return mood; }
public void setMood(Mood value) { mood = value; }

public Person getSpouse() { return spouse; }
public void setSpouse(Person value) {
// A few business rules
if (spouse != null)
throw new IllegalArgumentException("Already married!");

if (value.getSpouse() != null && value.getSpouse() != this)
throw new IllegalArgumentException("Already married!");

spouse = value;

// Highly sexist business rule
if (gender == Gender.FEMALE)
this.setLastName(value.getLastName());

// Make marriage reflexive, if its not already set that way
if (value.getSpouse() != this)
value.setSpouse;
}

public Address getHomeAddress() { return addresses[0]; }
public void setHomeAddress(Address value) { addresses[0] = value; }

public Address getWorkAddress() { return addresses[1]; }
public void setWorkAddress(Address value) { addresses[1] = value; }

public Address getVacationAddress() { return addresses[2]; }
public void setVacationAddress(Address value) { addresses[2] = value; }

public Iterator£¼Person£¾ getChildren() { return children.iterator(); }
public Person haveBaby(String name, Gender gender) {
// Business rule
if )
throw new UnsupportedOperationException("Biological impossibility!");

// Another highly objectionable business rule
if (getSpouse() == null)
throw new UnsupportedOperationException("Ethical impossibility!");

// Welcome to the world, little one!
Person child = new Person(name, this.lastName, gender, 0, Mood.CRANKY);

¹²4Ò³: ÉÏÒ»Ò³ 1 [2] [3] [4] ÏÂÒ»Ò³

ÉÏһƪ£º¿ª·¢¿ò¼Ü--ÔÚTomcatÏÂÖÐÎĵij¹µ×½â¾ö   ÏÂһƪ£ºJSPµ÷ÓÃSQL server 2000µÄ´æ´¢¹ý³Ì


¡¾ÊÕ²ØÓÚÊղؼС¿ ¡¾ÆÀÂÛ¡¿ ¡¾ÍƼö¡¿ ¡¾´òÓ¡¡¿ ¡¾¹Ø±Õ¡¿
Ïà¹ØÎĵµ
¡¤JSPµ÷ÓÃSQL server 2000µÄ´æ´¢¹ý³Ì
¡¤JAVA×ÛºÏ--ÈçºÎÕÆÎÕJDK1.5ö¾ÙÀàÐÍ
¡¤JAVA¼¼Êõ:AJAX jspÎÞË¢ÐÂÑéÖ¤ÂëʵÀý
¡¤Ê¹ÓÃprototype.jsдµÄ¶ÁÈ¡RSSµÄÀý×Ó
·¢±íÆÀÂÛ
ÃÜÂ룺 ÄäÃûÆÀÂÛ
ÆÀÂÛÄÚÈÝ£º

(²»³¬¹ý250×Ö£¬ÐèÉóºËºó²Å»á¹«²¼£¬Çë×Ô¾õ×ñÊØ»¥ÁªÍøÏà¹ØÕþ²ß·¨¹æ)
 
  ×îÐÂÎĵµ
¡¤JSPµ÷ÓÃSQL server 2000µÄ´æ´¢¹ý³Ì
¡¤JAVA×ÛºÏ--ÈçºÎÕÆÎÕJDK1.5ö¾ÙÀàÐÍ
¡¤JAVA¼¼Êõ:AJAX jspÎÞË¢ÐÂÑéÖ¤ÂëʵÀý
¡¤Ê¹ÓÃprototype.jsдµÄ¶ÁÈ¡RSSµÄÀý×Ó
  ÔĶÁÅÅÐÐ
¡¤JAVA¼¼Êõ:AJAX jspÎÞË¢ÐÂÑéÖ¤ÂëʵÀý
¡¤JAVA×ÛºÏ--ÈçºÎÕÆÎÕJDK1.5ö¾ÙÀàÐÍ
¡¤JSPµ÷ÓÃSQL server 2000µÄ´æ´¢¹ý³Ì
¡¤Ê¹ÓÃprototype.jsдµÄ¶ÁÈ¡RSSµÄÀý×Ó
ÍøÕªÊÕ²Ø: