不惑にしてまだ何者でもない者のブログ

Arduino関連、Raspberry Pi関連、プログラミング学習

paizaラーニング『Webアプリ開発入門 Servlet/JSP編1: JavaでWebアプリケーションを作ろう (全10回)』を受講してみた

2021-04-04 23:14:24 | paiza

『Webアプリ開発入門 Servlet/JSP編1: JavaでWebアプリケーションを作ろう (全10回)』


とうとうこの講座を受ける前に、6ヶ月の期限が来てしまった。
前回までのアルゴリズム入門編もかなり駆け足でやったから、
あんまり身にはなっていないだろうな。

これでとりあえずpaizaの契約は解除しよう。

一応、この講座のレッスン1はすべて無料だから、これだけは受けておくかな。

そうだった!?無料だと倍速ができないんだった。
倍速でやってきたから、やたら遅く感じるな😅 

それと、このレッスンを自分の環境で試す場合には、
Tomcatをインストールする必要がある。
たぶん、以下のサイトが分かりやすいので、試してみる。
うん、たぶんなんかできた気がする。
とりあえず/opt/tomcatというディレクトリに一式インストールされてるし、
sudo /opt/tomcat/bin/startup.shでサーバーが起動してるしな。

イマイチまだサービスの登録とかよくわかんないけど、
Ubuntu起動時にスタートアップさせるかどうか、ってことだろうな。

だから、自分の意志で起動と停止をコントロールするため、
/opt/tomcatを/home/{$USER}にコピーして、
コピー先の所有者を{$USER}に変更しておいた。

あとは、このコピー先のtomcatに対して、編集とか起動とかやっていこう。

メモ

#01:Webアプリの初歩を理解しよう

#02:Tomcatを呼び出してみよう

  • Tomcatの起動と停止
    • 起動
      $ tomcat/bin/startup.sh
    • 停止
      $ tomcat/bin/shutdown.sh
  • Tomcatへのアクセス
    http://(ドメイン):8080/

#03:Hello Worldをコンパイルしよう

  • サーバー上で動作するHelloWorld
    tomcat/webapps/mywork/HelloWorld.java
  • コンパイル操作
    $ javac -classpath "../../lib/servlet-api.jar" HelloWorld.java

#04:ServletでHello Worldを出力しよう

  • Servletの配置ディレクトリ
    /tomcat
     /webapps
      /mywork
       HelloWorld.java (ソースコード)
       /WEB-INF
        web.xml
        /classes
         HelloWorld.class   (クラスファイル)
    • ↑WEB-INFは、サーバーから呼び出せるが、ユーザーからはアクセスできない。WEB-INFの上位のディレクトリは、ユーザーが直接アクセスできるので、ソースコードは上記の位置に残さないようにする。
  • web.xmlを作成する
    tomcat/webapps/mywork/WEB-INF/web.xml
  • 配置先を指定してコンパイルする
    $ javac -classpath "../../lib/servlet-api.jar" -d WEB-INF/classes HelloWorld.java
  • ブラウザからServletを呼び出す

#05:ルーティングを理解しよう

  • サーバー上で動作するHelloServletの作成
    tomcat/webapps/mywork/HelloServlet.java
  • web.xmlで、複数のアドレスを割り当てる
    tomcat/webapps/mywork/WEB-INF/web.xml

#06:JSPで表示しよう

  • JSP(JavaServer Pages)とは
    Webアプリケーションで出力するHTMLのテンプレート
    • HTMLの中にJavaコードを記述できる
    • Webページとして出力
  • JSPによるサンプルプログラム
    mywork/HelloTemplate.jsp
    • <%@ page language="java" ~ %>
  • JSPの実行方法
    JSPのコンパイルは、Tomcatが自動的に行うので、ブラウザからアクセスするだけで結果を表示することができる。

#07:ServletからJSPを呼び出そう

  • ServletとJSPを連携させることで、Webアプリケーションの制御部分と表示部分を分けることができる。
  • Servlet/JSPの配置ディレクトリ
    tomcat/
    - webapps/
     - mywork/
      - HelloWorld.java (ソースコード)
      - ShowTemplate.java
      - WEB-INF/
       - web.xml
       - classes/
        - HelloWorld.class (クラスファイル)
        - ShowTemplate.class

       - views/
        - index.jsp   (JSPファイル)
  • JSPを呼び出すServletの作成
    tomcat/webapps/mywork/ShowTemplate.java
  • Servletをコンパイルする
    javac -classpath ~
  • web.xmlの修正
    tomcat/webapps/mywork/WEB-INF/web.xml
  • ブラウザからServletを呼び出す

#08:JSPの書き方を理解しよう

  • JSPタグの種類
    - <%@ %> JSPの宣言(ディレクティブ)
    - <%! %> 変数やメソッドの宣言
    - <%= %> 式の評価結果を出力
    - <% %> コードを実行
    - <%--  --%> コメント
  • ServletからJSPにデータを渡す
    • tomcat/webapps/mywork/ShowTemplate.java
      • request.setAttribute("message", "Hello World!");
    • tomcat/webapps/mywork/WEB-INF/view/index.jsp
      • <% String message = (String)request.getAttribute("message");%>

#09:具体例:RPGの行動選択メニューを作ろう その1

  • web.xmlの修正
    tomcat/webapps/mywork/WEB-INF/web.xml
    • /menu
  • メニューのServlet
    • tomcat/webapps/mywork/Menu.java
    • Servletのコンパイル
  • メニューのJSP
    • tomcat/webapps/mywork/WEB-INF/view/menu.jsp
  • アクセス

#10:具体例:RPGの行動選択メニューを作ろう その2

  • web.xml
    tomcat/webapps/mywork/WEB-INF/web.xml
    • /walk
  • 「あるく」画面のServlet
    tomcat/webapps/mywork/Walk.java
    • Servletのコンパイル
  • 「あるく」画面のJSP
    tomcat/webapps/mywork/WEB-INF/view/action.jsp

認定証

半年に亘るpaizaでのオンライン学習もひとまずこれで終了だな。
長かった😭 
ちょっともう後半きつかったな〜😩 


学習ステータス


特に変化なし

今後の予定

あとはまぁ、無料のC#入門編やるかどうかだな。
てか今度の仕事C#やるからほぼ必修なんだけど😅 
でも他のテキストで勉強してもいいしな。
等倍の動画って眠くなるしな〜😴 


最新の画像もっと見る

コメントを投稿