java

Java 例外について

2種類のエラー 想定内で、処理の実行開始前にチェックするエラー。 主に入力エラー。 異常な状態として処理の続行が不可能なエラー。 ※1の場合は、例外を使わない。 try・catch・finally その場で例外処理を行う。 tryは正常な時の処理 catchは異常な時の処…

HttpServletRequest

リクエストを格納するインターフェイス。 = リクエストの情報を持つ。 取得できる情報 HTTPメソッド URL Cookie など、、

LocalDateTimeをDBに保存できない

問題 LocalDateTime.now()を引数としてDBに保存しようとすると下記のエラーが吐かれる。 ERROR [2017-05-24 01:46:42,641] io.dropwizard.jersey.errors.LoggingExceptionMapper: Error handling a request: a16f2a5e900f29b6 ! com.mysql.jdbc.MysqlDataTru…

とりあえずApache PDFBoxを使ってみる

まずApache PDFBoxをインストール(Gradle) compile 'org.apache.pdfbox:pdfbox:2.0.5' とりあえずコードを書いてみる @Path("/job") public class Resource { @GET @UnitOfWork @Path("/pdf") @Produces(MediaType.TEXT_HTML) public PDDocument pdf() thr…

ドメインとは

ドメイン 値の取り得る範囲のこと。 Javaではテーブルのカラムの値をドメインと呼ぶ。

Java Gradle マルチプロジェクト作成方法

プロジェクト構成 multi-sample +--- sample-common +--- sample-core (sample-commonに依存) まずEclipseでsample-commonとsample-coreのGradle(STS)のプロジェクト作成 multi-sampleの直下でGradleによるプロジェクト初期化 gradle init settings.gradleを…

Java デザインパターンとは

デザインパターン よく使われる設計をパターン化したもの。 メリット プログラムの再利用がしやすくなる コードが読みやすくなる 有名なのがGoFデザインパターン。 GoFには23個のデザインパターンがある。 Builderパターン 様々なオブジェクトを作るためのパ…

Java パラメーターの種類

@FormParam <form> <input name = "email"> <input name = "password"> <input type = "submit"> </form> email、passwordの部分にあたるものがパラメーターとして送られてくる。 @QueryParam ブラウザから送るURLにある?以降がパラメーターになる。 ex) http://xxxx.com/hoge?email=hoge@xxx.jp&password=“pass” @PathParam URLが下記の時、 ex) …

.ymlにあるhttpClientとは

そもそもHTTPとは WebクライアントとWebサーバーの送受信において使われる取り決めのこと。 リクエスト・レスポンスのルール。 Webアクセスの流れ ユーザーがURLを入力する HTTPリクエストが、サーバーに送られる サーバーがHTTPリクエストを読み取って要求…

dropwizard + Gradle

Eclipse Marketplaceでgradleをインストール。 新規プロジェクト作成の時に「Gradle(STS)」を選択して作成。 build.gradleを編集。 apply plugin: 'idea' apply plugin: 'java' def defaultEncoding = 'UTF-8' def jdkVersion = '1.8' repositories { mave…

dropwizard + Maven

Eclipseからプロジェクトを作成する。 Maven Projectで新規プロジェクトを作成。 あとは、「Dropwizard入門 - Qiita」に従ってクラスを作成していく。

XML 参考ページ

Java XMLをDOMで読み込んで内容を取得する - Code Log Javaで実現するDOM/SAXプログラミング(2):初めてJavaでXML文書を操作してみる (1/3) - @IT technotype

Java AmazonAPIを使って検索したものをとってくる

したいこと 書籍のジャンルの中で、「ペン」と調べた時に出てくる書籍のタイトルを表示させる。 サンプルコード ItemLookupSample.java package test; import java.util.HashMap; import java.util.Map; import javax.xml.parsers.DocumentBuilder; import j…

列挙型 enum

あらかじめ要素数がわかっている定数の集合であるときにenumを使うといいらしい。 メリットはソースが読みやすくなる。 宣言方法 クラス修飾子 enum クラス名 { 列挙定数, 列挙定数, ... } 列挙定数は大文字で書く。 クラス修飾子は、piblic・private・stati…

javaでAmozon Product Advertising API

Amozon Product Advertising APIを使ってみる。 Product Advertising API Signed Requests Sample Code - Java REST/QUERY : Sample Code & Libraries : Amazon Web Services ここからサンプルコードをダウンロードする。 Codec – Home このサイトのReleases…

Java 基本の動き

Mainクラス public class Main { public static void main(String[] args) { //① Hoge moji = new Hoge(); //② moji.setMoji("ラーメン"); //③ System.out.println(moji.getMoji()); //⑦ } } Hogeクラス public class Hoge{ private String moji; //⑥ ˜˜˜˜ p…

Javaについて初めに出てきたよくわかんない用語

JavaSE(=JDK) Java Platform Standard Edition (Java Development Kit)の略。 Javaの開発を実行に関する必要なプログラムがすべてまとめられている。 この中にJREも含まれている。 JRE Java Runtime Environmentの略。 Javaのプログラムを実行するために…

CriteriaAPI・JPQL

CriteriaAPIを呼び出すと、クエリオブジェクトを構築する方法で、JPQLで定義しされている文法と同じ内容のクエリを作成できる。 JPQLとは、JPAで使われるクエリ記述言語のこと。

Optionalとは メソッド

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

Behaviorとは

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

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・テーブルとの間の変換指定(マッピング指定)をアノテーションだけでできる…

SpringBoot DB接続 つまずき

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

DIコンテナ・@Autowired・@Component

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

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>

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生成…

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

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

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) 解凍…

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

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 と ${...}←変数式 を使…

セッションとは

セッションとは、サーバーとクライアントの接続を意味する。 サーバーにユーザーがアクセスすると、そのサーバーとクライアントの間には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つにまとめたもの クラス データの処理をまとめたもの 設計図的な オブジェクト 設計図(クラス)をもとに実体を生成したもの(生成しないとクラスは利…

コンパイルとは?

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

extendsとは

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