Optionalとは メソッド

Optionalとは 値をラップすることで、直接いじることを禁止し、その値がnullかもしれないことを表現するクラス。 = nullチェクを強制させるためのクラス getメソッド 値があることが確実な場合に使う。 値がnullだったら、NosuchElementExceptionを投げる。 …

Behaviorとは

すべてのDBアクセスの処理を行うクラス。 一つのテーブルにつき、一つのBehaviorクラスがあり、DIコンポーネントとして利用される。

シンボリックリンク・ハードリンクとは

Linuxには、ファイルに対してリンクの張り方が2種類ある。 ファイルに別名を設定し、その別名で元のファイルにアクセスできるようにすることを、Linuxでは「リンクを張る」という。 シンボリックリンク ファイル本体の位置情報を保管しているファイル。 フ…

DAOとは

Data Access Objectの略。 永続的なデータへのアクセスを、ビジネスロジックから抜き出すこと。 例えば、データの保存先をテキストファイルからDBに変更すると大変だが(保存先のAPIに依存している)、それを解決出来る。 データアクセスをビジネスロジック…

Dropwizard 使ってみた

Cofigurationクラス ymlファイルから設定値を受け取るクラス。 ymlファイルの内容がこのクラスに設定される。 @NotEmpty 対象がnullでなく、空でないことを保証するためのアノテーション。 @JsonProperty わからーん Applicationクラス mainクラスとして実行…

FreeMarkerとは

FreeMarkerとは Javaのテンプレートエンジン。 FreeMarker Template Languageで書かれたテンプレートファイル(.ftl)と、Javaオブジェクトを合体させることで、動的にHTMLのソースコードを生成することができる。 <# hoge>タグ = 制御 テンプレート + Java…

基本データ型・参照型

基本データ型(プリミティブ型) 8つある。 boolean true / false char 1文字 byte -128〜127 short -32768〜32767 int -2147483648〜2147483647 long 約-922京〜約922京 float 浮動小数点数 double 浮動小数点数 バイト数(メモリ使用領域)がそれぞれ決ま…

JPAとは

Java Persistent APIの略。 Javaのオブジェクト世界とDBの世界を直接的につなげて、両間で自動変換を行う仕組み。 標準O/Rマッピングフレームワーク。 特徴 JavaオブジェクトとDB・テーブルとの間の変換指定(マッピング指定)をアノテーションだけでできる…

Eclipse Clean・Refreshの役割

前の記事でわからなかったことを調べてみました。 Clean(クリーン) クリーンビルドのこと。 修正・ビルドを繰り返している場合、ビルドを行った時点では、修正していないソースはコンパイルされない。そのため、すべてのソースコードをコンパイルし直す際…

SpringBoot DB接続 つまずき

エラーで、NullPointerExceptionが出てきた。 原因は、planRepositoryがnullだから。 @Autowiredでインジェクションされてない? 気づいたら、planRepositoryが@Autoworedになっていた!あらまぁ。 しかし、NullPointerExceptionのエラーは健在。 解決方法 P…

DIコンテナ・@Autowired・@Component

DIコンテナ DIとは「Dependency Injection」を省略したもの。意味は「依存性の注入」。 DIは、オブジェクト間の依存関係を作成する。 依存関係とは、クラス外でインスタンスを生成して、外から渡すこと。 DIコンテナとは、DIした時に、毎回依存性のあるもの…

Eclipse 小さい解決編

ファイルが消せない Eclipseでファイルを消去しようとしたら、 Resource is out of sync with the file system と出てきてファイルを消せなかった。 解決法 Project > Clean Projectファイルを右クリック Refresh ファイルがProject内に表示されない 逆にフ…

SpringBoot DBの利用

pom.xmlに以下のコードを追加。 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-jpa</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-jdbc</artifactId> </dependency> <dependency> <groupId>org.apache.to…</groupid></dependency>

DB 日本語対応

データベースに日本語のデータを入れようとしたら、 打っても消えてしまってデータを挿入できなかった。。。 show variables like "chara%"; で、設定を見たら +--------------------------+----------------------------+ | Variable_name | Value | +-----…

for文をStreamに書き換える

10回繰り返す処理 for (int i = 0; i < 10; i++ ) { 処理 } から、 IntStream.range(0, 10).forEach( i -> { 処理 });

Java 配列・コレクションの違い

配列とは データをたくさん詰められてまとまったもの。 同じデータを複数持つことが出来るオブジェクト。 一度サイズが決められると変更できない。 以前少しまとめたもの:Java用語まとめ - プログラミングMEMO コレクションとは 大きさが決まっていない配列…

Java 名前の見分け方

※→はYes・↓はNo 名前 ↓ 頭が大文字 → クラス ↓ 後ろに ( ) あり → メソッド ↓ 先頭にデータ型あり → 変数の宣言 ↓ 後ろに -> あり → ラムダの仮引数 ↓ 変数の利用

ラムダ式

ラムダ式とは コード文の冗長な部分を省いた書き方。 基本的な書き方 (仮引数列) -> {処理} んー。いまいち書き方がよく分からない。。。

StreamAPIについて

StreamAPIとは コレクション(ex. List, ArrayList)を操作するためのAPI。 ・データの抽出・加工・集計などができる。 ・stream内には基本的にデータは書かない。 ・元のコレクションは変更せずに使える。 StreamAPIの基本の流れ StreamAPIには、Stream生成…

Vagrantまとめ

Vagrantとは 自分のパソコン上で開発用の仮想マシンを簡単に構築することが出来るソフトウェア。 VirtualBoxとの違いは、今までの複雑なコマンドをシンプルなコマンドに集約した点らしい。 Box VagrantでのBoxとは、作成する仮想マシーンのベースとなるもの…

Docker起動・SpringBoot起動・DBへ接続

以前書いたDockerの起動方法について。 Docker 起動方法 - プログラミングMEMO MariaDBにはいる - プログラミングMEMO 上の記事のまとめとプラスα。 dockerファイルへ移動。 cd spring-boot-jpa-sample cd infra/docker/ docker machineが動いてるか確認。 d…

インターフェイスについて

そもそもインターフェイスとは インターフェイスとは、クラスの骨格だけを記述したもの・そのメソッドの宣言だけをまとめたもの。 インターフェイスを実装するときは、必ずそこにあるメソッドを実装しなくてはいけない。 継承とは異なり、implementsを使って…

MVCモデルとは

Model View Controller の頭文字をとったもの。 Model モデルは、システムの中でビジネスロジックを担当する、システムの本体部分。 モデルは入出力や表示といった処理を行うことはできない。 View ビューは、表示・入出力といった画面に関する部分を担当。 …

STS 再起動問題

STSでファイルの中身を変更するたびに、 アプリケーションを再起動させてからじゃないと実行できなかったのでその解消法を調べてみた。 pom.xmlに <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-devtools</artifactId> <optional>true</optional> </dependency> </dependencies> を加えるだけ。

Eclipseで消してしまったファイルの復元方法

消したファイルがあったフォルダを右クリック Restore from Local Historyを選択 消したファイルが表示されるのでチェックしてRestore

APIとは

Application Program Interfaceの略。 簡単に言うと、APIは特定の機能を持つプログラム部品。 いろいろな機能があるAPIから、必要なAPIを探し出し組み合わせるだけで、プログラムができる。 よく使われる命令をAPIにしてみんなで共有してしまえば、非常に効…

3階層システム・ビジネスロジックとは

3階層システム 3階層システムとは、クライアントサーバシステムをプレゼンテーション層・アプリケーション層・データ層 の3層に分割して構築したシステム。 クライアントおよびサーバの処理を複数の階層に分離して配置することで、ある階層へ変更を加える必…

LocalDateTime 使い方

現在時刻の取得 LocalDateTime now = LocalDateTime.now(); System.out.println(now); 月の追加 LocalDateTime addMonths = now.plus(3, ChronoUnit.MONTHS); System.out.println(addMonths); フォーマッター DateTimeFormatter format = DateTimeFormatter.…

commons-langを入れる方法

Lang – Download Apache Commons Langに飛び、 Binariesにある「commons-lang3-3.4-bin.zip」を選択して、ダウンロード。 ダウンロードしたファイルを解凍。 commons-langを入れたいProjectファイル内に、「lib」ファイルを追加。(もともとあればOK) 解凍…

Bootstrap グリッドシステムとは

サイトの横幅を均等に分けるガイドラインをグリッドと呼ぶ。 グリッドに沿って表示物を配置しておけば、 パソコンやスマホなど画面幅が異なってもレイアウトを組み替えやすくなる。 このグリッドを活用してレイアウトできる仕組みをグリッドシステムという。

文字列をランダムで出力する方法

ex)アルファベット10文字 String str1 = RandomStringUtils.randomAlphabetic(10); 結果:lPuIBtUDse ex)数字5文字 String str2 = RandomStringUtils.randomNumeric(5); 結果:76407 おまけ 先頭の文字だけ大文字で、他は小文字で表示させる方法 String str3…

よくわかんなかった系調べてみた

ArrayListクラス ArrayListクラスは大きさが決まっていない配列。 書き方↓ ArrayList<型> 変数名 = new ArrayList<型>(); <型>のところは、自分で作った型も入れれる。 送るモデルを設定・遷移するビューを指定 model.addAttribute("送り先のビューでの識別…

Thymeleaf機能

Thymeleafとは Thymeleafは、HTMLなどのテンプレートエンジン。 動的に内容を変更したいタグに「th:***」という属性を加えて 中身などを置き換える方式。 th:text 表示するもの。 変数の値をタグのテキストとして表示するには、th:text と ${...}←変数式 を使…

Git 基礎

そもそもGit・Githubとは? Gitとは、プログラムソースなどの変更履歴を管理する分散型のバージョン管理システムのこと。 Githubは、Gitの仕組みを利用して、世界中の人々が自分の作品(プログラムコードやデザインデータなど)を 保存、公開することをできる…

セッションとは

セッションとは、サーバーとクライアントの接続を意味する。 サーバーにユーザーがアクセスすると、そのサーバーとクライアントの間には1つのセッションが確立される。

FXMLをXMLエディターで開く方法

Eclipse > 環境設定 General > Ediotrs > File Associations File typesの横にあるAddを押して、「*.fxml」を書いてOKを押す。 File typesにある*.fxmlを選んで、Associations editorsのAddを押し、「XML Editor (default)」を選択して完了! 参考:*.doc…

JavaFXの基本

launchメソッド Applicationクラスに用意されているもので、Applicationのインスタンスを作成し、 それをアプリケーションとして実行する。 startメソッド Stageというクラスのインスタンスからshowメソッドを呼び出すこと。 これによって、画面にウインドウ…

スレッド・マルチスレッドとは

スレッドとは、アプリケーション内で実行する処理の最小単位(シングルスレッド)。 マルチスレッドとは、複数のスレッドを用意し、スレッドごとに独立した処理が実行されるもの。

ストリームとは

ストリームとは、外部とのデータ送受を抽象化した概念のこと。 Javaにおいては、ストリームはデータの読み書きを行う標準化された機構。 テキストストリームクラスの種類 ・FileReader ・BufferedReader ・FileWriter ・BufferedWriter

Java用語まとめ

変数 データ(数値・文字)を格納するための箱みたいなもの 型 用途に応じた箱の形 配列 同じ型の変数を1つにまとめたもの クラス データの処理をまとめたもの 設計図的な オブジェクト 設計図(クラス)をもとに実体を生成したもの(生成しないとクラスは利…

リポジトリとは

リポジトリとは、元々「貯蔵庫」や「資源のありか」といった意味。 IT用語では、ファイルやディレクトリの状態を記録する場所という意味。 git init で、空のリポジトリを初期化できる。

コンパイルとは?

コンパイル 作ったソースファイルを実行するには、コンパイルという作業が必要です。 コンパイルというのは簡単に言うと人間が書いたコードをコンピュータが読める状態に翻訳することです。 コンパイル方法 javac ファイル名.java 実行方法 java ファイル名 …

隠しファイルをデスクトップに非表示にする方法

Mac

Finderで隠しファイルを表示させるようにしたら、 デスクトップにも隠しファイルが表示されるようになってしまったので、 解消方法を探してみました。 ターミナルで defaults write com.apple.finder CreateDesktop -boolean false と、打ち killall Finder …

laravelわからなかったところまとめメモ

(9) 初めてのLaravel 5.1 : (9) モデルの作成 – ララ帳 Q:articleの作成保存の「Articleクラスをnewすることで、メモリー上に新規のArticleインスタンスを作成」とは? A: コンピューターの構成要素 ・CPU=脳みそ ・メモリー=記憶 ・ハードディスク=ノ…

マイグレーション ロールバックできない

初めてのLaravel 5.1 : (31) Relationships – ララ帳にて、 php artisan migrate:refresh を実行しようとしても、 Fatal error: Class 'AddPublishedAtToArticlesTable' not found とエラーが出てきてしまいます。 AddPublishedAtToArticlesTableクラスはあ…

パスワード再設定 viewファイルが見つからない

初めてのLaravel 5.1 : (29) パスワード再設定 – ララ帳にて、 パスワード再設定できる機能を増やした際に、 Reset Password画面のSend Password Reset Linkを押すと InvalidArgumentException in FileViewFinder.php line 137: View [auth.emails.password]…

メール環境設定でつまずいた

メールの環境設定 – ララ帳 を進めて、 .envファイルを MAIL_DRIVER=smtp MAIL_HOST=smtp.gmail.com MAIL_PORT=465 MAIL_ENCRYPTION=ssl MAIL_FROM_ADDRESS=お好きなメールアドレス MAIL_FROM_NAME=お好きな名前 MAIL_USERNAME=お好きなGmailアドレス MAIL_P…

extendsとは

extendsとは、クラスの継承のこと。 定義済みのクラスの機能を引き継いで、新たにクラスを定義できます。 ex) class Foo { // } class FooChild extends Foo { // } Fooで定義したクラスを、FooChildに継承されていることになります。

Classがないというエラー

PostsController.phpに対応するルートを定義するために、 routes.phpにあったルートを全て消し、 Route::resource('posts', 'PostsController'); を追加しました。 何が定義されているか確認するために、以下のコマンドを打ったら、 php artisan route:list …

Laravel FLASHメッセージつまずき

laravelのControllerにFLASHメッセージを実装しようとし、 Session::flash('flash_message', 'メッセージ'); をArticlesController.phpに追加したら、 Add Articleを押してもエラーが表示されるようになってしまいました。 解決方法 ArticlesController.php…