ITお絵かき修行

3歩歩いても忘れないために

JJUG CCC 2017 Springメモ【AB6 Java8プログラミング ベストプラクティス & きしだが働いてるかどうかIDEのメモリ使用状況から機械学習で判定する】

JJUG CCC 2017 Springに参加した。 表題のセッションに参加したので、参加メモを書いておく。■JJUG CCC 2017 Spring JJUG CCC 2017 Spring ■Call for Papers きしだが働いてるかどうかIDEのメモリ使用状況から機械学習で判定する ■SlideShare Java8 コーディ…

JJUG CCC 2017 Springメモ【CD4 Unified JVM Logging: Java 9 から変わる JVM ログ】

JJUG CCC 2017 Springに参加した。 表題のセッションに参加したので、参加メモを書いておく。 またJava9のea版を使って自由研究という名の動作確認もしてみた。※正確な情報・見解は後日公開される(であろう)登壇者のスライドや公式資料等を参照のこと。 JJUG…

Rakuten Technology Conference 2016参加メモ

Rakuten Technology Conference 2016に参加した。tech.rakuten.co.jp会場が楽天クリムゾンハウスで、全セッションが英語での開催とのことだったので割を気合いをいれて会場に行ったが、受付の外国人のお兄さん(エンジニア?)が「受付はこちらでーす」と日本…

Developers Summit 2016 Summerメモ【[A-3]共創と競争から生まれる新たなエコシステム】

Developers Summit 2016 Summerに参加した。 下記セッションに参加したので、参加メモを書いておく。 ※正確な情報・見解は後日公開される(であろう)登壇者のスライドや公式資料等を参照のこと。■Developers Summit 2016 Summer Developers Summit 2016 Summe…

OCJP Gold SE8へアップグレードした

Upgrade Java SE 7 to Java SE 8 OCP Programmer(1Z0-810)に合格した。 OCJP Gold SE7から同SE8への移行試験だったので、純粋なOCJP Gold SE8の試験(1Z0-809)とは内容が異なる。点数は66点だった。(※合格点は65点)前回のSE7試験の時と同様に、超ギリギリだっ…

AWS Summit Tokyo 2016メモ【The State of The Art - AWS / EC2 Networking (同時通訳)】

AWS Summit Tokyo 2016に参加した。 下記セッションに参加したので、参加メモを書いておく。 ※正確な情報・見解は後日公開される(であろう)登壇者のスライドや公式資料等を参照のこと。 www.awssummit.tokyo The State of The Art - AWS / EC2 Networking (…

JavaDayTokyo2016メモ【3-E: Javaの進化にともなう運用性の向上はシステム設計にどういう変化をもたらすのか】

JavaDayTokyo2016に参加した。 下記セッションに参加したので、参加メモを書いておく。 www.oracle.co.jp [3-E: Javaの進化にともなう運用性の向上はシステム設計にどういう変化をもたらすのか] TIS株式会社 アプリケーション開発センター シニアエキスパー…

JavaDayTokyo2016メモ【2-A: Project Jigsawではじめるモジュール開発】

JavaDayTokyo2016に参加した。 下記セッションに参加したので、参加メモを書いておく。 ※正確な情報・見解は後日公開される(であろう)登壇者のスライドや公式資料等を参照のこと。 www.oracle.co.jp [2-A: Project Jigsawではじめるモジュール開発] Java in …

Upgrade Java SE 7 to Java SE 8 OCP Programmer(1Z0-810)対策 第三章 ラムダ式を使用するコレクション(1)

第三章よりラムダ式を使用したstreamに対するフィルタリングを取り扱う。■注意 正確な情報は下記リンクを参照してください。■試験対策ページ java.boot.by ■試験 Upgrade Java SE 7 to Java SE 8 OCP Programmer | Oracle Certification Exam 3.1. forEach()…

Upgrade Java SE 7 to Java SE 8 OCP Programmer(1Z0-810)対策 第二章 ラムダ式を使用する事前定義済みの型の使用

第二章よりJava8で追加された関数型インタフェースの各クラス、メソッドの仕様を追っていく。 各インタフェースの詳細まで追うのは辛いので取り扱わない…■注意 正確な情報は下記リンクを参照してください。■試験対策ページ java.boot.by ■試験 Upgrade Java …

Upgrade Java SE 7 to Java SE 8 OCP Programmer(1Z0-810)対策 第一章 ラムダ式(3)

(1)(2)に引き続き、ラムダ式の章を進める。■試験対策ページ java.boot.by ■注意 全文が超意訳です。正確な情報は下記リンクを参照してください。 ■試験 Upgrade Java SE 7 to Java SE 8 OCP Programmer | Oracle Certification Exam 1.3. ラムダ式について説…

Upgrade Java SE 7 to Java SE 8 OCP Programmer(1Z0-810)対策 第一章 ラムダ式(2)

(1)に引き続き、ラムダ式の章を進める。■注意 全文が超意訳です。正確な情報は下記リンクを参照してください。 ■試験対策ページ java.boot.by■試験 Upgrade Java SE 7 to Java SE 8 OCP Programmer | Oracle Certification Exam 1.2. 関数型インタフェースク…

Upgrade Java SE 7 to Java SE 8 OCP Programmer(1Z0-810)対策 第一章 ラムダ式(1)

Upgrade Java SE 7 to Java SE 8 OCP Programmer(1Z0-810)を受けるための勉強メモ。 下記サイトが詳しそうな雰囲気だったので訳しながら追ってゆく。 ■注意 全文が超意訳です。正確な情報は下記リンクより一次情報を参照してください。 ■お世話になる試験対…

jol(Java Object Layout)を使ったオブジェクトのサイズ取得

jol(Java Object Layout)というOpenJDKに含まれるツールを使用して、オブジェクトのメモリサイズが取得できるらしいので試してみる。 OpenJDK: jol ■環境 ・Windows7 Home Premium 64bit ・JDK 1.8.0_60-b27 ・Eclipse Luna SR1 (4.4.1) ・jol (0.4) (※jol-c…

『オブジェクトデザイン』第2章 DoubleDispatchパターン実装

下記エントリに影響を受けて、『オブジェクトデザイン』を読み始めている。kymmt90.hatenablog.com『オブジェクトデザイン』の第2章において、DoubleDispatchパターンの実装が紹介されているが、 要点が書かれているだけで全体の実装が書かれていなかったの…

PowerShellを使ってOracleJDKサイレントインストール

OracleJDKをサイレントインストールする。【概要】 ・OTNサイト(US)から取得したJDK8u45(64bit)のインストーラを使用しサイレントインストールする。*1 ・ダウンロードしたインストーラは「C:\\tmp」に置く。 ・環境変数も設定する。 →ユーザ環境変数の「JAV…

JavaでTelnetクライアント作成・RHELにTelnetサーバ導入

JavaのSocketクラスを使ってTelnet接続してみる。 ついでにTelnetサーバを立てる手順も備忘録として残す。【すること】 ・Telnet接続する。 ※セッションモードで端末に接続し、コマンドが打てるところまで確認する。 NVTとしての仕様は網羅しない。【環境】 …

AWS Summit Tokyo 2015 2日目【EA-08】

AWS Summit Tokyo 2015の2日目に参加した。 下記セミナーに参加したので、まとめ・感想文を書いておく。 ※正確な情報・見解は後日公開される(であろう)公式資料や資料作成者のスライド等を参照のこと。 [EA-08: Enterprise Advance]AWS と NGN(フレッツ・キ…

AWS Summit Tokyo 2015 2日目【Day2 キーノート】

AWS Summit Tokyo 2015の2日目に参加した。 いくつかセミナーに参加したので、まとめ・感想文を書いておく。 ※正確な情報・見解は後日公開される(であろう)公式資料や資料作成者のスライド等を参照のこと。 ※長くなったので基調講演のまとめを前に置いた。 D…

Oracle Certified Expert, Java Platform, EE 6 Web Component Developerうかった

Oracle Certified Expert, Java Platform, EE 6 Web Component Developer(OCJ-WC)に合格した。 受験動機としては、生のサーブレットを触ったり、アプリケーションサーバにデプロイする資産構成をまとめたりする機会があり、体系的な知識を得るために勉強して…

RedmineのREST APIを使ってチケット登録・参照

RedmineにはRESTのAPIが用意されており、HTTPボディ部にJSON or xml形式のデータを指定してリクエストを送信することで、チケットに対するCRUD操作ができる。 今回はRedmine公式が配布している「Redmine Java API library」*1というライブラリを使ってチケッ…

StreamAPIのおさらい - java.util.stream.Collector

JavaSE8で導入されたStreamAPIを使用してできる処理のうち、java.util.stream.Collectorクラスの機能を利用してできる処理を書いてみた。 【やること】 ・java.util.stream.Collector系クラスのメソッドを使ってできる処理をさらう。 ・Java Collectorメモ(H…

StreamAPIのおさらい - java.util.stream.Stream

JavaSE8で導入されたStreamAPIを使用してできる処理のうち、java.util.stream.Streamクラスの機能を利用してできる処理を書いてみた。 【やること】 ・java.util.stream.Stream系クラスのメソッドを使ってできる処理をさらう。 ・Java Streamメモ(Hishidama'…

jBatch(Batchlet & Chunk)+JPA2.1(Entity & JPQL)でデータ読み書き

JavaEE7で追加されたjBatch(JSR-352)とJPA2.1(JSR-338)を使用して、DBのデータを読み書きする。 【やること】 ・jBatchのBatchlet方式とChunk方式を両方使ってバッチジョブを実行する。 ・JPAのうち、SELECTはJPQL、INSERT,UPDATE,DELETEはEntity方式を使用…

aptを使ったアノテーション処理

apt(Annotation Processing Tools)を使用してソースコード内のアノテーションを読み込む。 JSR-175に準拠したcom.sun.*パッケージのMirrorAPIではなく、JSR-269に準拠したaptを使用する。 JEP-117にて、aptが内部で使用するクラスが、JavaSE6より追加されたj…

サーブレット3.0のセキュリティ系アノテーションを試す

色々試してみたのでまとめる。試したのは以下のアノテーション。 @ServletSecurity @HttpConstraint @HttpMethodConstraint 【検証環境】 Tomcat7.0.56 【パターン1】特定ロールのユーザのみアクセスを許す場合※ロール「admin-role」にアクセス許可を与える…

http-method-omissionを試す

サーブレット3.0の仕様から追加された「http-method-omission」について。詳しくは下記ブログ参照。 New Security Features in Glassfish v3 (Java EE 6) - Part I (Yours Officially...Nithya Subramanian) <security-constraint> <display-name>WebConstraint</display-name> <web-resource-collection> <web-resource-name>test</web-resource-name> </web-resource-collection></security-constraint>

LuhnアルゴリズムをJavaで書いた

カドカワ祭りで買った『プログラマの考え方がおもしろいほど身につく本』に載っていたLuhnアルゴリズムをJavaで書いてみた。 Amazon.co.jp: カドカワ祭り: Kindleストア: 【ピックアップ】ライトノベル, 【ピックアップ】文芸, 【ピックアップ】実用・ビジネ…

RabbitMQ tutorial - RPC Pattern in Java

RabbitMQのチュートリアル。 Client/ServerスタイルのRPCパターン。 【お題】 RabbitMQ - RabbitMQ tutorial - Remote procedure call (RPC) ・リクエスト時に「correlationId」を指定しRPC通信におけるClient/Server間の通信を紐付ける。 ・リクエスト時に…

RabbitMQ tutorial - Topics Pattern in Java

RabbitMQのチュートリアル。 Publish/Subscribeパターンより派生した、メッセージの送信先を制御するRoutingパターンより、routingKeyに正規表現を使用してより細かい送信先制御を行うTopicsパターン。 【お題】 RabbitMQ - RabbitMQ tutorial - Topics 【実…

RabbitMQ tutorial - Routing Pattern in Java

RabbitMQのチュートリアル。 Publish/Subscribeパターンより派生した、メッセージの送信先を制御するRoutingパターン。 →Exchangeにて送信先を振り分ける際、「fanout」属性では送信先を制御できない。 そこで、送信先を設定できる「direct」属性を指定し、…

RabbitMQ tutorial - Publish/Subscribe Pattern in Java

RabbitMQのチュートリアル。 複数の受信者に対して同一のメッセージを送信するPublish/Subscribeパターン。 →RabbitMQでは送信されたメッセージが受信者ごとに用意されたキューにそれぞれ格納され、配信される(Exchange)。 【お題】 RabbitMQ - RabbitMQ tut…

RabbitMQ tutorial - Work queues Pattern in Java

RabbitMQのチュートリアル。【お題】 RabbitMQ - RabbitMQ tutorial - Work Queues 【実行環境】 ・Windows7 64bit ・RabbitMQ3.5.5 ・jdk1.7.0_60 【前提】 ・RabbitMQはインストール済 ・コンパイルする手順は省く 【手順】 1.ProducerクラスとConsumer…

RabbitMQ on EC2

EC2上でRabbitMQを動かしてみる。 RabbitMQ - Messaging that just works 【動機】 ・JMSをGlassFish・JBossASなどのアプリケーションサーバー依存でない方法で試したかったため ・公式のドキュメントが豊富だったため(インストールからクラスタ構成作成ま…

OCJP Gold SE7うかった

合格ラインが65%で、正解率が68%だった。ギリギリだった。 過去に受験したBronzeが80%、Silverが90%だったので、楽勝だろうと思って慢心したらこの有様だった。 なので合格記という名の反省文を書く。 【分析】 まずスコアレポートより間違いの傾向をみると…

AWS Summit Tokyo 2014いってきた

AWS

いくつかセミナーに参加したのでまとめと感想文を書いておく。AWS Summit Tokyo 2014 ~「あなた」のクラウドがここに~ | 2014年7月17日(木)~18日(金) アマゾン ウェブ サービスの無料クラウドカンファレンスが東京2Days 開催! AWS + Windows(C#)で構…

RHELにFnordmetricインストール

公式に書かれているインストール手順(というかコマンド)「yum install fnordmetric」を実行してもインストールできなかったので、手順をまとめた。基本的には下のチュートリアルに沿ってインストール・設定する。 FnordMetric | Getting Started | Documenta…

Fluentedインストールでハマった

ハマりポイントは以下の2点。 1.収集対象のログファイルおよびログファイルがあるディレクトリの権限 2.Fluentedが生成する一時ファイルの置き場一応動くようになったので手順をまとめる。 【記事概要】 ApacheのアクセスログをFluented使って収集し、…

EhcacheとTerracottaでキャッシュレプリケーション(4)資産配置・動作確認・FAQ

EhcacheとTerracottaでキャッシュレプリケーション(3)資産作成(SV側・CL側資産) - ITお絵かき修行 で用意した資産をサーバ内に用意、また定義体を作成・編集し、動作確認を行う。 【資産配置手順】 0.AWSのセキュリテイグループ変更 (1)APサーバ1・2号…

EhcacheとTerracottaでキャッシュレプリケーション(3)資産作成(SV側・CL側資産)

APサーバのTomcat上にのせるSV側資産(サーブレット)およびCL側の資産を作る。【概要】 APサーバ1号機ではリクエスト内のパラメータ値を使ったキャッシュをつくり、APサーバ2号機ではキャッシュを取得する。1号機で設定したキャッシュ値が2号機で取得できる…

EhcacheとTerracottaでキャッシュレプリケーション(2)Terracotta・Ehcache設定

次は、 1.Terracotta・Ehcacheの資産(.tar.gz)を用意し定義体も用意する。またTerracottaはTerracottaサーバにインストールする。 を行う。 1.Terracotta(Ehcache)ダウンロードTerracottaは下記よりダウンロードした。 In-Memory Data Management for …

EhcacheとTerracottaでキャッシュレプリケーション(1)導入

ネット上の情報が断片的だったので実際にやってみた。 【記事概要】 Terracottaサーバでキャッシュレプリケーションするために、まずはTerracottaサーバをたてる。次にEhcacheを利用するアプリケーションを作りTomcat上にのせ、Ehcacheで管理するキャッシュ…

AWSにvsftpd導入(2)設定編

今回は実際に設定を行う。 【今回の記事のゴール】 「AWSのEC2インスタンス(Amazon Linux)にvsftpdをインストール・導入を行いFFFTPから接続可能とする」 【すること一覧】 0.rootユーザでログイン、「yum update」を行う。 1.vsftpdインストール ※yum…

AWSにvsftpd導入(1)概要編

AWSのインスタンス(Linux)にFTP接続してファイルアップロードする。 【今回の記事のゴール】 「AWSのEC2インスタンス(Amazon Linux)にvsftpdをインストール・導入を行いFFFTPから接続可能とする」 【概要図(一応)】 【前提】 ・AWS登録済 ・AWSにてイン…

Apache・Tomcat間のURL連携まとめ(5)

(1)~(4)ではApache-Tomcat間のURL連携に使用する定義のうち、Tomcat側の定義を「web.xml」で行っていたが、Servlet3.0からの機能 Annotation based configuration(以下アノテーション)を利用してみる。 【参考】 http://codezine.jp/article/detail…

Apache・Tomcat間のURL連携まとめ(4)

最後に、クライアントアプリを作って 「CL側に用意したクライアントアプリより構築したサーバに対してリクエスト(GET)を投げると、独自に設定されたヘッダ"X-Sample01"に値として"aaa"が設定されていること・HTTPステータスコード200が返却されることを確認…

Apache・Tomcat間のURL連携まとめ(3)

次はApache・Tomcatの設定を行う。 設定内容は以下のとおりとする。 (本来URL設計する際はアプリ側のデータ構造等考慮する必要がありますが、今回は適当に作ります。) 【ブラウザで指定するURL】 http://(サーバ名)/echo/200/ →(サーバ名)については、ロー…

Apache・Tomcat間のURL連携まとめ(2)

今回のゴールは、「CL側に用意したクライアントアプリより構築したサーバに対してリクエスト(GET)を投げると、独自に設定されたヘッダ"X-Sample01"に値として"aaa"が設定されていること・HTTPステータスコード200が返却されることを確認する」であるので、上…

Apache・Tomcat間のURL連携まとめ(1)

Apache・Tomcatを使用したAP/WEBサーバ構築時における、CL-SV間URL連携の設定をまとめる。 ※設定が長くなりそうなので、4記事に分割する。 (1)概要説明 (2)サーバ側資産作成 (3)Apache・Tomcat設定 (4)クライアントアプリを使った動作確認 とい…

勉強ネタ

やること(2016.11.05) 1.Ruby 2.英語(TOEIC L&R S&W) 3.Node.js 4.Apache Tica ============================ やること(2015.3.15) 1.Oracle Certified Expert, Java EE 6 Web Component Developer 2.データベーススペシャリスト 3.JavaEE6か7…