(27)【サーバサイドの作成】
アドレス帳サンプルアプリの続きです。
では、今回はサーバーサイドを作成します。
同一プロジェクト内で、パースペクティブをjavaに切り替え、新規javaクラスを作成します。
ソースはWEB-INF/src内にパッケージつきで作成されます。
今回作成するファイルはサービスクラスとValueObjectです。
■サービスクラス
(データベースなど)若干省略していますが・・・。これはこれでちゃんと動きます。
package address.service; import java.util.HashMap; import java.util.Collection; import java.util.Map; import address.vo.Address; /** * リモートサービスクラス */ public class AddressService { private static Map<String,Address> map = new HashMap<String,Address>(); private static int count = 0; /** * 追加 */ public int insert(Address dto){ dto.setAddressid(Integer.toString(++count)); map.put(dto.getAddressid(),dto); return 1; } /** * 修正 */ public int update(Address dto){ map.remove( dto.getAddressid() ); map.put(dto.getAddressid(),dto); return 1; } /** * 削除 */ public int remove(Address dto){ map.remove(dto.getAddressid()); return 1; } /** * 全件検索 */ public Collection<Address> select(){ return map.values(); } }
■ValueObject(DTO)クラス
AS側のValueObjectとプロパティを合わせましょう。
package address.vo; import java.io.Serializable; public class Address implements Serializable{ private static final long serialVersionUID = 1L; /* ID(AutoIncrement) */ private String addressid; /* 氏名 */ private String name; /* 住所 */ private String address; /* 電話番号 */ private String telno; public String getAddress() { return address; } public void setAddress(String address) { this.address = address; } public String getAddressid() { return addressid; } public void setAddressid(String addressid) { this.addressid = addressid; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getTelno() { return telno; } public void setTelno(String telno) { this.telno = telno; } }
次回は、remoting-config.xmlの設定です。