ITエンジニアの成長ブログ

ITエンジニアとして行う勉強の発信&日々の生活で体験した楽しいことをゆるく発信

2024-01-01から1年間の記事一覧

SimpleDateFormatの文字列型→日付型の変換について

Javaで文字列として取得した日付を、日付型に変換するためにSimpleDateFormatを使用する方法がありますが、このSimpleDateFormatの扱いには注意が必要です。例えば、以下のように本来存在しない日付(2024/02/31)でフォーマットすると良からぬことが起きま…

IDENTITYプロパティを初期化する方法

SQL ServerでIDENTITYプロパティを初期化する方法が気になったので調べました。 サンプルテーブル 以下のサンプルテーブルで、IDENTITYプロパティを初期化する方法を実際に確認したいと思います。 CREATE TABLE [dbo].[Table_1]( [num] [tinyint] IDENTITY(1…

データベースのテーブルに定義する更新ログ列について

今回は、データベースのテーブルに定義する更新ログ列について簡単にまとめたいと思います。 データベースのテーブルに定義する更新ログ列とは? この記事において更新ログ列とは、テーブルに定義する以下のようなカラムのことを示しています。 更新日時 更…

SQL Serverでは、行値式が使えない

SQL Serverでは”行値式”が使えません。行値式とは、以下のように使えるSQLの構文を言います。 WHERE (col1, col2) IN ( (A, B), (C, D) ) 上記で何となくわかるかと思いますが、複数のカラムの値を条件にして、特定のレコードを取得することができます。上記…

Excelのセルの書式が文字列から数値に変更されない

今回は、Excelの話題です。あまり需要がないかもしれませんが、個人的に操作時にかなり煩わしかったので、今回対処方法を調べました。よろしければお読みください。今回使用するのは、Microsoft 365のExcelバージョン2406です。おそらく、他のバージョンでも…

Subversionのマージについて

「バージョン管理システム」と言えば、最近は専らGitが使われることが多いと思いますが、今回はSubversionにおけるマージのメモを残しておきます。メモを残す理由としては、日本語のドキュメントが少ないことやマージの処理がバージョンで色々と変わっていた…

SQL Serverの復旧モデルとは?

今回は、SQL Serverの復旧モデルについてお話したいと思います。今回は、あくまで概要のみ説明します。 SQL Serverの復旧モデルとは? 復旧モデルとは簡単に言えば、データベースのバックアップをどのようなポリシーで実施するかを決めるためのモデルとなり…

JavaのBigDecimalで小数点を扱う際の注意点

今回は、JavaのBigDecimalで小数点を扱う際の注意点をまとめてみようと思います。検証した環境は以下の通りです。 Java検証バージョン BigDecimalオブジェクト生成時の注意点 BigDecimalのオブジェクトを生成する場合に注意することがあります。ある小数点を…

環境依存ファイルをApache Antで管理する方法

今回は、環境依存ファイルをApache Antでどのように管理すればよいかについて、自分の経験した方法を備忘録として残しておくためにこのブログ記事を書きました。ここで言う環境依存ファイルとは、ローカル環境や結合環境、ステージング環境、本番環境などの…

TomcatにWebアプリケーションをGUIでデプロイする

今回は、Webアプリケーションコンテナの一つであるApache Tomcat(以降、Tomcat)にWebアプリケーションをGUIでデプロイする方法を紹介したいと思います。今回の検証はTomcatバージョン8.5系、Windows OS 11Proで確認しています。 GUIでデプロイするための準…

TomcatにおけるsetCharacterEncoding()の動作について

TomcatにおけるHttpServletRequestのsetCharacterEncoding()の動作について気になることがありましたので、個人的にメモしておきます。HttpServletRequestのsetCharacterEncoding()は、サーブレット/JSPでリクエストパラメータを取得する際に文字エンコーデ…

Apacheライセンスの概要を理解する

今回は、Apacheライセンスについて簡単に理解しておこうと思い記事にしました。 Apacheライセンスとは? Apache Software Foundationが考案したオープンソフトウェア(OSS)のライセンスのことです。現在は、「Apache License 2.0」が最新となっているようで…

Apache TomEEを触ってみる

最近Jakarta EE周りを勉強のため調べていたら、Jakarta EE準拠のアプリケーションサーバーとして「Apache TomEE」を見つけました。今回は、このApache TomEEを実際に手元の環境にダウンロードして、簡単な動作確認までやってみようと思います。手元の環境は…

Javaのコンパクトプロファイル(Compact Profile)とは?

少し古い話題ですが、最近コンパクトプロファイル(Compact Profile)と呼ばれる仕組みがJava SE 8で導入されていたことを知りました。今後新規案件でJava SE 8を使うことはないかもしれませんが、どのような機能か気になったので簡単に調べたことをメモしま…

Java SE 8のJVMの起動オプション-clientと-serverについて

古い書籍を読んでいたら、JVMの起動オプションの「-client」と「-server」を見つけました。これらは、JVM(HotSpot VM)の動作モードを選択することができるオプションのようで、上記に示した通り2つのオプションがあります。 -client → 最適化をそこそこに…

Java関連の用語が多すぎてよくわからなくなったので整理した

最近は、Java言語をよく触っているのですがJava関連の用語が多くて、それぞれ何を意味するのかを理解しているとは言い難いため、簡単でもいいからメモしようと思いブログを書くことにしました。偉そうに言いましたが、既にとても素晴らしいエントリがありま…

最近よく見かけるCookieの使用の同意を求めるポップアップについて

最近、Webサイトを開くとCookieの使用の同意を求めるポップアップが表示されることが多くなってきました。個人的には、こういう風にCookieの使用の同意を求めるのが最近の流行なのかな、というくらいの軽い気持ちでCookieの使用を同意したり、無視したりして…

Tomcatを自分でビルドしてみた

TomcatはApache Lincensの元に提供されているOSSの一つです。ソースコードが公開されており、自分でビルドすることができます。興味があったので、実際に自分でビルドをやってみようと思います。ビルド対象のバージョンは「8.0.53」にしたいと思います。既に…

Java EEからJakarta EEへ名前変更された経緯について

Javaを普段から使っているのに、情報収集していなくてお恥ずかしい限りですが、タイトルの通り「Java EE」から「Jakarta EE」へ名前が変更された経緯を知りたくて調べました。既に詳しくまとめてられているブログ記事がありましたので、ここに紹介させていた…

TomcatのGlobalNamingResourcesを使ってデータソースを定義する

以前、Tomcatでデータソースを定義する方法をブログにまとめました。 Tomcatでデータソースを設定する方法 - ITエンジニアの成長ブログTomcatでデータソースを定義する方法を調べる中で、「GlobalNamingResources」というコンポーネントを見つけました。どう…

Tomcatでデータソースを設定する方法

いまさら感はあります、Tomcatでデータソースを設定する方法を確認していきたいと思います。動作確認するTomcatのバージョンは、「8.0.47」です。現時点ではサポートが切れているバージョンですのでご注意ください。 JDBCドライバの格納 まずは、接続対象の…

GlassFishって何?

GlassFishって何だろうということで、調べたことをメモ程度にまとめます。Java EEとJakarta EEが言葉として混在してますが、ご容赦ください。 GlassFishとは? GlassFishは、オープンソースでJakarta EE(旧:Java EE)準拠のアプリケーションサーバーです。…

javacのsourcepathオプションの意味について

今更ながら、今現在ではあまり必要ではないと思われる知識をUPDATEしたので念のためブログにまとめておこうと思います。タイトルの通りですが、内容はJavaのソースファイルをコンパイルするときに使うコマンドであるjavacの「sourcepath」オプションの意味に…

JDBCのResultSetのclose()メソッドの呼び出しは必要か?

今回はタイトルの通り、JDBCのResultSetのclose()メソッドの呼び出しは必要かどうかを確認したいと思います。 はじめに 私のこれまでの経験では、JDBCのAPIで実装しているプログラムはResultSetのclose()メソッドを明示的に呼び出していることもあれば、呼び…

Tomcat起動中のファイル再読み込みの動作について

Tomcat起動中のファイル再読み込みの動作について気になったので調べました。調べてみると2つの異なる設定があったので、紹介したいと思います。動作確認したバージョンは、「Tomcat 8.5.58」です。環境は、Windows 11 Proになります。まず1つめは、Context…

SQL ServerのJDBCドライバの種類について

あるとき、SQL ServerのJDBCドライバにjarファイルの名前の書式が異なる、2種類のJDBCドライバが存在することに気づきました。たとえば、以下の2種類です。 sqljdbc-4.2.jar mssql-jdbc-6.2.2.jre8.jar これらの違いを知らなかったので調べてみました。まず…

Tomcatで動作するWebアプリケーションでは、Class.forName()が必要なのか

最近JDBCのドライバを読み込むための、Class.forName()はJDK1.6で不要になったという記事を書きました。 Javaでデータベース接続時のおまじない「Class.forName()」はもう不要だった - ITエンジニアの成長ブログ上記の話は、普通のmainメソッドで実行するよ…

Tomcatのバージョンの確認(2024年6月時点)

Tomcatの最新バージョンがどうなっているのか気になったので、確認してみました。Tomcat公式のページにて、バージョン一覧を表にして分かりやすくまとめてくれています。 Apache Tomcat® - Which Version Do I Want? 現時点でサポートしているのは、以下の3…

Tomcatのセッション情報の永続化について

今回は、Tomcatのセッション情報の永続化について確認したいと思います。 Tomcatのセッション情報の永続化とは? まずは、そもそもの言葉の意味から説明します。以前、Tomcatで稼働しているWebアプリケーションを動作確認していた時に、必要に応じてTomcatの…

Javaでデータベース接続時のおまじない「Class.forName()」はもう不要だった

今更な内容でお恥ずかしいのですが、JDBCでコネクション取得するときに「おまじない」として記載する「Class.forName()」が現在では既に不要になっていたことを最近知りました。このおまじないである「Class.forName()」は、データベースのコネクションを取…