学生に伝えたいツイート

Spring Bootでチャートを生成・表示する

チャートを生成・表示する

ソースコード

変更(追加)

新規作成

実行例

chart

ポイント

  • チャート描画はJavaScriptで行うのが一般的だが、ここではJFreeChartを用いてサーバーサイドで生成している。
  • 画像ファイルを生成するのではなく、data URIで画像データを表示している。

Spring Bootで日付を扱う(フォームから日付を入力する)

日付を扱う

ソースコード

新規作成

ポイント

  • Javaにおいて日付の扱いは1)従来からあるDateクラスを使う方法と、2)Time APIを使う方法がある。教科書でどちらも詳しく解説されている。
  • inputタグのtypeとして、dateやdatetime-localが使える。他にもmonth等がある。
  • ThymeleafではDateに対するユーティリティーメソッドがある。

関連文書

変数の値とアドレス

前回のまとめ等

  • 配列
    • 同一型の複数のデータで、各データを添字によって区別する
    • 添字は0から始まる整数
  • 課題の解答例

課題の回答状況

  • ◯ コンパイルできるソースコードを提出している。
  • × 関数の定義の形が理解できていない。例: fizzbuzzの戻り値の型をintにしている、あるいは指定していない。
  • × 演算子を正しく理解していない。例: for文で i=i++
  • × 関数の使い方を理解していない。例: printf(“FizzBuzz “,i);

C言語における変数の値とアドレス、代入という操作について

変数の値とアドレスについて

  • 変数は値を入れておく箱のようなもの。箱の名前のことを「変数名」という。
  • 変数の値はコンピューターのメモリのどこかにに保存される。
  • 「どこか」を知りたい場合、アドレス演算子を使うと取り出すことができる。
  • 「アドレスを保存するための変数」があり、それを「ポインタ変数」という(教科書P.106、重要ポイント及び表7.1)。

この辺りをしっかり理解しておくと、Javaを勉強するときに役立つ。

代入という演算について

  • 「a = b」はbの値をコピーしてaの値にするという操作
  • 「func(a)」とした場合、aの値をコピーして関数にわたされる

値とアドレスとポインタに関するサンプルプログラム

address.c

実行して結果を確かめよう。

ポイント:

  • b: aを変更してもbの値は変わらない。
  • *c: aと同じアドレスなので、aを変更すれば*cも変わる(変わるというかaの別名が*cと言っても良い)。
  • 関数の引数は、値のコピー。

配列を引数とする関数

array.c

実行して結果を確かめよう。

ポイント:

  • 値がコピーされた新しい配列が作られるわけではない。
  • 先頭アドレスがコピーされる。
  • 値がコピーされた新しい配列が欲しい場合は、関数ないで配列を宣言し値をコピーする。

変数の入れ替え

次の実行例と同じになるように、変数の値を入れ替えるプログラムを完成させよう。

元のプログラム: swap.c

Spring Bootでメール送信を行う

メール送信

ソースコード

Gmailを使う場合の例。

変更(追加)

新規作成

関連文書

Spring Bootでユーザ認証を行う

ユーザ認証

ソースコード

変更(追加)

  • build.grade: spring-boot-starter-securityをdependenciesに追加

新規作成

関連文書

昨年度の資料はバージョンが古いので注意する必要があるが、参考になるはず。