yuusuke-roughの日記

Java,SpringBoot,趣味等

JDBCの学習日記

動作環境 Java SE15 MySQL 8.0.25 MySQL-Connecor-J-8.0.32 内容 データソースおよびURL MySQL :: MySQL Connector/J 8.0 Developer Guide 基本的にMySQLのドキュメントをメインで進める。 ORACLEのJDBCドキュメントでJDBC XX標準サポートとあったが、 MySQL…

Webjarsを使ってReactに触れる in Spring Boot

触れたというのか。 仕事後にReactチュートリアルしようとして、こんなつらい目に遭うと思わなかった日記。 既存のウェブサイトに React を追加する – React Spring Secutiryを実装しているプロジェクトで使用したいので、Webjarsで探すと... GitHub - webja…

バリデーションとDate、そしてバインディングできないのによくハマるお話 in Spring Boot

入力値チェックを丸々忘れていたURLがあったので、実装と有耶無耶にしないための再学習を行います。 まずは、チュートリアル。 入門 | フォーム入力の検証 フォームに記入された属性を収集するために @Valid でマークされた personForm オブジェクト。 bindi…

サニタイズとエスケープ in Spring Boot

Thymeleafでエスケープ処理はされるのかという問いです。 用語整理 サニタイズ・・・意図しない動作を生んでしまう文字を無効化する エスケープ・・・意図しない動作を生んでしまう文字を別の文字列に置き換える。 初めに、下記簡単なformを作り値の表示を行…

ただひたすら修正する日記 4,5日目 in Spring Boot

日記 3月3日にようやく回線が繋がり、良い出だしは切れたのではないかと思います。 さて、現状ですが、事情が幾つか重なり、メインに個人でのWebアプリ開発、サブにJavaとアルゴリズム(AtCoder)を割り当てる事にしました。 具体的には、 勤務日:フレームワ…

プロJavaのテストケース・JavaGold取得を目指した日記 2日目

はじめに 何となくの理解で進めていたヒープ領域やstatic領域の話を、アウタークラスやインナークラス、ローカルクラスを通して学習する度に、身になってる心地がしていいです。 ただ、数学にしてもプログラミングにしても理解や実装するための手段であって…

プロJavaのテストケース・JavaGold取得を目指した日記

はじめに JavaGold取得を目指して、まず月末は、昨年取得したJavaSilverの復習から入ります。 そして、MOSが取得できたので、全力で対策します。 各日記毎に分けていますが、一つずつ進めます。 JavaGoldはWindowsのPCでSTS(Eclipse) プロになるJavaはUbuntu…

プロになるJavaの学習日記 2日目

はじめに プロJava 2回目の日記です。 転職に当たり、業界の基礎知識について勉強を始めました。 開発の分類からイメージできるものとできないものがあるので、概要を抑える程度に読みたいと思います。 どのようにしたら良いテスター、プログラマー、システ…

プロになるJavaの学習日記 1回目

はじめに IntelliJ IDEAはUbuntuを入れているPCにインストールしていました。 Swingがクラスファイルからは実行できるけれど、JShellから入力だと実行できない現象についてリベンジしたり、復習に時間を費やしました。前者は徒労に終わり、後者はオートマト…

ただひたすら修正する日記 1,2,3日目 in Spring Boot

はじめに 業務に関わる学習の合間に、進めているアプリ作りの日記です。 1月16日より開始します。 学習の進度によっては、できない日もあります。 内容 ①登録処理の確認メール受け取りをしていないアカウントにてorg.springframework.security.authenticatio…

AOP、Slf4jとtransaction in Spring Boot

はじめに Spring解体新書で学習開始。(他、TCP/IP、プロJavaの学習継続中。Excelは「Excel 最強の教科書」にて学習中。) 今回は、あまり触れてこなかったSlf4jとtransactionをピックアップ。 サンプルアプリを使用して理解を深めたい。 内容 AOPとSlf4j 作…

認可処理で弾かれた時のエラー処理 in Spring Security

はじめに 今回は、今まで使用していた自前の認可処理を削除します。 そして、前回のカスタム認可に対して、参加者以外がルームURLにアクセスしようとした時の処理を実装します。 内容 参考: アーキテクチャー :: Spring Security - リファレンス Spring Sec…

特定のURLで認可処理を行う in Spring Security

はじめに ※年末の記録 + 1月1日の記録に修正を加え投稿しました。 今回は、最終目標の「特定のURLにてルームメンバーかチェックする認可処理を行う実装」です。 前回はロールと権限の実装で、認可について学びました。 Role実装 in Spring Security - yuusuk…

Spring Security 6.0.1にバージョンを変更した話

はじめに いろいろ考え事があって本調子じゃない年末。少しだけ学習。 特定のURLの認可処理を実装していたところ、Spring Securityのドキュメントのバージョンが6.0.1である事に気づく。 WebConfigurerAdapter等が廃止され、起動もできなくなった。 今回は、…

Gitで2回目のプッシュ in Git Bash

はじめに 年末、資格取得と平行で忙しく、楽しく過ごしております。 さて、2回目のGitとなります。 今回は、ロールと権限を追加したプロジェクトをプライベート設定されているリモートリポジトリにプッシュしようと思います。 プッシュするブランチはmainで…

Role実装 in Spring Security

はじめに 余談からになりますが、「達人に学ぶDB設計」を再読しており、実装が遅れました。 改善としては、既読管理テーブルと参加者テーブルはひとつにできそうだなと思いました。 また、パフォーマンスというのも全ての実装ができてからの話と思うので、あ…

Gitに触れてみた日記

はじめに 就職活動を始めた。 その中で頂いたアドバイスとして、私に必要な点は3点 ①チーム開発を想定したツール等の知識(Git等のバージョン管理) ②他フレームワークの知識(JavaScriptフレームワーク等) ③チーム開発を想定した関連部門とコミュニケーシ…

DaoAuthenticationProviderのテスト in JUnit

はじめに 今年は機能追加に時間を費やし、テストについては2023年2月頃に予定をしておりましたが、浅く触れ始める事を目的にJUnitを触れる事にしました。 感想としては、「もっと早く触れておけばよかった」に尽きます。 過去、OTP実装に当たってUsernamePas…

logout処理に悩んだ話 in Spring Security

はじめに Spring Security にてログアウト処理を行うときは下記のようにlogout()を設定するだけでよかった。 ログアウトの処理 :: Spring Security - リファレンス 今回は何かしらの処理をした後にログアウトするという実装。 ハマッタ事 上記のログアウト処…

循環参照 in Spring Boot

はじめに 中間テーブル実装に伴い、アカウント削除に必要な機能を加えてました。 元々、アカウント側とルーム側で分けてサービス層を作っており、ルーム側はアカウント側をインタフェースインジェクションで参照しておりました。 そのため、アカウント側から…

JavaScriptでFormに値を格納して送信する in SpringBoot

HTML内で選択した値をJavaScriptでFormに格納してPOSTで受け取るという処理。 HTML Thymeleaf <div id="joinDialogBox" style="display:none"> <form th:action='@{/joinRoom/moving}' th:object="${sendJoinRoomForm}" method= 'post'> <input id="joinPassword" th:field='*{joinPassword}' type='hidden'> </form></div>

onclickから値の取得ができなかった in html

切り分け ①onclickで値を取得する。→OK html <input id="numberOfLogs" type="hidden" th:value="${numberOfLogs}"> javascript document.getElementById("numberOfLogs").onclick = function test(e){ console.log(e.target.value); } ②値が動的でも問題ないかの切り分け その1 1.値を固定 html <input id="test0" th:value="${numberOfLogs}"> javascript fo…

無限スクロールとPageableでログを取得する in Spring Boot

はじめに 2022年9月16日、開発始めてから早くも3カ月。 別の大会が控えているため、貴重な休日はプログラミングと大会に備えるという日々。 今日は、長らく悩んでいたWebSocketでのセッションについて、いくつかの疑問を残すもおおかた解決したので貯めてい…

CSRFトークンを用いたリクエスト送信ができなかった in SpringSecurity

はじめに CSRFトークンを送信しても403が返ってくる事態に際して奮闘した2日間の記録である。 なお、コロナとも戦っていた模様。 内容 CSRFトークンを使用してリクエストを送信するコードを以下とした。 var csrfToken = document.getElementById("_csrf").v…

チャットルームの作成を試みた in WebSocket

はじめに 突然、暑くなりましたね。 私のような素人のブログでは、ただの日記のようになっていますが、久しぶりに更新しました。 動作環境 Spring Boot 2.7.3 Java SE11 実装しようとしたこと チャットルームの実装です。 前回試したチュートリアルを用いて…

パスワードの試行回数を制限する in Spring Security

はじめに 夏も近いと思わせるような木々の緑や山の風と、いつも同じ場所から聞こえるウグイスの鳴き声で頑張れそうな気がする日々です。 動作環境 Spring Boot 2.7.3 Java SE11 Spring Security 5.6.5 実装しようとしたこと パスワードの試行回数を制限する…

学習日記 in WebSocket

はじめに GW関係なく仕事ではありますが、身内の墓掃除に行きました。 春の瑞々しい空気と早朝の山々を照らす弱弱しい太陽がとてもよかった。 職場の人間関係で頭を抱える日々でしたが、亡くなった彼らの人生を思うと、私の悩みは笑い話程度な心地がします。…

例外処理をしたいのでExceptionHandle等の動作確認 in SpringSecurity

はじめに 綺麗な桜と花見をしている人々の幸せそうな光景をぼんやり眺めていたり、ジムでZARDのDon't you seeが流れていて懐かしさに浸ったり、仕事の失敗で苦い現実と向き合わなくてはいけない1週間でした。 改めて、背中をとんと押してくれるような機会に…

remember-meやlogoutがうまく動作しなかった in Spring Security

はじめに IT関係のお世話になった方々や同級生らの社会での活躍を目にして、こんな風に生きたかったなと思う休日です。 さて、今日はremember-meやlogoutがうまく動作しなかった問題をテーマにします。 動作環境 Spring Boot 2.6.3 Java SE11 実装しようとし…

maximumSessions がうまく動作しなかった in Spring Security

はじめに 昨今のプログラミングブームにあやかり、SpringBootでWebアプリ作成をされている方の弟子になりたい非エンジニアのroughです。 仕事の日のお昼休憩は、花粉で目が開けられなくとも散歩にでる習性があります。 さて、今回は認証をカスタマイズしたプ…