びわのお花屋さん研究所TOPへ 花屋になりたい人のためのサポートサイトびわのお花屋さん研究所
花屋さんを開くためにはびわとよねのお花屋さん花屋さん推薦図書

「熱い」前向きフラワーデザイナープリザーブドフラワー

経営から見た花屋マーケティングから見た花屋インターネットから見た花屋

花情報Link集びわのことお問い合わせ | 花宣言!

 

花屋さんを開くためには
目次へ


はな・花・華花屋さんを開くためには

第13回 開発中の独り言・3 SSI を使う!

Java Servletで開発をしようと決めたのはいいが、これがなかなか進まない。この連載ではJava Servletの基礎知識となりそうである。楽しみにしている方、ごめんなさい。Java Servletを習得するにはもう少し時間がかかりそうである。

先月10/25、26にInpriseのDeveloper Conferenceが開催された。10/26にDelphi、C++Builder、Jbuilderのセッションに参加することができたので、少し紹介しておこう。

Delphi5の新しい機能、
Delphi5でのデータベース接続の新しい機能として、ADO(Active Data Object)を使えることができるようになった。したがってBoland Database Engineを使わなくてもOLEODBCで接続できるようになった。それによってパフォーマンスが低下するのか向上するのかの検証はまだ行われてはいないらしいが、開発者の選択肢が増えたことは喜ばしいことであろう。Oracleを利用して開発を行っている場合、OO4O(Oracle Object For OLE)を使いたい人が結構いるようで、その人たちの多くはODBCを信じていない(オラクル社が提供しているODBCの性能の問題もあるが。。。)。なおかつ、BDEなんか(「なんか」というとインプライズ社に怒られるかもしれないが)知らない人もいる。僕は個人的にBDEを信用している。今後、機会があれば性能比較など試みてみたい。

分散?てなあに
「Javaを使った開発なんて当たり前、Servlet、まだ使ってないの?」という勢いのJavaのあるセッションでは、数年前から言われている分散について語られていた。CORBAをつかった分散処理である。
「分散処理はJavaの必然である」と主張していた。目的は「軽量クライアントをつくることである」と。3層よりも多くの多層環境において、いかにクライアント側で処理を少なくするかが課題となる。軽量にすることでそれぞれのオブジェクトを変更しようというときの作業も他に影響を及ぼさないようにすることもできる。しかしながら、ここですべてを説明しきれないし、僕の理解も中途半端である。これも何か別の時に改めて考えたい内容である。


カンファレンスの話はとりあえずこの辺で。。。

SSI って何?
Java ServletってHTMLを生成するものなのかと思ってしまいそうになったが、SSI(Server Side Include)というもの見つけた。見つけたというかAppletでできるのにServletでできないのはヘンだなと思っていたのだ。簡単に言うとHTMLの間にServletの出力結果を埋め込むものだ。Appletと同じように
<Servlet code="Servlet1">
</Servlet>
のようにしてつかうものだ。
決まりごととして Java Web Server では、ファイルの拡張子を .html ではなく .shtml にする必要がある。

SSI.shtml
<HTML>
<Head><Title> Server Side Include Sample </Title></Head>
<Body>
Server Side Includeのサンプルです。<BR>
ここにServletを埋め込みます。<BR>
<HR>
<Servlet code=jp.tomo.FirstServlet>
</Servlet>
<HR>
</Body>
</HTML>


HTMLからServletに変数を渡すには。。。
HTMLからServletに変数を渡す場合はどうしたらいいか。Appletの場合はparamタグを使ってあげるだけだが、さて、Servletでは。。。
結論から言うと同じだ。paramタグを使うのである。
まずは、HTMLとJavaのソースを見ていただきたい。

Paramssi.shtml
<HTML>
<Head>
<Title>Server Side Include Sample
</Title>
</Head>
<Body>
Server Side Includeのサンプルです。<BR>
ここにServletを埋め込みます。<BR>
変数としてServletに渡します。<BR>
<HR>
<Servlet code=jp.tomo.ParamServlet>
<Param name=mess Value="Flower Box よろしくね!">
</Servlet>

<HR>
</Body>
</HTML>

ParamServlet.java
/*
* ParamServlet.java 99/11/02
*
*/
package jp.tomo;

import java.io.PrintWriter;
import java.io.IOException;
import javax.servlet.GenericServlet;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.ServletException;

public class ParamServlet extends GenericServlet {
 public void service(ServletRequest request,
           ServletResponse response)
 throws ServletException, IOException {

  String mes = request.getParameter("mess");
  response.setContentType("text/html; charset=iso-2022-jp");
  PrintWriter pw = response.getWriter();

  pw.println("<h1><center>");
  pw.println(getP(mes));
  pw.println("</center></H1>");
  pw.flush();
  pw.close();
 }
 private String getP(String str)
  throws IOException {
    String data = new String(str.getBytes("8859_1"),"JISAutoDetect");
  return data;
 }
}

最初、getP関数を作らずにそのまま表示させたら、日本語が出力されないのだ。これには困った。もちろん英数半角は問題ないのであるが。。。
いろいろ、参考書をあたって見ると変換にはgetBytes("8859_1"),"JISAutoDetect"を使えば良いことが判明した。そこでgetP関数を作ることにした。きた文字をSJISに変えてしまえば良いのだから。。。と。久しぶりにプログラマー心が顔をのぞかせた。そういえば、マジにプログラムを最近書いていないからなー。

みなさんもやってみてください。わかってしまうとどうってことないですけど。
開発環境:JDK1.2.2 JSDK2.0 JWS2.0

次回はJavaServerPageでも紹介しようかなと考えています。ASPではなくJSPですよ。これからは。(^^Y

※なお、文中のタグはソースを表示するために全角のになっています。
そのままコピーして使う場合には注意してください。

今週の花言葉:ストック・紫(おおらかな愛情)

(びわ)

お花屋さんを開くためには
目次

びわのお花屋さん研究所

Open! 「プリザーブドフラワーが作りたい」が人気です。
お試しキットもあります。プリザーブドフラワー花大学

プリザーブドフラワーはフローリストを変える

「素敵な」お花屋さんから「売れる素敵な」お花屋さんに変身-花大学.com HPをブログでリニューアルしましょう!「花大学.com」


「フラワーライフスタイルプランナー:びわ」
内容によって不適切な表現や誤解されてしまう表現があるかもしれませんがどうぞお許しください。
このサイトに関する著作権はTSインタラクティブ株式会社に帰属します。 無断転載などは一切お断りいたします。
Google

Copyright(c) TSInteractive Inc. All rights Reserved 1999-2004花屋になりたい人のためのサポートサイトびわのお花屋さん研究所