Java デザインパターンとは

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

git rebase・squash

Git

rebase 今までのコミットしてきたものの上にmasterのコミットをポンっと置くイメージ。 rebaseするときは一旦新たにブランチを切ってから行うべし。 squash コミットを一つにまとめる squashの流れ コマンドでコミットのログを見る git log --oneline を叩く…

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」に従ってクラスを作成していく。

503エラー

エラー内容 サーバーの過負荷状態で一時的にWebページが表示できないときに起こるエラー。 これ以上無理!というサーバーからの警告。 原因/対処法 サーバーの負荷チェック 時間を置いて再度アクセス サーバーの転送量を上げる サーバーの負荷を無理に上げ…

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…

Eclipseの実行ログを見る方法

cd ~/Development/salt-inc/zero-one/zo-api/zo-tools/ で移動。 zo-tools.ymlファイルにある、appenders:archivedLogFilenamePattern:に書いてあるディレクトリをコピー。 tail -n 行数 /var/apps/logs/zo-tools.log(さっきコピったやつ) を打てば実行ロ…

Eclipseで実行できない問題

問題 EclipseでApplicationを実行しようとすると、 usage: java -jar project.jar [-h] [-v] {server,check} ... positional arguments: {server,check} available commands optional arguments: -h, --help show this help message and exit -v, --version …

Linux tail・cat

cat ファイルを指定することで、そのファイルの中身を表示させる。 cat ファイル名 tail テキストファイルの末尾のn行を抜き出す。 tail -n 行数 ファイル名

Git origin・upstreamとはとは

origin レポジトリの場所の名前(別名) master デフォルトのブランチの名前 upstream ブランチの派生元 イマイチわかってないのでまた後で調べよー

Git remote

Git

remote 他のリポジトリとの接続の作成・削除・内容確認ができるコマンド。 git remote -v 他のリポジトリへの接続の一覧をURL付きで表示。

DB フィールド確認・追加・削除・変更

DB

フィールド確認 SHOW FIELDS FROM テーブル名 フィールド追加 ALTER TABLE テーブル名 ADD フィールド名 型 AFTER フィールド名 AFTER フィールド名で、どこにフィールドを追加するか決められる。 テーブルの先頭にフィールドを追加したい時は、FIRSTにする…

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

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

CriteriaAPI・JPQL

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

Git fetch

Git

git fetch upstrean upstreamから、他の人が変更したファイルを、自分のところへ持ってくる。 データ取得。取得するだけ。 git rebase upstream/master fetchしてきたものを自分のところに追加して、自分が変更したものをその上にのせる。 他の人がファイル…

Supplierとは

関数型インターフェース。 引数なしで、指定された方の値を返す。 Supplier <T> 結果として、Tを返す。(引数なし)</t>

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