"BOKU"のITな日常

還暦越えの文系システムエンジニアの”BOKU”は新しいことが大好きです。

WEB:Spring Boot

SpringSecurity:ログアウトの実装と、コントローラクラス(Java)でログインユーザ情報を得る  SpringBoot/thymeleaf

Spring Securityを使う・・の4回め。今回はログアウトと、JAVAメソッド内でログイン中のユーザ情報をえるやりかたです。

SpringSecurity:データベース認証を実装する  SpringBoot/thymeleaf/STS3

Spring Securityを使う・・の3回め。今回は認証をデータベースに登録したユーザ名とパスワードで行う「データベース認証」のやりかたです。

SpringSecurity:デフォルトのログイン画面をオリジナルログイン画面に変更する  SpringBoot/thymeleaf/STS3

Spring Securityを使う・・の2回め。今回はログイン画面をオリジナルのものに差し替えるやり方です。

SpringSecurity:とりあえず使う。ロールで項目の表示・非表示を切り替える。 SpringBoot/thymeleaf

Spring Securityを使う・・の1回め。今回はてっとり早く使う方法と、ロールで項目の表示・非表示を切り替えるだけやってみます。

AMP対応ページと非AMPページ間の値引き継ぎとURLパラメータの受け取り。 SpringBoot/thymeleaf/STS3

AMP対応ページと、非対応ページ間のいったりきたリをためしてみました。

SpringBootとthymeleafでAMP対応は十分可能。だけど、入力画面はかなり癖があるぞ。

Formの必要な画面を、AMP(Accelerated Mobile Pages)対応にするのは、やめたほうが良さそうだなと思う理由です。

SpringBootとthymeleafで動的にAMP(Accelerated Mobile Pages)ページを生成してみる。(STS3)

AMP(Accelerated Mobile Pages)対応ページを、SpringBoot+thymeleafで生成できるかやってみます。

AMP(Accelerated Mobile Pages)が、SpringBoot+thymeleafと共存させられるか試してみよう。

AMP(Accelerated Mobile Pages)と言う技術が話題なので、SpringBoot+tymeleafと共存できるか試してみます。

STS3(Spring Tool Suite)とSpring Bootのバージョンアップで既存プロジェクトのハマりどころ

Spring-bootのバージョンアップで予想外のところでハマりました。

Springのキャッシュ機構を、No-SQLのredisを格納先として使う。STS3+SpringBoot

Springのキャッシュ機構で、外部格納先として、NO-SQLのインメモリDBである「redis」を利用するパターンをやってみます。

SpringBootでSpringのキャッシュ機構を使う1回目。ConcurrentHashMap版。STS3+SpringBoot

Springには、非常に優れたChache機構があります。 今回はこれを使ってみます。 キャッシュの利用設定 SpringBootスタータープロジェクトで、キャッシュにチェックをつけてプロジェクトを作るとキャッシュ機構が組み込まれます。 あとで追加するなら、pom.xml…

SQLライクなORマッパ。JOOQの使い方2回目。基本構文と戻り値の受取り。STS+SpringBoot

今回は、SQLで頻繁に使う基本構文をJOOQで書いたら、どんな感じになるのかを整理してみます。 なお、事前にテーブル定義を生成(CodeGenerator)できている前提の話になります。 テーブル定義の生成方法やセットアップについては、前回の記事を参照してくだ…

SQLライクなORマッパ。JOOQの使い方1回目。利用環境構築と動作確認。STS3+SpringBoot+Jooq

SpringBootの標準なので、DBアクセスにはJPAを使ってます。 でも、自分としては、S2JDBCみたいにSQLライクな書き方ができる方が好きです。 そしたら、JOOQを使えば、かなりSQLライクに見通しのいい記述ができるらしいという情報がありました。 早速試してみ…

STS(Spring Tool Suite)3.9.0で「Springスタータープロジェクト」が少し進化してました。

前回、STSを最新版(3.9.0)にして、既存プロジェクトのStringBootとthymeleafのバージョンをあげてみました。 2018/3/3追記 >STSの最新版は3.9.2になってました。 スタータープロジェクト作成の小さな進化 で、せっかくだから、最新版でプロジェクト作り直…

STS、Spring Bootをバージョンアップして、thymeleafを3.0系に変更する。ついでにJava8DateTime対応も。

ずっと、STS 3.8.3+SpringBoot 1.5.1+thymeleaf 2.1の組み合わせでやってきたわけなんですけど、当時は最新だったそれも、すでに若干古くなってます。とりあえず、環境を最新にしようかなと。

Ajax:Jsonで受け取り画面遷移なしに更新する STS3+Spring Boot +thymeleaf

今回も、StringBoot+thymeleafで、Ajaxを使うパターンです。 前回は、thymeleafの「th:fragment」機能を使って、プルダウンリストを更新するケースをやりました。その時は、jQueryの$Ajaxの戻り値として整形済のHTMLを受け取りましたが、今回は、普通にデー…

Ajax:プルダウンリストの内容を画面遷移なしに更新する STS +Spring Boot+thymeleaf

今回は、SpringBoot+thymeleafでAjaxを使って、画面遷移せずに、画面の一部を更新する「非同期処理」をやります。jQueryの$Ajaxの仕組みを使うと、比較的容易に処理は書けますが、SpringBoot+thymeleafの機能を使っているHTMLの一部を書き換えるのは、JSP…

GoogleのreCAPTCHA V2をでロボットによる投稿を防ぐ STS3 +Spring Boot +thymeleaf

今回は、Googleの「reCAPTCHA」を使います。Captchaは、WEBサイトのコメントシステムや問い合わせフォームに対して、ロボットを利用したスパム投稿を防ぐ手段です。従来は難読文字・数字を表示した画像を読み取って人間が入力する方法でしたが、それをより洗…

SpringBootだとログの書き出しも楽ちんです。 STS3 +Spring Boot+thymeleaf

SpringBootでのログ出力の基本的なところをやります。 あれこれ、カスタマイズするのではなく、とりあえずログをファイルに書き出せるようにするところまでを範囲にします。SpringBootでは、spring-boot-starter-webを有効にすると、自動的にログも有効にな…

入力チェック:複数項目の相関チェックをするアノテーションの作り方 STS3 +Spring Boot+thymeleaf

複数項目の相関チェック処理を共通処理化して、アノテーションで使えるようにする方法を試します。 STS3(3.9.6)+SpringBoot2.0+Tymeleaf3.0迄動作確認しています。 複数項目の相関チェックとは。 例えば、履歴管理するデータの開始日・終了日が、「開始日…

画面遷移:リダイレクトとフォワードでパラメータを受け渡す STS3 +Spring Boot+thymeleaf 

リダイレクトとフォワード時に、パラメータを受け渡す方法を確認します。 リダイレクトとフォワードとはそもそもなんぞや?というのは、JavaTips 〜JSP/サーブレット編:リダイレクトとフォワードの違いを知る - @IT で非常にわかりやすく説明されてます。…

画面遷移:GET時のリクエストパラメータを受け取る STS 3+Spring Boot +thymeleaf 

GET時のリクエストパラメータの受取方法と画面遷移のやり方を確認してみます。 STS3(3.9.6)+SpringBoot2.0+Tymeleaf3.0迄動作確認しています。 パラメータの受取 hello.html を想定して、/localhost:8080/hello?msg=TEST のパラメータ付URLを渡してみます…

クラスパス内の静的ファイルにアクセスする STS3 +Spring Boot +thymeleaf 

絶対パス指定とかではなく、クラスパスからの相対パスでファイルを取得する方法をやってみます。 STS3(3.9.6)+SpringBoot2.0+Tymeleaf3.0迄動作確認しています。 2つの方法があります Spring Bootだと、これが簡単にできる方法があります。 src/main/reso…

入力画面:画像をSUBMITボタン代わりに使う。ほぼjQuery/STS3+Spring Boot +thymeleaf 

画像をSubmitボタンとして使うパターンです。 ほぼ、jQueryではあるのですが。 Submitボタン以外で「Submit」 WEBアプリケーションは、原則、「フォームに何かを入力したり、選択して実行(SUBMIT)ボタンを押す」の繰り返しです。

@Patternでは難しい入力チェックをする独自アノテーションを作る/STS3 +Spring Boot +thymeleaf 

今回は、「@Patternでは難しいロジックを実装する」方法でオリジナル入力チェックアノテーション定義を作ってみます。 STS3(3.9.6)+SpringBoot2.0+Tymeleaf3.0まで動作確認しています。 日付をチェックするアノテーションを作ってみる どうせやるなら、役…

入力チェック用独自アノテーションを@Patternを再利用して作る。/STS +Spring Boot+thymeleaf 

Spring Boot +thymeleafの入力チェックでは、@Patternを使えば、大抵のことができるのを前の記事に書きました。 arakan-pgm-ai.hatenablog.com ですが、前にも書いたとおり、このやり方にはちょっと欠点があります。 それは、超わかりづらいことです。 こん…

入力チェック:@Patternと正規表現で独自チェックする。STS3+Spring Boot+thymeleaf 

Springには入力チェックに使える標準アノテーションが用意されています。 STS3(3.9.6)+SpringBoot2.0+Tymeleaf3.0迄動作確認しています。 意外に種類は使わない 標準アノテーションの種類は色々あるのですが、個人的に使っているのを調べてみたら、@NotNul…

入力チェック:@NotNullで未入力時に正しくNULLを返すようにする。STS 3+Spring Boot +thymeleaf 

Spring MVCでは、テキストボックスを未入力な状態で、Submitした時に、空文字(””)をセットする仕様になっています。 なので、@NotNullアノテーションでは、未入力の時にエラーになってくれません。 今回はこれを回避する方法あれこれです。 とりあえずの回…

セッションを使って画面間で情報を受け渡す STS +Spring Boot+thymeleaf 

Webアプリケーションには必須のセッション管理をやってみます。 STS3(3.9.6)+SpringBoot2.0+Tymeleaf3.0迄動作確認しています。 セッション HTTPは、ご存知の通りステートレス(クライアントとのセッション情報を保存しない)なので、複数の画面間で共有…

入力画面、ラジオボタンとラジオボタングループを使う STS3+Spring Boot+thymeleaf 

ラジオボタンを配置した画面の処理をやります。 STS3(3.9.6)+SpringBoot2.0+Tymeleaf3.0迄動作確認しています。 今回の仕様 ラジオボタンは複数の選択肢のうち、ひとつだけを選ばせます。 選択の仕方のバリエーションとして以下の2パターンがあります。 普…