Oracle DB のセットアップでてこずる

Oracle DBを使った案件があるので、自分のPCにテスト用環境をインストールした。 情けない話だが、一旦初期環境のDBの文字コードが案件と合ってなかったので、ひとまずOracle DBに初期ログインしようとしたが、弾かれた。 Oracle DBがそもそも起動していなか…

教本の誤記

Spring Frameworkの勉強やってるんだけど、教本通りに打ってもブラウザ表示にエラー出ちゃってて、エラーの内容見てたら教本がvariableをvaliableって誤記してるからだった。全部が誤記だったら名前一致して通るんだけど、一部が正しいスペルだったので弾か…

Spring Frameworkでよく見かけるDependency Injection(DI)って

よく、直訳で「依存性の注入」なんて書いてあるとさ、不法なお薬を注射してるみたいでピンと来なくて、本を読みながら自分なりに考えた。 実装や継承なんかでそのインターフェースや親クラスに依存している、っていう言い方するよね。 その依存性の方向性を…

Javaの復習とSpring Framework学習

一旦、インフラ系の学習を中断して、Java Goldせっかく勉強して合格したので、今一番よく使われているSpring Frameworkの入門から始めようと思う。 ひとまず、Javaの基礎復習。 コレクション(Collection)の種類 List 順序をつけてデータを格納する Set 重複…

ハッシュ関数について

パスワードなんかの暗号化や改竄防止の話でよく出てくるハッシュ値、何かいまいちイメージがわかなかったんだけど、最近こういう事かなっていう感じが掴めてきたような気がする。 ハッシュ(hash)っていう英単語は「細かく刻んだもの、ごちゃまぜ、寄せ集め」…

参考サイトの書き方が嫌い

ネットワークの某有名な解説サイトの書き方が嫌いでなかなか読み進められない。今日中には目を通したいのだが。

ネットワークの知識も必要だな

サーバーはクラスターサーバーでWebサーバーとDBサーバーの計4台。 クラスターサーバーだと物理的なEth0とEth1の2つにIPアドレスが割り当てられてて、 アクティブとスタンバイの状態の時には二重化サーバーとしてのもう一つのIPアドレス(周囲からはその代…

Linux、再び

出荷前のソフトインストールやネットワーク設定、VMWareで動作確認、現地調整で実機テストなんかをやっていたので、簡単なコマンドはわかるけど、細かいところはよくわかっていなかった。 次のアサインされているお仕事は、インフラ系の業務なので、Linuxの…

Java SE11 Goldは、難易度高かった

2年くらい前にやっとJavaの勉強を始めて、半年くらいでJava Bronzeを飛ばしてJava Silverから受けて1回目は50%くらいの正答率で当然不合格、その後に1ヶ月猛勉強して2回目でSilver合格。その後、Javaと似ているというかかなり影響をお互いに受け合ったと思わ…

Java SE11 Goldの受験結果

アクセス数が、ほぼ自分のアクセスくらいなので、同じような境遇の方にも、情報を共有しようと思い、先日のJava SE11 Goldの試験結果を報告。 取得正答率63%/、63%合否正答率ラインで、合格でした。ご協力いただいた方、黒本、紫本の著者の方々、ありがとう…

モジュールシステムについて 【Java】

モジュールシステムというのが、SE9から導入されました。大まかにいうと、パッケージよりも上にモジュールという括りができまして、module-info.javaというモジュール定義ファイルに、自身のモジュールが公開するパッケージをexports ******; という感じで指…

インターフェイスと抽象クラスの違い【Java】

通常のクラスですと、いくつかフィールドや具象メソッドがあります。抽象クラスになると、少なくとも一つ以上の抽象メソッドが定義されます。 インターフェイスとは、クラスに含まれるメソッドの具体的な処理内容を記述せず、変数とメソッドの型のみを定義し…

enum(列挙型)とは?【Java】

Javaで使う列挙型は、その型に入る値が決まっているものをまとめたものです。 例えば、曜日の列挙型ならば、「月火水木金土日」の七種類しかないので、それ以外は入力できない(されない)ようにできるという事です。 試験対策ですが、この列挙型をコンストラ…

オートボクシング、アンボクシング【Java】

プリミティブ型同士だと暗黙の型変換(int -> doubleなど)できるけど、ラッパークラス同士だとできません。(Integer -> Doubleはダメ) ボクシングというのはラッパークラスに入れること。アンボクシングはラッパークラスからプリミティブ型にすること。

Optionalって何 【Java】

Optional<T>って名前ではあまりイメージできませんが、nullかもしれない<T>型を包み込む型です。nullチェックが簡潔に書けるという感じでしょうか。Java8から追加されているようです。</t></t>

Runnable と Callable

クラスのインスタンスが他スレッドで実行することを想定してデザインされている、という意味で、CallableのインターフェイスはRunnableに似ています。両者の違いは、Runnableは戻り値の指定が出来ず例外としてRuntimeExceptionしかスローできないのに対し、C…

ScheduledExecutorService(遅延実行)あたり【Java】

scheduleメソッドとか、scheduleAtFixedRateあたりを調べておきました。 scheduleの方は最初の遅延時間を引数で指定できます。 scheduledAtFixedRateは、最初の遅延時間、インターバルが指定できます。そしてどちらもその遅延時間、インターバルの時間単位を…

enumのサンプルコード【Java】

先ほどの投稿の下にでもサンプルコードを添付しようと思ったら、一回「見たままモード」で書いた記事は、左上の所で「はてな記法モード」を選択できなくなっていることに気づきイライラ。 列挙型は使用されるときに一度だけコンストラクタが走って、カッコ内…

Javaの列挙型は、クラスである【Java】

JavaのEnum(列挙型)ってやつは、クラスなのです。Javaをずっとやっていらっしゃる方は、「そりゃそうだろ、java.lang.Enumを継承(extends)してるんだもの」とか、「Values()とかValueOf()っていうメソッドもあるやん」って思うかもですが、CやC++、C#では…

匿名クラスにはコンストラクタを指定できない【Java】

名前が無いのがコンストラクタの特徴なので、名前だけのコンストラクタは使えない。 コンパイルエラーになる。 初期化する時は、初期化子 { } でオナシャス!

ローカルクラス内から参照するローカル変数は、実質的final【Java】

タイトル通りのことです。補足説明があれば後で書きます。

ComarableとComparator 似てるけど、どう違うん?【Java】

Javaでよく使う、ComparableとComparator、似てて混乱しますよね。僕はしてます。なので、このページで整理していこうかと思います。 Java.langパッケージはプログラムを作成する上でよく使用される、基本的なクラスをまとめたものです。頭にimport文で明示…

Enumのコンストラクタ、位置番号

Enumのコンストラクタは、privateで修飾しなければならない ordinal()メソッドで、その列挙子の位置を、先頭を0として順番になった数値を取得できる。

シリアライズって何?(Java)

メモリ上にあるインスタンスをストリームとして出力することを「シリアライズ」、逆にファイルに書き出された情報を元にインスタンスを作り直すことを「デシリアライズ」と呼ぶ。

デスクの飲み物を水筒のお茶に変えた

1杯あたりティーバッグが10円、お湯のガス代がどれぐらいか分からないけど、ティーバッグ4つと10円くらいとすると、1日50円で飲み放題飲める。 コンビニや自販機のお茶は140円くらいするもんね。節約していこう

Mapのmergeメソッドについて

Java8から Mapのmerge()メソッドは、第1引数にキー、第2引数に値、第3引数にBiFunction型(ラムダ式)をとる。

ラムダ式の使用頻度について

ツイッターで、ラムダ式の書き方って今までの機能に比べると、明らかに異質だよねって話の流れで、「ラムダ式禁止おじさん」とか「三項演算子禁止おじさん」という言葉を知って、ちょっとおもしろかった。 現役でアプリ開発やっていらっしゃる方からすれば、…

Eclipseを使い始めた

今まで、「スッキリわかるJava入門」のサービスでWeb上でJavaのコード入力を確認できるサービス、dokojavaっていうサイトで試してたんだけど、モジュールシステムやパッケージ、複数のクラスの動作確認をするには、Eclipseに慣れておいた方がよいだろうと思…

Javaの匿名クラスって

他の言語にも似たような仕組みがあるのかわかりませんが、可読性が悪くなるし、あえて匿名クラス使おうっていうシチュエーションが思い浮かばない。 匿名クラス使わなくても隠蔽はできるしな。クラスに名前ちゃんと付けてあげた方が他の人が読む時もわかりや…

はてなブログでのソースコードの張り付け方

編集方法を、「見たまま記法」から「はてな記法」に変えて、 下記のように記述します。 対応しているプログラミング言語の名前は小文字でした。大文字にすると予約語などの色分けが無くなります。 public class Hello { // メソッド宣言 public static void …