レシピを保存しよう! By 石原 今日の目標  WebApplication において、ファイルを用 いた入出力ができるようになる 保存することの意味がわかるようになる ストリームの使い方がわかるようになる.

Slides:



Advertisements
Similar presentations
物理演算を利用したビデオエフェクタの 作成 浅野益弘. 研究内容 経緯 NiVE ( Nico Visual Effects )用のエフェ クトプラグインの作成 本プラグインにより動画作成にかかる 時間と手間の短縮と省力化を目指す.
Advertisements

レポート書き方. おしいレポート よく調べてある それぞれの、1文の言っていることは正 しい しかし、全体として、何が言いた いのかわからない 内容の重要だが、全体の構成も重 要である.
東京工科大学 コンピュータサイエンス 亀田弘之
7.n次の行列式   一般的な(n次の)行列式の定義には、数学的な概念がいろいろ必要である。まずそれらを順に見ていく。
第 3 回 iPhone アプリ開発勉強会 Objective-C 基礎講座 - インスタンスメソッド - 三井 相和.
9.線形写像.
概要 2009 年 10 月 23 日に、いて座に出現した X 線新星 (XTE J ) を、出現から消滅まで 全天 X 線監視装置 MAXI (マキシ)で観測したところ、 新種のブラックホール新星であることが判明した。 従来のブラックホールを、 多量のガスを一気に飲み込む「肉食系」と.
九州大学 岡村研究室 久保 貴哉 1. 利用中のAPの数の推移 2 横軸:時刻 縦軸:接続要求数 ・深夜では一分間で平均一台、 昼間では平均14台程度の接続 要求をAPが受けている。 ・急にAPの利用者数が増えてく るのは7~8時あたり.
麻雀ゲーム 和島研究室 ソ 小林巧人
5.連立一次方程式.
つくばだいがくについて 芸術専門学群のこと. 筑波大学ってこんなところ 東京教育大学を前身とする大学で、その 創立は日本で最も古い大学のひとつ。 大学の敷地面積は日本で二番目に広い大 学で、やたら坂が多い。移動時間が15分 しかないのに上り坂を三つ超えることがよ くある。
音当て Game 時田 大樹 飛山 雄太郎. 作品の目的 入力として、スイッチを押すと音がスピー カーから流れ、スイッチを離すと、音が止 まる仕組みとなっている。
―本日の講義― ・平均と分散 -代表値 -ぱらつき(分散・標準偏差等) ・Excelによる演習
ノイズ. 雑音とも呼ばれる。(音でなくても、雑 音という) 入力データに含まれる、本来ほしくない 成分.
広告付き価格サービ ス 小園一正. はじめに 世の中には様々な表現方法の広告があり ます。その中でも私たち学生にとって身 近にあるものを広告媒体として取り入れ られている。 価格サービス(無料配布のルーズリー フ)を体験したことにより興味を惹かれ るきっかけとなった。主な目的は、これ.
1章 行列と行列式.
本宮市立白岩小学校. 1 はじめに 2 家庭学習プログラム開発の視点 ① 先行学習(予習)を生かした 確かな学力を形成する授業づく り ② 家庭との連携を図った家庭学習の習慣化.
フーリエ級数. 一般的な波はこのように表せる a,b をフーリエ級数とい う 比率:
プログラミング入門2 第4回 式文 代入式 論理演算子 ループの脱出、スキップ 情報工学科 篠埜 功.
Excelによる積分.
1 6.低次の行列式とその応用. 2 行列式とは 行列式とは、正方行列の特徴を表す一つのスカ ラーである。すなわち、行列式は正方行列からスカ ラーに写す写像の一種とみなすこともできる。 正方行列 スカラー(実数) の行列に対する行列式を、 次の行列式という。 行列 の行列式を とも表す。 行列式と行列の記号.
計算のスピードアップ コンピュータでも、sin、cosの計算は大変です 足し算、引き算、掛け算、割り算は早いです
線形符号(10章).
1 0章 数学基礎. 2 ( 定義)集合 集合については、 3セメスタ開講の「離散数学」で詳しく扱う。 集合 大学では、高校より厳密に議論を行う。そのために、議論の 対象を明確にする必要がある。 ある “ もの ” (基本的な対象、概念)の集まりを、 集合という。 集合に含まれる “ もの ” を、集合の要素または元という。
4.プッシュダウンオートマトンと 文脈自由文法の等価性
1 0章 数学基礎. 2 ( 定義)集合 集合については、 3セメスタ開講の「離散数学」で詳しく扱う。 集合 大学では、高校より厳密に議論を行う。そのために、議論の 対象を明確にする必要がある。 ある “ もの ” (基本的な対象、概念)の集まりを、 集合という。 集合に含まれる “ もの ” を、集合の要素または元という。
信号測定. 正弦波 多くの場合正弦波は 0V の上下で振動する しかし、これでは AD 変換器に入れら れないので、オフ セットを調整して データを取った.
1 9.線形写像. 2 ここでは、行列の積によって、写像を 定義できることをみていく。 また、行列の積によって定義される写 像の性質を調べていく。
通信路(7章).
コンピュータ演習Ⅰ 8月5日 ( 金 ) 2限目 WORD 文書の作成. 第 2 限の課題 Word 2010 を起動する。 – 様々な文字を入力できる。 – 記号、顔文字、難読文字の入力を行う – 入力した文字を訂正する – 入力した文書を保存する。 – 保存した文書を読みだす。 – 保存した文書を、
3.プッシュダウンオートマトンと 文脈自由文法
ファンクジェネレータ は、 信号発生器です. 足の起こし方 左右に広げて 手前に起こします 裏に電源ケーブルの差し込みくちがある ので、電源ケーブルを指します.
ビット. 十進数と二進数 十進数  0から9までの数字を使って 0、1、2、3、4、5、6、7、8、9、 10、11、12 と数える 二進数  0と1を使って 0、1、10、11、100、101、11 0、111 と数える.
3.正方行列(単位行列、逆行列、対称行列、交代行列)
プログラミング演習B ML編 第3回 2010/6/15 (コミ) 2010/6/16 (情報・知能) 住井 ~sumii/class/proenb2010/ml3/
論理回路 第1回. 今日の内容 論理回路とは? 本講義の位置づけ,達成目標 講義スケジュールと内容 受講時の注意事項 成績の評価方法.
伝わるスライド 中野研究室 M2 石川 雅 信. どのようなスライドを作れば良 いか 伝えたいこと.
JPN 312 (Fall 2007): Conversation and Composition Contraction (2); 意見を言う (to express your opinion)
SUPJ2010 Japanese Ⅱ( A ) Elementary Japanes e ‐ in twenty hours- Chapter 7.
Three-Year Course Orientation International Course.
7班 加地 健太郎 (MadaiPage 担当) 熊谷 勇人( MapPage 担当) 田原春 勝太 (TopPage 担当) 森 健樹(パワーポイント、 photo 担当)
戦う ML 菊地時夫 (Mailman Cabal) (2005/9/17 Open Source Conference 2005)
C言語応用 構造体.
Servlet 入門 大岩研究室 川村昌弘. そもそも WEB アプリってなんやね ん n この研究会のテーマは『 WEB アプリケー ションの開発』でした. n じゃぁ WEB アプリケーションって何です か? o WEB アプリってどんなものがありますか? 検索エンジン 乗換え案内サイト 翻訳.
実装の流れと 今後のスケジュール 03k0014 岸原 大祐. システム概要 天気データをもとに、前向き推論をし ていき、親の代わりに子供に服装、持 ち物、気をつけることなどを教える。
JPN 312 (Fall 2007): Conversation and Composition 文句 ( もんく ) を言う.
SUPJ2010 Japanese Ⅱ( A ) Elementary Japanes e ‐ in twenty hours- Chapter 8.
HSPによる学習機能付き シューティングゲームの製作
1 中野研究室 4 年ゼミのイロハ 斉藤(修士 2 年) ( 2009 年 ”4 年ゼミのイロハ ” を参考に作りました)
言語とジェンダー. 目的 言語には、性的な存在である人間の自己認識や 世界認識を決定する力が潜んでいる。 – 言語構造の面(言語的カテゴリー ) – 言語運用の面 日常に潜む無意識の言語の力を、記述し、意識 化することが本講義の目的である。 同時に、さまざまな言語、さまざまな文化には、 それぞれに特徴的な問題があり、ジェンダーの.
1 プログラミング言語論 第13回 プログラムの意味論と検証 (2) 表示的意味論 担当:犬塚. 2 表示的意味論 denotational semantics  表示的意味論では、プログラムの要素とそれが 意味するものを対応付ける。 変数 式 文 A B … A+2 2B+C A:=A+2 if.
Elementary Japanese ‐in twenty hours- Chapter 9
プログラミングⅠ( 2 組) 第 1 回 / pLB1.pptx.
「ネット社会の歩き方」レッスンキット プレゼンテーション資料集 15. チャットで個人情報は 言わない プレゼンテーション資料 著作権は独立行政法人情報処理推進機構( IPA )及び経済産業省に帰属します。
プログラミング入門2 第3回 複合文、繰り返し 情報工学科 篠埜 功.
実験5 規則波 C0XXXX 石黒 ○○ C0XXXX 杉浦 ○○ C0XXXX 大杉 ○○ C0XXXX 高柳 ○○ C0XXXX 岡田 ○○ C0XXXX 藤江 ○○ C0XXXX 尾形 ○○ C0XXXX 足立 ○○
SUPJ2010 Japanese Ⅱ( A ) Elementary Japanes e ‐ in twenty hours- Review of Japanese Ⅰ (B)
ことばとコンピュータ 2007 年度 1 学期 第 1 回. 2 ことばとコンピュータ 授業科目名:言語情報処理論 授業題目名:ことばとコンピュータ 履修コード: 5067 教室: 323 一学期開講 授業の進め方 – 基本的に講義中心ですすめ,時々コンピュー タを使う.
オセロの思考アルゴリズムについて 1103072 岩間 隆浩.
親子のための 小学校 保護者用 日時: 年 月 日( ) 講師:. 22 今日のセミナーを通じて考えること ・子どもたちのネット・携帯 最新事情 ・知っておいて欲しい ネット関連のトラブル ・いまいちど確認 ネット社会の特性 ・すぐに使える トラブル対応策 ・これで安心 情報モラルのポイント ・子育てのポイント.
LANG3910 Japanese Ⅲ Lesson 14 依頼・現在進行形. 学習項目 1. 「て -form 」 2. 依頼表現 An expression of request 3. 相手の意向を尋ねる Ask someone’s mind 4. 現在進行形 Actions in Progress.
NO!END!NO!CLEAR ! J チーム 渡邊光児 小山内彩子 下山直城. 役割 渡邊光児 ゲームオーバー画面の作成、ライフの絵作成 小山内彩子 ゲーム内のプログラム、主人公と敵と背景作 成 下山直城 タイトル画面の作成.
小島 肇  Windows ではアンチウイルスソフトウェアは 必須だが、「入れれば安心」というものでは ない  Mac, Linux における費用対効果はかなり低い  現時点ではマルウェアは流行っていないから  Windows を併用している場合は別.
音の変化を視覚化する サウンドプレイヤーの作成
プログラミングの基礎知識 プログラミングの手順と重要概念 アルゴリズム. プログラミングの手順 コーディング エディタなどでコードを記述 コンパイル・インタープリタ 実行可能な形に翻訳 デバッグ(虫取り、不具合の調整) 完成!
親子のための 小学校 保護者用. 2 今日のセミナーを通じて考えること ・子どもたちのネット・携帯 最新事情 ・知っておいて欲しい ネット関連のトラブル ・いまいちど確認 ネット社会の特性 ・すぐに使える トラブル対応策 ・これで安心 情報モラルのポイント ・子育てのポイント いろいろ ・相談窓口と参考情報.
本文. 考えながら読みましょ う 「いろいろなこと」( 3 行目)は何で すか 「①電話料金はコンビニで支払いをしていま す。いつでも払えますから、便利です。」 「②夕食はコンビニで買います。お弁当やお かずがいろいろありますから。」今、若者に 人気のあるコンビニは、いろいろなことをす るのに非常に便利な場所になった。
日本語きほん文法の復習 Basic Japanese Grammar Review
2015/11/19. To foster Historical Thinking Skill by Creating Story Necessary Relationships and Elements of Characters In historical learning, historical.
英語勉強会 名手⇒詫間 2015/10/22. 原文 This study says acquiring motor skills support system. There is how to acquire moor skills that coach advises learner. Motor.
Presentation transcript:

レシピを保存しよう! By 石原

今日の目標  WebApplication において、ファイルを用 いた入出力ができるようになる 保存することの意味がわかるようになる ストリームの使い方がわかるようになる

前回までの復習  しつこいけど、WEBアプリって何でし た? 人を幸せにするコンセプトをもっている

奥様 WEB のコンセプトを思 い出そう 奥様 WEB コンセプト 主婦の日々の料理をバラエティー豊かに オリジナル料理に注目 「オリジナルレシピ投稿掲示板」 みんなにこんな美味いオリジナル料理を食べてもらいたい(投 稿) もっと色んなオリジナルレシピが知りたいたい(閲覧)

現行「奥様WEB」の 深刻な 問題  自分が投稿したレシピを自分で見るだけ  過去に投稿されたレシピを見ることがで きない 実は掲示板じゃなかった!!!!

じゃあ、どうしよう?  投稿されたレシピを保存できるようにし よう  具体的な手段 ファイル データベース などなど  今回は「ファイル」を使って実装しま しょう

2つのサーブレット 役割分担  レシピを投稿する → ToukouServlet.java レシピの投稿を受け付ける 受け付けたレシピをファイルに書き込む 感謝のメッセージの HTML を出力する  レシピを一覧表示する →IchiranServlet.java レシピをファイルから読み出す レシピ一覧の HTML を出力する

レシピって何だ?  レシピ 作者の名前 投稿日時 料理の名前 内容  レシピ? 作者の名前 投稿日時 料理の名前 レシピ?

新・奥様WEBの構成 webapp html okusama text WEB-INF classes toukou.html ToukouServlet.java IchiranServlet.java index.html recipes.txt レシピ投稿サーブレット レシピ一覧サーブレット 投稿フォーム画面 レシピ保存ファイル 奥様WEBトップページ

toukou.html お名前: 料理名: 作り方

ToukouServlet.java: doPost() /** * レシピの投稿を受け付ける * ( 投稿には、 HTTP POST メソッドを用いる ) */ public void doPost(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException { //***** レシピの投稿を受け付ける ***** //HTTP リクエストのパラメータから、レシピ情報を取り出す String contributor = request.getParameter("contributor"); // 投稿者 String title = request.getParameter("title"); // タイトル String content = request.getParameter("content"); // レシピ内容 // 日本語コードを正しい形に変換する contributor = convertToUnicode(contributor); title = convertToUnicode(title); content = convertToUnicode(content); // 投稿された時刻を取得する String date = (new java.util.Date()).toString(); //***** 受け付けたレシピをファイルに書き込む ***** // 改行を正しい形に変換する //( 改行が含まれると、書き込んだ際、 1 行に収まらなくなってしまう ) contributor = convertReturnCode(contributor); title = convertReturnCode(title); content = convertReturnCode(content); // ファイルに書き込むためのストリームを作成する BufferedWriter writer = new BufferedWriter( new FileWriter(recipeFilePath, true) ); // この true はファイルへの追記を意味する // レシピを、 contributor, title, date, content の順で書き込む writer.write(contributor); writer.newLine(); writer.write(title); writer.newLine(); writer.write(date); writer.newLine(); writer.write(content); writer.newLine(); // ストリームを閉じる writer.close(); //***** 感謝のメッセージの HTML を出力する ***** //HTML 出力の準備をする response.setContentType("text/html; charset=EUC-JP"); // 文字化けを防止 PrintWriter out = response.getWriter(); //HTML の出力に必要な PrintWriter を作成する // 感謝の HTML を出力する out.println(" "); out.println(" ありがとうございました。 "); out.println(" "); out.println(" 投稿ありがとうございました。 "); out.println(" おいしい料理ができたら、また教えてくださいね☆ "); out.println("[ レシピ一覧画面へ ]"); out.println(" "); //HTML 出力のあとかたづけをする out.close(); } ← レシピの投稿を受け付ける ← 受け付けたレシピをファイルに書き込む ← 感謝のメッセージの HTML を出力する

レシピの投稿を受け付ける //***** レシピの投稿を受け付ける ***** //HTTP リクエストのパラメータから、レシピを構成する情報を取り出す String contributor = request.getParameter("contributor"); // 投稿者 String title = request.getParameter("title"); // タイトル String content = request.getParameter("content"); // レシピ内容 // 日本語コードを正しい形に変換する contributor = convertToUnicode(contributor); title = convertToUnicode(title); content = convertToUnicode(content); // 投稿された時刻を取得する String date = (new java.util.Date()).toString();

受け付けたレシピをファイ ルに書き込む //***** 受け付けたレシピをファイルに書き込む ***** // 改行を正しい形に変換する //( 改行コードが含まれると、書き込んだ際、 1 行に収まらなくなってしまう ) contributor = convertReturnCode(contributor); title = convertReturnCode(title); content = convertReturnCode(content); // ファイルに書き込むためのストリームを作成する BufferedWriter writer = new BufferedWriter( new FileWriter(recipeFilePath, true) ); // この true はファイルへの追記を意味する // レシピを、 contributor, title, date, content の順で書き込む writer.write(contributor); writer.newLine(); writer.write(title); writer.newLine(); writer.write(date); writer.newLine(); writer.write(content); writer.newLine(); // ストリームを閉じる writer.close(); 今日の最重要ポイント

ストリームとはなんやね ん?  ストリームとはデータの流れである 一直線 方向がある  例えば … ( 奥様 WEB の例 ) 奥様 WEB サーブレット レシピファイル 激辛カレー \n 末

ストリームの分類 1. 何を? 2. どこから?/どこへ? 3. どのように?

1:何を?  バイト列  文字列 ペイントソフト 画像ファイル 0xEF0xC20x4B0x240x8C0xD30x33 奥様 WEB サーブレット レシピファイル 激辛カレーの作

2:どこから?/どこへ?  さまざまなものを入出力先として扱える ファイル ネットワーク キーボード ・・・・・・ <HTML>< GET tou プログラム こんにちは。 \n ファイル ネットワーク ディスプレイ ・・・・・・ 入力出力 <HTML>< GET tou エラーが起こり

末広涼子 \n 激辛 3:どのように? 例えば … ( バッファリングの例 ) 出力先 激辛カレー 末広良子 2002年5月23日 カレールーを3倍入れ バッファー 出力する情報 奥様 WEB サーブレット 末広涼子 \n 激辛 ー レ カ 辛 激 子 涼 広 末

ここで使うストリーム  今回は、 文字列 (何を?) を、 ファイルに (どこから?/どこへ?) 保存しよう。その際、 バッファリング (どのように?) を行おう。 文字列をファイルに保存する FileReader, FileWriter バッファリング機能を付加する BufferedReader, BufferedWriter

これで作られたストリーム // ファイルに書き込むためのストリームを作成する BufferedWriter writer = new BufferedWriter( new FileWriter(recipeFilePath, true) ); // ファイルに書き込むためのストリームを作成する FileWriter fileWriter = new FileWriter(recipeFilePath, true) ; BufferedWriter writer = new BufferedWriter(fileWriter); 文字列をファイルに書き込む ストリームを作成(追記す る) バッファー機能を付加 するストリームを作成 激辛カレー 末広良子 2002年5月23日 カレールーを3倍入れ ー レ カ 辛 激 末広涼子 \n 激辛 子 涼 広 末 奥様 WEB サーブレット 末広涼子 \n 激辛

受け付けたレシピをファイ ルに書き込む //***** 受け付けたレシピをファイルに書き込む ***** // 改行を正しい形に変換する //( 改行コードが含まれると、書き込んだ際、 1 行に収まらなくなってしまう ) contributor = convertReturnCode(contributor); title = convertReturnCode(title); content = convertReturnCode(content); // ファイルに書き込むためのストリームを作成する BufferedWriter writer = new BufferedWriter( new FileWriter(recipeFilePath, true) ); // この true はファイルへの追記を意味する // レシピを、 contributor, title, date, content の順で書き込む writer.write(contributor); writer.newLine(); writer.write(title); writer.newLine(); writer.write(date); writer.newLine(); writer.write(content); writer.newLine(); // ストリームを閉じる writer.close();

IchiranServlet.java: doGet() public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException { //HTML 出力の準備をする response.setContentType("text/html;charset=Shift_JIS"); // 文字化け防止 PrintWriter out = response.getWriter(); //HTML を出力するための PrintWriter を作成する // ページの頭部分の HTML を出力する out.println(" "); out.println(" 奥様 Web : 全レシピ "); out.println(" "); out.println(" おくさま Web "); out.println(" "); // レシピ一覧の HTML を出力する BufferedReader reader = new BufferedReader(new FileReader(recipeFilePath)); // ファイルを読み込むストリームを作成する while(true) { //contributor, title, date, content の順で読み込む String contributor = reader.readLine(); if( contributor == null ) { // 読み込めなかったらファイルの終わりなので、無限ループをぬける break; } String title = reader.readLine(); String date = reader.readLine(); String content = reader.readLine(); // レシピの HTML を出力する out.print(" "+contributor+" さんオリジナル "); out.println(" 「 "+title+" 」のレシピ "); out.print("( 投稿時刻: "+ date + ") "); out.println(" " + content + " "); out.println(" "); } reader.close(); // ストリームを閉じる // ページの尻尾部分の HTML を出力する out.println(" "); //HTML 出力のあとかたづけをする out.close(); }

IchiranServlet.java: doGet() // レシピ一覧の HTML を出力する BufferedReader reader = new BufferedReader(new FileReader(recipeFilePath)); // ファイルを読み込むストリームを作成する while(true) { //contributor, title, date, content の順で読み込む String contributor = reader.readLine(); if( contributor == null ) { // 読み込めなかったらファイルの終わりなので、無限ループをぬける break; } String title = reader.readLine(); String date = reader.readLine(); String content = reader.readLine(); // レシピの HTML を出力する out.println(" "+contributor+" さんオリジナル "); out.println(" 「 "+title+" 」のレシピ "); out.println("( 投稿時刻: "+ date + ") "); out.println(" " + content + " "); out.println(" "); } reader.close(); // ストリームを閉じる 読み込み 出力 ストリームの作 成 ストリームを閉じる

ファイルに保存するとはど ういうこと?  保存ってどうすること? 書き込む+読み出す=保存 (広義)  保存する目的は?なぜ嬉しい? 書き込んだ情報を読み出して初めて嬉しい ハードディスクの空き容量が減っても嬉しくな い Linux ユーザの僕は MSWord のファイルを貰って も嬉しくない どうやったらうまく読み出せる? → どういうルールで書かれたのか知っている必要がある

保存のルール  呼び方 ファイルフォーマット ファイル形式  奥様 WEB でのファイルフォーマット 作成者名前 料理のタイトル 投稿日時 内容 をそれぞれ1行ずつ 末広涼子┓ 激辛カレー┓ Wed May 23 17:30:24 JST 2002 ┓ 用意するもの: たっぷりのカレー粉 赤唐辛子 … ┓ 石原和音┓ キムチグラタン┓ Wed May 23 17:34:11 JST 2002 ┓ 材料 ご飯(多少古くてもよい) チーズ … ┓ O 岩元┓ 対話システム論ラーメン┓ Wed May 23 17:36:02 JST 2002 ┓ UI 論、 TUT 、認知心理学、 KJ 法等をベースにグルワと … ┓

ホントにルール守られて る? while(true) { //contributor, title, date, content の順で読み込む String contributor = reader.readLine(); if( contributor == null ) { // 読み込めなかったらファイルの終わりなので、無限ループをぬける break; } String title = reader.readLine(); String date = reader.readLine(); String content = reader.readLine(); // レシピを、 contributor, title, date, content の順で書き込む writer.write(contributor); writer.newLine(); writer.write(title); writer.newLine(); writer.write(date); writer.newLine(); writer.write(content); writer.newLine();

実習です  重要な言葉は定義しましょう  ファイル形式を決めましょう では、がんばってください!

Presented by CreW

今回やること  投稿されたレシピをファイルに保存する 投稿されたとき、レシピをファイルに書き 込む レシピを見たいとき、ファイルから読み出 す (保存する=書き込む+読み出す)  Java でファイルを扱うとき、ストリーム というものを使います

ストリームの分類  どんなデータを? 「文字列を」 ~ Reader, ~ Writer 族を使います  どこから?/どこへ? 「ファイルに」 FileReader, FileWriter  どうやって バッファリング BufferedReader, BurreredWriter

ブラウザ投稿サーブレット 主婦が「投稿」ボタンを 押すと 一覧サーブレット レシピファイル 新・レシピの行方 主婦が一覧画面を見ると HTTP POST doPost() HTTP GET doGet() レシピを見ることができる!

ブラウザ奥様 WEB サーブレット 旧・レシピの行方 主婦が「投稿」ボタンを 押すと HTTP POST でレシピが投稿される doPost() × レシピの HTML がブラウザに送られる doPost() の処理が終了すれ ばサーバ側のレシピは消滅 主婦には今自分 が投稿したレシ ピが見えている

プログラムの構成 index.html インデックス(案内とリンク) toukou.html 投稿フォーム画面 ToukouServlet.java レシピ投稿サーブレット IchiranServlet.java レシピ一覧サーブレット recipes.txt レシピ保存ファイル