Java 例外について

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

ライブラリ・フレームワークの違い

ライブラリ(Library) よく使う機能・関数をまとめたもの。 汎用的な機能をまとめたもの。 我々側が、ライブラリの中にある機能を呼ぶ。 一部の部品として使う。 フレームワーク(Framework) ある処理を実行するための枠組みが含まれているもの。 我々側が…

トークン

トークンとは データの正当性の証明や、正しく処理が行われているかどうかを証明するためのデータのこと。 トークンの中にCookieIDが含まれてる感じ? ハッシュ化 あるデータを異なる値に変換すること。 擬似乱数(おまけ) 完全に予測不可能ではない乱数。 …

HttpServletRequest

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

Cookie

Cookieとは ユーザー情報をパソコンに一時的に記録・参照する機能。 サーバーがWebブラウザを通じて訪問してきたユーザーのパソコンに一時的にデータを書き込んで保存する仕組み。 Cookieにはサーバー側が指定したデータを保存しておくことができる。 ユーザ…

IPアドレス

IPアドレスとは ネットワーク上の住所。 プロバイダがIPアドレスを割り当ててくれる。 プロバイダとは、自分が使っている回線とインターネットをつなげてくれる仲介役。 IPアドレスの必要性 友達に手紙を送りたいと思っても、住所がないと手紙を届けることが…

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…

コンソールからJSONでPOSTする方法

curl -H 'Content-Type:application/json' -X POST -d "{"key":"value", "key":"value"}" http:// エラー {"code":400,"message":"Unable to process JSON"} 解決方法 curl -H 'Content-Type:application/json' -X POST -d '{"key":"value", "key":"value"}'…

ドメインとは

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

gitでクローンしたプロジェクトがEclipseに反映できない

gitでクローンしたファイルをEclipseでみようと思ってインポートしたら、 No projects are found to import. とエラー。 原因 cloneしたファイルの中に.classpathと.projectがないから 解決 cloneしたファイルのあるディレクトリにEclipseから新規プロジェク…

Git リモートのブランチをcloneする

リモートリポジトリをcloneしたものの、ファイルの中身がなかったよー 原因 cloneはmasterにあるものしか含んでいないから (違うブランチにファイルがあった) 解決 なので、リモートにあるブランチをcloneしたい .gitがあるディレクトリに移動して、リモー…

ローカルリポジトリを最新版にして、プッシュするまでの流れ

Git

まずはmasterブランチを最新の状態にする masterに移動 git checkout master upstream(fork元)から最新のものを取ってくる git fetch upstream fetchしたものをローカルのmasterに反映させる(ローカルのmasterを最新にする) git rebase upstream/master …

Git 開発を始める

Git

gitの初期化 git init gitignoreファイル作成 vim .gitignore .gitignoreの中身 build/ .classpath .gradle/ .project .settings/ bin/ リモートリポジトリにリポジトリを作る git clone URL リモートリポジトリを追加する fork元 git remote add upstream f…

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パターン 様々なオブジェクトを作るためのパ…

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 …