| Ajaxフレームワーク ユーザーズガイド |
目次
索引
![]()
|
| 第4章 アプリケーションの開発 | > 4.7 アプリケーションの開発例 |
Interstage Studioを利用して、ビジネスクラスを作成します。
Interstage Studioの操作方法については、“ビジネスクラスの作成”を参照してください。
ビジネスクラス作成時には、以下の情報を入力します。
|
入力データ |
入力情報 |
コマンド |
メソッド |
復帰値型 |
|---|---|---|---|---|
|
入力データなし |
指定しない |
指定しない |
startup |
void |
|
データBean |
クラス名:ConditionBean |
search |
search |
object |
作成されたビジネスクラスに、以下の記述を追加します。
import宣言部分の記述内容
import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Date; import java.util.Locale; import java.util.TimeZone; import java.util.Vector; |
startupメソッド部分の記述内容
/* 初期化処理 */
public void startup(DispatchContext context) {
ConditionBean conditionBean = new ConditionBean();
context.setResponseBean("body", conditionBean);
} |
searchメソッド部分の記述内容
/* 検索処理 */
public Object search(DispatchContext context, ajaxSample.ConditionBean dataBean) {
ListBean listBean = new ListBean();
AjaxSampleApplication application = (AjaxSampleApplication)context.getApplicationProfile();
ArrayList listData = application.getListData();
Vector v = new Vector();
for (int i = 0 ; i <listData.size() ; i++) {
RecordBean orderBean = (RecordBean)listData.get(i);
if (matches(dataBean, orderBean)) {
v.add(orderBean);
}
}
listBean.setList(v);
return listBean;
} |
matchesメソッド(注)の記述内容
/* 検索処理サブルーチン */
private boolean matches(ajaxSample.ConditionBean dataBean, RecordBean orderBean) {
String customer = dataBean.getCustomer();
if (customer != null && customer.length()!=0 && !customer.equals((String)orderBean.getCustomer())) {
return false;
}
String charge = dataBean.getCharge();
if (charge != null && charge.length()!=0 && !charge.equals((String)orderBean.getCharge())) {
return false;
}
Date orderDate = null;
SimpleDateFormat formatter = new SimpleDateFormat("yyyy/MM/dd",Locale.JAPAN);
formatter.setTimeZone(TimeZone.getDefault());
try {
orderDate = formatter.parse(orderBean.getOrderDate());
} catch(ParseException e) {
e.printStackTrace();
}
Date fromDate = dataBean.getFromDate();
if (fromDate != null) {
if (orderDate.before(fromDate)) {
return false;
}
}
Date toDate = dataBean.getToDate();
if (toDate!= null) {
if (orderDate.after(toDate)) {
return false;
}
}
return true;
} |
注) このメソッドは自動生成されません。
Interstage Studioを利用してビジネスクラスを作成すると、自動的にコマンドマップ(commands.map)が作成されます。
コマンドマップの記述内容
# 初期化処理 ;=ajaxSample.AjaxSampleHandler.startup # 検索処理実行 ajaxSample.ConditionBean;search=ajaxSample.AjaxSampleHandler.search |
コマンドマップの詳細は、“Apcoordinator ユーザーズガイド”を参照してください。
ページマップ(pages.map)に必要な定義を追加します。
ページマップの記述内容
# pages.map ajaxSample.ConditionBean;=search.jsp |
ページマップの詳細は、“Apcoordinator ユーザーズガイド”を参照してください。
目次
索引
![]()
|