talosのプログラミング教室

プログラミング-Java

Java Gold合格への道

Java Goldの勉強を始めました。 勉強して学んだことをまとめています。

Java Gold合格への道 ~入れ子クラス~

今回は入れ子クラスについて説明します。

Java Gold合格への道 ~defaultメソッド~

今回はdefaultメソッドについて説明します。

Java Silver合格への道 ~拡張for文の中でArryaList.removeしても例外がスローされない謎に迫る~

Java Silverの勉強をしている中で最も納得いかなかった問題を紹介します。 黒本にはあまり詳しく解説が書かれていなかったのでぜひ見ていただければと思います。

Java Silver合格への道 ~受験編~

Java Silverを受験してきたので、過程と結果を報告します。

Java Silver合格への道

Java Silverでは「こんなのどこで使うんや!」って問題がよく出るのですが、そういうことは覚えにくいのでブログでまとめることにしました。

Java Silver合格への道 ~Predicateインタフェース~

今回はPredicateインタフェースについてです。 Function、Consumer、SupplierはJava Silverの試験範囲に含まれていないので扱いません。

Java Silver合格への道 ~関数型インタフェースとラムダ式~

今回は関数型インタフェースとラムダ式についてです。

Java Silver合格への道 ~アンダースコアを用いた数値表記~

今回はアンダースコアを用いた数値表記についてです。

Java Silver合格への道 ~可変長引数~

今回は可変長引数についてです。

Java Silver合格への道 ~ラベル~

今回はラベルについてです。

Java Silver合格への道 ~配列の宣言と初期化~

今回は配列の宣言と初期化についてです。

Java Silver合格への道 ~コンスタントプール~

今回はコンスタントプールについて説明します。

【Java】パスワードのハッシュ化とログイン認証

今回は安全なアプリを開発するために重要なパスワードのハッシュ化について説明します。 ハッシュ化のアルゴリズムとしては「bcrypt」を使用します。

Java Silver合格への道 ~X進表記~

今回はX進表記についてです。

Java Silver合格への道 ~staticインポート~

最近Java Silverの勉強を始めました。 Java Silverでは「こんなのどこで使うんや!」って問題がよく出るのですが、そういうことは覚えにくいのでブログでまとめることにしました。 今回はstaticインポートについてです。

【Webアプリ】エラーページの設定

今回はエラーページの設定の仕方を説明します。 Webアプリを作る際は必須なので、必ず設定するようにしましょう。

【Java・MyBatis】排他制御の実装方法

WebアプリからDBを更新するとき、2人以上のユーザーが同時に更新すると、データに不整合が起こります。 この現象を防ぐ手法としてよく使われるのが楽観的排他制御です。 この手法では、参照したときのバージョンや更新日時が更新時に変更されていないかを確…

【MyBatis】自動生成した~Exampleクラスの使い方

MyBatis Generatorを使うと~Exampleクラスが生成されるのですが、それの使い方に関する資料があまりないので説明したいと思います。

【Java】ページングでWebアプリのパフォーマンスを向上させる

Webアプリのパフォーマンスを大きく左右する要因としてDB処理が挙げられます。 扱うデータが多くなればなるほど時間がかかるため、一覧表示などは工夫しないとユーザーへの負担が大きくなります。 そこで今回は、ページングを使って一覧表示をすることで、We…

【Java】URL直打ち対策

こんにちは。talosです。 Webアプリを作っていると、会員ページなどログイン前にはアクセスさせたくないページがあると思います。 今回はそのような場合のアクセス制御の方法を紹介したいと思います。

JavaServer FacesでWebアプリ開発 ~基本編~

今回はJSFを使って簡単なWebアプリを作ります。環境構築がまだの方はこちらの記事から読んでみてください。talosta.hatenablog.com テーブルの作成 プロジェクトの作成 JDBCドライバを入れる JavaBeansを作成 DAOを作成 バッキングビーンを作成 xhtmlファイ…

JavaServer FacesでWebアプリ開発 ~環境構築編~

最近、JSF(JavaServer Faces)をやっているのですが、参考になるWebサイトが少ないので書いていこうと思います。今回は環境構築をしていきます。 7-Zipをインストール Eclipseをダウンロード MySQLインストールの準備 MySQLのインストール サーバの準備 おわ…

はじめてのJava

Javaの学習をこれから始めたい方向けの記事を書きました。基礎の部分はほぼ網羅しています。書籍と比べると飛ばしている部分も多いですが、その分書籍より短い時間で最低限の知識を学べます。プログラミングの学習をしたいけど時間がない方々はぜひ見てくだ…

はじめてのJava ~ネットワーク編~

今回はJavaでネットワークプログラミングをしていきます。Webアプリなどを作るためには必須の技術ですのでしっかり覚えましょう。 クライアント/サーバアプリケーション サーバプログラム解説 クライアントプログラム解説 おわりに クライアント/サーバアプ…

はじめてのJava ~デッドロックと協調編~

今回はマルチスレッドで起こり得るデッドロックとその解決法について説明します。これを理解しないとプログラムの停止などに繋がるのでしっかり覚えましょう。 デッドロックが起こる場面 デッドロックの解決法 おわりに デッドロックが起こる場面 次のプログ…

はじめてのJava ~マルチスレッド編~

今回はJavaにおけるマルチスレッドの実装をやっていきます。マルチスレッドでは複数のスレッドを並行処理できるため効率的にプログラムを実行できますが、設計を誤ると結果が想定と異なってしまうなどの危険性もあります。しっかり覚えて使いこなしましょう…

はじめてのJava ~例外処理編~

今回はJavaの例外処理について説明します。例外処理とはプログラムの実行中に発生した問題に対する処理のことです。例外処理を記述することで、問題の発生よる異常終了を避けることができます。堅牢なシステムを作るためには非常に重要な部分ですので、しっ…

はじめてのJava ~パッケージとインポート編~

今回はJavaのパッケージとインポートについて説明します。パッケージはクラスやインタフェースの集まりです。パッケージを使うことでクラスやインタフェースの管理が容易になります。作るプログラムが大規模になるほどよく利用することになるので、しっかり…

はじめてのJava ~抽象クラスとインタフェース編~

今回はJavaの抽象クラスとインタフェースについて説明します。この2つはとても似ている機能なので、まとめて紹介します。初心者が混同しやすいこの2つですが、使える場面が異なります。 抽象クラスとインタフェースはなぜ必要なのか 抽象クラスの使い方 イン…