(#003)
復刻シリーズ 第53弾!!
━━━━━━━━━━━━━━━━━━━━━━ 2001.06.20 Vol.357 ━━━━ □■□ ■□■ 日刊「WEBのツボ」 〜次世代WEBマーケティングを読む〜 □■□ http://www.soho-union.com/ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 配信部数 2284部 【○】本日のお題 「ツボによく利くJAVA & DB」(#003) ━━━━━━━━━━ 福井修@Fsys ▽ Java から DB にアクセスする 前回 「 OSの動向も考慮すると今後の基幹プラットフォーム(DBも含む)は、 『オープンソース』製品が有利です。」という話をしました。 WindowsNT/2000 の IIS の 脆弱さや WindowsXP,Windows 64bit対応に振り回され るのは、避けたいのと、本格的DBが オープンソース で使えるという点で、私は Web-DB連携サーバは Linux + Apache + Tomcat + Java/Servet/JSP + PostgreSQL が、良い と考えております。( クライアントは Windows と IE ) この手のシステム構築には、言語は、「PHP」や「Perl」も候補にあがります。 また 最近「Ruby」の台頭もめざましいものがあります。Java というとJava2 (JDK1.2 以降)が Linux で動作しだしたのは、2000年以降になるので好奇心の強 い技術者でないと、実際に触る場面は少ない状況はありました。しかしながら最近 では 携帯での iアプリ に Java が採用され、また zaurus でも Javaが動きだし、 一気にJavaのすそ野がひろがりつつあります。 また マイクロソフトが提供した ASP(Active Server Pages)と同様な書式で、Web ページの中に <% 〜 %> でくくる形で、プログラムを埋め込むことができる JSP (Java Server Pages)も最近は、一気に解説書も増えて、身近なものになってきて います。 この Webページの中に <% 〜 %> でくくる形で、プログラムを埋め込む書式は ( PHPでは ですが ) 動的なWebページ作成の為の自然な拡張として、受け入 れられ今後とも主流となるでしょう。Ruby の 拡張 eRuby でも<% 〜 %> が使えま す。 すなわち、これまで ASP や PHP でプログラミングしていた層も、JSPへなら 移行しやすい訳です。 ちょっと雰囲気を味わってみましょう。実際に PostgreSQLの郵便番号簿から正規 表現で住所を取り出している例です。 (実際にはエラー処理などがもっと必要ですが) : // ドライバのロード Class.forName("postgresql.Driver"); // データベースへの接続 connection = DriverManager.getConnection(url, user, password); statement = connection.createStatement(); // SQL文の編集 String sql = "select * from postlist "+ "where post_id~'^"+ post_id +"'"; // 問い合わせの実行 resultset = statement.executeQuery(sql); %> <TABLE BORDER CELLPADDING=2 CELLSPACING=0> <TR> <TH ALIGN=center>郵便番号</TH> <TH>都道府県</TH> <TH>市区</TH> <TH>町村</TH> </TR> <% while(resultset.next()){ String pcode = resultset.getString("post_id"); String pref = resultset.getString("ken"); String city = resultset.getString("si"); String town = resultset.getString("tyou"); %> <TR> <TD> <%=postno%></TD> <TD> <%=pref%></TD> <TD> <%=city%></TD> <TD> <%=town%></TD> </TR> <% } %> : どうです。簡単でしょ^^; 但しDBを扱うには、「SQL」言語も使いこなす必要 がありますので、新しい技術要素を一遍にというのは大変なのは事実です。 例えば Windows で HTML と VB ならなんとか という土俵から、LinuxでJavaで 本格DBの土俵へとシフトするには、 1) Linux(Unix) の基礎 (ファイルやエディタの操作など) 2) Apache (WebServer)の設定 3) Tomcat (Servlet/JSPのプラットフォーム)の設定 4) PostgreSQLの設定 5) SQL言語 6) Java言語 7) Servlet/JSP の理解 8) コード(Shift-JIS,EUC,Unicode,JIS..)の理解 などを乗り越える必要があります。 一歩ずつ一歩ずつ^^ 今後ますますニーズが高まるところの電子商取引に踏み込むには、これらの要素 に加えて XML や SOAP なども使いこなさなくてはなりません。 Web の世界と システムの世界は、シームレスに繋がろうとしています。 その際、 Java と DB の使いこなしは、強力な武器となります。あと オブジェク ト志向スクリプト言語 Ruby の正規表現などでのテキスト操作も強力ですね。 オープンソース部品を使いこなす事で、限られた予算をよりよい問題解決に回す ことができます。 ■ Tomcatを使う「JSPプログラミング」 http://www.atmarkit.co.jp/fjava/rensai/jsp01/jsp01.html http://www.atmarkit.co.jp/fjava/rensai/jsp02/jsp02.html http://www.atmarkit.co.jp/fjava/rensai/jsp03/jps03.html ■ JSPの基礎知識 http://www.atmarkit.co.jp/fjava/javafaq/jsp/jsp01.html http://www.atmarkit.co.jp/fjava/javafaq/jsp/jsp02.html http://www.atmarkit.co.jp/fjava/javafaq/jsp/jsp03.html ■ 前回5/16 以降にも 相次ぐ IISのセキュリティ・ホール情報,くれぐれも “まひ”しないように (閲覧には登録要) http://itpro.nikkeibp.co.jp/members/ITPro/SEC_CHECK/20010522/1/ 【プロフィール】 福井 修 ( FUKUI Osamu )o-fukui@po.iijnet.or.jp fukui@fsys.net 福井システムリサーチ http://fsys.net/ 主幹。システム構築歴25年。 Linux+JSP+PostgreSQLでの郵便番号簿 検索 http://fsys.net/post/ 日本リヌクス協会、神戸商工会議所、情報処理学会 会員 関西ソーホ・デジタルコンテンツ事業協同組合員 流通科学大学 委託SE http://www.umds.ac.jp/