きくぞうブログ - ITと音楽と能天気なオイラ -

きくぞうブログ - ITと音楽と能天気なオイラ -

プログラミング(C#・Swift)が好き♡
音楽は聴くのもバンドで演るのも好き♡(主にVo.担当)
ITをベースとした寺子屋を開きたい
バイクたくさん乗りたい♡
日本文化も好き♡

やりたいこと多すぎて死んでも死にきれない能天気野郎です♪(*´ω`*)

Amebaでブログを始めよう!

TL;DR

派遣などで現場に行っていると「Javaの開発ができる人がいい」とよく言われる。

まぁJavaにも色々あるのだろうけれど、今どきは概ねWebシステムのサーバーサイドを挿していることが多い。(少なくとも自分の周りでは)

で、「Javaの開発」をできるようになるために、自分の理解のためにまとめてみた。

 

道のりは遠いが、他の事やりながらでも1年もあれば一通りのことは誰でもできるさ。

 

A.サーブレット

    1.サーブレット(Java Servlet)とは
     ・Webサーバー(Tomcatで動作する)動的にページを生成して返すJavaプログラム。

  2.記述方法
   <サーブレットの例>
        PrintWriter out = response.getWriter();
        out.println("<html>");
        out.println("<head>");
        out.println("<title>Hello World!</title>");
        out.println("</head>");
        out.println("<body>");
        out.println("<h1>Hello World!</h1>");
        for(int i=1;i<=10;i++) {
            out.println("<p>["+i+"] : Hello World!</p>");
        }
        out.println("</body>");
        out.println("</html>");
        out.close();
    
    3.サーブレットコンテナ
     ・サーブレットはサーブレットコンテナ上で動作しており、HTTPリクエストは

    サーブレットコンテナが受け取ってサーブレットに命令を出す流れとなっている。

  4.リクエストされた際のサーブレットの動作(GetとPost)
   ・HTTPリクエストがGetメソッドの場合はdoGetが呼び出される。
   ・HTTPリクエストがPostメソッドの場合はdoPostが呼び出される。

B.JSP
    1.JSP(Java Server Pages)とは
     ・Javaによるサーバーサイトスクリプティングのためのテクノロジ。
      HTMLの中にJavaコードを埋め込んで実行させることができる。

    2.記述方法
     ・ASP.Netでいう.aspxファイルにインラインで記述するみたいに以下のような書き方ができる。

    ・・・よく似てる。
 

      <JSPの例>
            <body>
            <%=message %>
            <%
            out.println("<br />");
                out.println("<p>Hello World!</p><br />");
                for(int i=0; i<10; i++){
                    out.println("<p>"+message + " No."+(i+1)+"</p><br />");
                }
            %>
            </body>

      <ASP.Netの例>
            <body>
                <form id="form1" runat="server">
                <% For i As Integer = 1 To 20 Step 2%>
                <div style="font-size: <% Response.Write(i)%>">
                    Hello World!<br />
                </div>
                <% Next%>
                </form>
            </body>

     ・いずれもブラウザには生成された後のHTMLのみが返されるところは同じ。

   (クライアントからロジックを隠蔽できるという利点も同じようだ)

    3.サーバー
     ・ASP.NetはIIS(やIIS Express)で動作するが、JSPはTomcatで動作する。

    ※Tom猫さんは名前はよく聞くが何者か全くわからない。

    ※Eclipseでは実行時にTomcatが動いてServletやJSPを処理しているみたいだ。

    ※しかもEclipse実行時には複数のバージョンのTomcatを同時に起動できる模様。

    ※IIS上のASP.Netとは色々と違うようだ・・・。

    ※今はムリだから追々学びつつ別の記事を書こう。(笑

    4.ディレクティブ
     ・ページの処理方法記述して指定するもの。
      <%@ [ディレクティブ名]  [属性名]="属性値" %>
     例)
      <%@ page contentType="text/html; charset=UTF-8" %>
      <%@ page contentType="text/html; charset=UTF-8" import="java.util.*" %>

    ※下段はパッケージをインポートする場合の書き方

    5.アクションタグ
     ・JSPでよく使う処理をJavaで書くよりも簡単に利用できるように予め用意されたタグ表記。
     例)
      <jsp:include page="HelloWorldJSP2.jsp" />

    ※これを記述した場所にHelloWorldJSP2.jspファイルに記述されている内容が挿入される。

    6.スクリプト要素
     ・宣言部・・・変数やメソッドの宣言をおこなう。
      例)
       <%! String message = "Hello Rainbow Engine!"; %>
     ・スクリプトレット・・・JSPの中にJavaプログラム(スクリプト)を埋め込む。
      例)
          <%
              for(int i=0; i<5; i++){
                  out.println(""<p><font size='20'>""+message+"" No.""+(i+1)+""<br />"");
              }
          %>
   ・式・・・式の出力に使う。HTMLタグの中に埋め込むなどして使用
    例)<title><%=message %></title>

    ※本来はout.println()で記載していた様な内容も、式の出力で簡単に記述できる

  7.コメント
   ・JSPのコメントの記述方法は次のように「<%--」と「--%>」で囲む。
    <%--This is a comment--%>

C.サーブレットとJSPの使い分け
  ・JSPはユーザーに返すHTMLを簡単に記載できる。
  ・サーブレットはマルチスレッドなど内部処理に適している。
  ・よって、サーブレットで内部計算やDBアクセスなどをおこない、結果をJSPで返すという

   組み合わせで使用する。

 

 

#Java

#JSP

#Servlet

#Java開発入門

#Java初心者

#何から覚えたらいいかわからん

#Javaのフレームワークってどれがメジャーなの?

帯状疱疹にかかりました。と言うか子供の時の「水ぼうそう」の菌が脊髄に潜伏していて、高齢になって免疫が下がった時にウィルスが活発化して発症するモノらしい。つまり、水ぼうそうにかかったことがある人はみんな脊髄に菌を持ってるんだそうだ。で、何人かに一人は発症する、と。

初めて知ったわ、そんな話w

 

症状としては、

  1. 首回りに違和感(ちょっとした痛み)を感じる。
  2. 寝違えたと思った。(首を曲げると痛いので) ※一週間ほど耐える
  3. 痛いのが筋ではないのと、一向に治らないことに不安を覚える。(ちょっとだけコロナ不安・・・)
  4. 嫁がオイラの首筋に発疹を見つける。(皮膚おかしい!)
  5. 翌日仕事を遅刻して皮膚科に行ったら先生即答。「ハイ、帯状疱疹!」
医者の先生から「これからまだ酷くなるから」と顔中発疹だらけの写真見せられ、少しでも軽くしたいなら今日から仕事は休んで家でおいしい物食べてじっとしてなさい。(免疫下がってるから体力使うと余計悪化するよ)
まぁ、入院まではしなくても良いかな。 との事。(ってか、この病気入院する病気なんかい!)
 

帯状疱疹は大人同士では飛沫や接触感染で帯状疱疹を発症したりはしないらしいが、発疹部分に菌がいるので、その菌を触った手でモノを触り、さらにそこから子供の口などに入ると水ぼうそうとして感染してしまうらしいので、無闇に外出もできず。。。

 
現在、最初に痛みを感じてから今日で二週間ちょっと。
医者で診断され薬を飲み始めてから3日。先生が言った通り痛みはあれから少し酷くなっている。

でも、仕事も休んでしっかり休養しているからか発疹は増えてないみたい。

 

薬を飲んでいるのに酷くなってゆくと言うのは結構辛い体験。
レベルは違うけどコロナも40度近い高熱が出たり下がったりして一向に治らない日が10日近く続くと聞いたことがあるので、精神的にも辛いんだろうなーと、ちょっと共感。
 
当たり前だけど、健康は大事だね。
でも、せっかく休みだし、毎日本を読んで過ごしてます。(MSエバンジェリスト西脇さんとかホリエモンさんとかラズパイの電子工作本とか)
 

毎日使っていた7イレブンアプリ。

おそらく7Payのセキュリティ問題関連なんだろうけど、7アプリのログインで強制的にパスワード再設定を求められ・・・
アプリは強制的に終了されるわ、ログインIDはよくわからんわ、7IDのサイトに飛ばされるわ、意味不明なことだらけ。

しかも、新たに7ID作ってからアプリでログインしようと思ったら、「前使っていたあかうんと」

7Payは全く使わず、普通にnanacoカードで買い物しているだけなのに、突然アプリが使えなくなってしまった。。。
自分の会社のミスなのに、こんなにユーザーを迷わせて時間を使わせるなんて。セブン&アイ・ホールディングスさん、ちょっとユーザーをバカにしすぎじゃぁないですか?(涙
大企業なんだから、ちゃんとアプリ作ってテストしてくれる業者を使えばいいのに。。。


とはいえ、自分もアプリエンジニアだから「明日は我が身」。気をつけないとね。


<追記>
7アプリ使えるようになった(笑
1.7アプリ起動する → パスワード再設定しろと言われる
2.外部IDでログイン(FBとかLINEとか)していたと選択すると7ID?のサイトに飛ばされる
3.7IDのサイトで7IDのアカウントを作る?多分作った。。。(まずこのへんがわかりにくい)
4.この時点で7IDのサイトにログインした状態になるのだが、実はログイン用の7IDはまだ決まっていない。
  メニューから会員情報を開いて「ログイン用の7ID」と「パスワード」を設定しなきゃアプリでログインできない!
  (これめっちゃわかりにくい!!)
5.ここまで終わると、その7IDとパスワードで7アプリにログインできるようになる。


セブン&アイ・ホールディングスさん、御社のシステムの仕組みのおかげで1時間近く使わせていただきました。。。
まぁ、文句言うなら使うなってことなのかもしれないけどね。