武蔵浦和のJavaプログラミングスクール 生徒募集
「プログラミングに興味があるけど、勉強法がわからない」
「IT業界に転職したい!!」
「プログラミングスクールに興味があるけど〇十万円の高額な授業料はちょっと...」
様々な理由で1歩を踏み出せない悩める方に、現役のSE(システムエンジニア)がマンツーマンでプログラミングを教えます。
授業のスタイルは、完全個別指導です。
今までの生徒さまも、他業種で働くプログラミング未経験者の方ばかりですが、アウトプット型の授業でプログラミング力がしっかりと身に付いています。
授業に関しては下記リンクをご覧ください。
https://java-musashiurawa.hatenablog.com/entry/2020/01/15/234846
授業内容
-------------------------------------------------
授業料:3,000円/90分
授業時間:土日祝(完全予約制)
※例外的に平日夜間も可能
場所:Zoom(現在は対面での授業はしておりません)
お問い合わせ先:
java.lesson.nakazawa@gmail.com
-------------------------------------------------
現役のシステムエンジニアが休日のみに行っているので、完全予約制となっております。ご不便をおかけしますが、その分お値段は相場と比べてお安く設定しております。ご興味あれば、お問い合わせ先のメールアドレスにご連絡ください。
Webアプリケーション最終課題
[Webアプリケーション] Webアプリケーション最終課題
学習した技術を使って、最後に動的なWebサイトを制作します。
制作物は以下のポイントを押さえていれば基本的に自由です。ブログ、ポートフォリオ、ECサイト等、自分の作りたいものを制作しましょう。
ポイント:
・Webサイトの管理者用の管理画面を制作し、Webサイトに表示させる内容を管理画面からDBに登録できるようにする。
・WebサイトはDBに登録されたデータを表示する。一覧ページと個別ページは最低限制作する。
イメージ図:
さいたま市南区の武蔵浦和駅(中浦和駅)周辺でプログラミングを勉強したい・興味のある方に、
個別指導でJavaのプログラミングを教えています。生徒さまはIT・プログラミング未経験の社会人の方がほとんどです。
▼興味があれば、下記リンクをご確認ください。
会員登録フォーム3 パスワードのハッシュ化
[Webアプリケーション] 会員登録フォーム3 パスワードのハッシュ化
会員登録フォームの実装が完了しましたが、最後にパスワードの保存方法を改良しましょう。
現在はフォームに入力したパスワードをそのままDBに保存していますが、平文のパスワードはDBに保存せずハッシュ化したパスワードを保存しましょう。
■ハッシュ化とは
下記サイトで分かりやすくハッシュ化について解説されているので確認しましょう。
ハッシュ化・ハッシュ値ってなんだ?から、パスワードの仕組みまで。 – 自主的20%るぅる
■制作物
下記サイトを参考にしてパスワードのハッシュ化を実装しましょう。
【Java SE 8限定】安全なパスワードを生成する方法 | キャスレーコンサルティング株式会社
■プログラミング内容
パスワードをハッシュ値で登録できたら、ログイン画面を作成しパスワードとハッシュ値の突合せが正しく行われることを確認しましょう。
さいたま市南区の武蔵浦和駅(中浦和駅)周辺でプログラミングを勉強したい・興味のある方に、
個別指導でJavaのプログラミングを教えています。生徒さまはIT・プログラミング未経験の社会人の方がほとんどです。
▼興味があれば、下記リンクをご確認ください。
会員登録フォーム2 クロスサイト・リクエスト・フォージェリ(CSRF)
[Webアプリケーション] 会員登録フォーム2 クロスサイト・リクエストフォージェリ(CSRF)
会員登録フォームに、CSRF対策をして実装してみましょう。
■CSRFとは
ウェブサイトの中には、サービスの提供に際しログイン機能を設けているものがあります。ここで、ログ
インした利用者からのリクエストについて、その利用者が意図したリクエストであるかどうかを識別する仕
組みを持たないウェブサイトは、外部サイトを経由した悪意のあるリクエストを受け入れてしまう場合があ
ります。このようなウェブサイトにログインした利用者は、悪意のある人が用意した罠により、利用者が予
期しない処理を実行させられてしまう可能性があります。このような問題を「CSRF(Cross-Site Request
Forgeries/クロスサイト・リクエスト・フォージェリ)の脆弱性」と呼び、これを悪用した攻撃を、「CSRF 攻
撃」と呼びます。
※IPA 「安全なウエブサイトの作り方 改訂第7版」から引用
■制作物
下記サイトを参考にして会員登録フォームの残りを実装しましょう。
クロスサイト・リクエストフォージェリ(CSRF)対策(Java編) | Webセキュリティの小部屋
■プログラミング内容
・確認画面や登録完了画面に直接アクセスできないように、GETで直接リクエストされた場合は会員登録フォームにリダイレクトするようにしましょう。
・会員登録フォームで入力したメールアドレスが既に登録されていないか確認し、登録済みの場合は会員登録フォームにエラー文言を表示しましょう。
・JavaScriptでチェックした入力内容を、Javaでも同様にチェックするようにしましょう。
さいたま市南区の武蔵浦和駅(中浦和駅)周辺でプログラミングを勉強したい・興味のある方に、
個別指導でJavaのプログラミングを教えています。生徒さまはIT・プログラミング未経験の社会人の方がほとんどです。
▼興味があれば、下記リンクをご確認ください。
会員登録フォーム1 JavaScript
[Webアプリケーション] 会員登録フォーム1 JavaScript
MVCモデルを使って会員登録フォームを制作しましょう。
<実装内容>
・会員登録フォーム
・確認画面
・登録完了画面
・データベース登録
登録するデータベースは、データベースの学習で使用したユーザーテーブルを使用しましょう。記事は下記を参照。
まずは入力フォーム部分をつくり、入力値に不備がないかのチェックを JavaScriptで実装しましょう。
■制作物
登録ボタン押下時の入力値のチェック
■プログラミング内容
・必須項目の未入力チェック
・日付の整合性チェック
・メールアドレスの入力値チェック(@の有無)
・確認用メールアドレスのチェック(メールアドレスの一致しているか)
・その他実装したい入力チェックを実装してみましょう
・デザインは自由にしてください
さいたま市南区の武蔵浦和駅(中浦和駅)周辺でプログラミングを勉強したい・興味のある方に、
個別指導でJavaのプログラミングを教えています。生徒さまはIT・プログラミング未経験の社会人の方がほとんどです。
▼興味があれば、下記リンクをご確認ください。
リクエストスコープ(Java Servlet)
[Webアプリケーション] リクエストスコープ(Java Servlet)
MVCモデルを使って簡単なWebアプリケーションを制作しましょう。
制作するアプリはゆうパックの郵送料を算出する料金シミュレーターです。
以前、コンソールアプリで簡易版を作成しましたが、今回はデータベースを使って全ての都道府県の料金に対応するWebアプリに改良します。
シミュレーターは下記の日本郵便のページを参考にしましょう。
運賃・料金計算(ゆうパック) - 日本郵便
■制作物
1.初期画面
2.料金計算後の画面
※画像は、サイズ:140、差出地:秋田県、宛先地:徳島県を選択した場合のサンプル
■プログラミング内容
・GETでサーブレットにリクエストした場合に、初期画面を表示します。
・サイズ、差出地、お届け先を選択し、POSTでサーブレットにリクエストした場合に、料金と入力情報を表示します。
・デザインは自由にしてください。
さいたま市南区の武蔵浦和駅(中浦和駅)周辺でプログラミングを勉強したい・興味のある方に、
個別指導でJavaのプログラミングを教えています。生徒さまはIT・プログラミング未経験の社会人の方がほとんどです。
▼興味があれば、下記リンクをご確認ください。
XSS(クロスサイト・スクリプティング)対策(Java Servlet)
[Webアプリケーション] XSS(クロスサイト・スクリプティング)対策(Java Servlet)
前回リクエスト処理の練習問題で会員登録フォームを作成しましたが、今回は不正なデータを入力されない為のセキュリティ対策を行います。
例えば住所の入力欄に以下のようなスクリプトを埋め込めこんで実行してみましょう。
<script>alert('アラートを表示する!!');</script>
■クロスサイト・スクリプティング対策の例
1.入力欄にスクリプトを入力し登録をする
2.確認画面にアラートが表示されてしまう!
タグを埋め込まれることは非常に危険ですので、
以下のHTML特殊文字はエスケープ処理をしましょう。
特殊文字 | エスケープ |
---|---|
& | & |
< | < |
> | > |
“ | " |
‘ | ' |
3.エスケープ処理の機能を追加
リクエストパラメータに対してエスケープ処理を行っているのでタグを文字列として表示しているので、アラートが表示されなくなっています。
■練習問題
サーブレットに、リクエストパラメータに対してエスケープ処理を行う機能を追加してください。
また、クロスサイト・スクリプティングについて下記記事を確認しておきましょう。
クロスサイトスクリプティングって何?サイトのセキュリティを高めるために | カゴヤのサーバー研究室
さいたま市南区の武蔵浦和駅(中浦和駅)周辺でプログラミングを勉強したい・興味のある方に、
個別指導でJavaのプログラミングを教えています。生徒さまはIT・プログラミング未経験の社会人の方がほとんどです。
▼興味があれば、下記リンクをご確認ください。
リクエスト処理(Java Servlet)
[Webアプリケーション] リクエスト処理(Java Servlet)1
サーブレットのリクエスト処理のプログラミング練習です。
データベース接続の学習で作成したユーザーテーブルを使って、会員登録フォームを作成しましょう。データベースの定義は下記リンクから確認できます。
まずは下記二つの機能をつくりましょう。
・会員登録フォーム ... POSTリクエストで入力データを送信
・確認画面 ... フォームデータを取得してHTMLで出力する
HTMLのformの書き方に困った場合は、下記サイトを参考にしてみてください。
<input>の使い方とtype属性の一覧をサンプル付きで紹介 | webliker
■会員登録フォーム
下記画像はサンプルです。CSSで見栄えは自由にしてください。
■確認画面
下記画像はサンプルです。CSSで見栄えは自由にしてください。
確定ボタンの処理はまだ何もしなくていいです。入力データが表示されることを確認しましょう。
「入力画面に戻る」はGETリクエストを試してみましょう。emailとパスワード以外は入力された状態に戻るようにしてください。
さいたま市南区の武蔵浦和駅(中浦和駅)周辺でプログラミングを勉強したい・興味のある方に、
個別指導でJavaのプログラミングを教えています。生徒さまはIT・プログラミング未経験の社会人の方がほとんどです。
▼興味があれば、下記リンクをご確認ください。