dポイントプレゼントキャンペーン実施中!

Oracle10gを用いて下記のようなデータベースを作成し、それをWebアプリケーション上でサーブレットにより、さまざまな処理をするプログラムを作っています。

下記のような顧客リストがあるとします。

------------------------------------------
| 客先コード | 客先名 | 客先名カナ |
|----------------------------------------|
| 000000001 | 加藤商店 | カトウショウテン |
|----------------------------------------|
| 000000002 | 河東商店 | カトウショウテ2 |
|----------------------------------------|
| 000000003 | 木村商事 | キムラショウジ  |
|----------------------------------------|
   ・
   ・
   ・
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

例えば、この中からカナ前方一致検索で「カトウ」と入力すると

0001 加藤商店 カトウショウテン
0002 河東商店 カトウショウテ2

と表示され、上記「加藤商店」、「河東商店」にリンクを張りたいと思ってます。

これを実現するには、jspであれば、Jakarta TaglibsプロジェクトのJSTLの<c:url></c:url>タグを用いれば、各項目を別々のリンクにすることを実現できるように思います。

今回のような処理をJSTLを用いずに実現する方法を探しています。

説明がわかりにくいとは思いますが、ご教示いただけると幸いです。

A 回答 (3件)

> 検索した結果にリンクを張るわけですから、各項目にハイパーリンクを付ける方法では対応できない気がしまして…



いいえ、もちろん「客先コードの値」と「客先名」は変数になります。

だからJSTLやEL式を使わないで書くなら↓みたいになります。
※客先情報はCustomerクラスで定義

<% List list = request.getAttribute("customerList");
for (int i=0; i<list.size(); i++) {
Customer customer = (Customer)list.get(i); %>
<a href="<%= request.getContextPath() %>/hoge?客先コード=<%= customer.getCustomerCode() %>"> <%= customer.getCustomerName() %></a>
<% } %>
    • good
    • 0
この回答へのお礼

なるほど!!分かりました。

こちらで試してみます。
ありがとうございました。

お礼日時:2007/11/19 13:49

回答1は、JSTLってかいてあったから、Javaを前提に回答しましたが、言語はJavaですか?



PHPやPerlなら別のやり方になります。

この回答への補足

おっしゃるとおり、使用言語はJavaです。
サーブレットもしくはjspで処理をしようと考えています。

補足日時:2007/11/16 13:57
    • good
    • 0

回答になっているか分かりませんが、フレームワークとしてStrutsを使っているとしたら↓みたいな感じはいかがですか?



<a href="<%= request.getContextPath() %>/hoge.do?客先コード=0001">加藤商店</a>

<a href="<%= request.getContextPath() %>/hoge.do?客先コード=0002">河東商店</a>

この回答への補足

Strutsは使っていません。
そういった方法もあるんですか。勉強になりました。

上記のようなコードであれば、あらかじめ「加藤商店」「河東商店」にリンクを張ることが前提となってしまわないでしょうか?

検索した結果にリンクを張るわけですから、各項目にハイパーリンクを付ける方法では対応できない気がしまして…

補足日時:2007/11/16 13:52
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!