こないだSTOMP over WebSocketを試してみましたが、今度はSTOMPを使わずに、TextWebSocketHandlerを使ったWebSocketを試してみます。題材も同じくチャットです。 sandbox-spring-boot/spring-boot-websocket at master · onozaty/sandbox-spring-boot · GitH…
Spring BootでSTOMP Over WebSocketを使って、試しにチャットっぽいものを作ってみました。 sandbox-spring-boot/spring-boot-websocket-stomp at master · onozaty/sandbox-spring-boot · GitHub 同じルームに接続しているクライアントに、同じメッセージを…
POPSPRING 2017 幕張公演に、嫁さんと2人で参加してきました。フェスは初参加です。 GOLDチケットだったので、とても余裕もって見れました。最初は前の方にいたのですが、逆に人が密集していてみずらかったので、途中からちょっと後ろ目で見ていました。それ…
前回の記事の続きで。 @Builder(toBuilder = true)とすると、オブジェクトからBuilderを生成できます。 どういうときに使えるかというと、オブジェクトの複製を作成して、一部のプロパティのみ変えたいといった場合です。 package com.example.lombok; impor…
多数のプロパティを持つクラスを生成するときに、Builderが有用だと思っているのですが、普通に書くとそれなりにコード書く必要があります。そこでLombokの@Builderです。 package com.example.lombok; import lombok.Builder; import lombok.ToString; publ…
毎回調べているような気がするのでメモ。 Lombok+Jackson(Spring MVCやJerseyなどで使ってたり)を使っている場合に、@JsonIgnoreで一部のフィールドを対象外にしたい場合に、privateなフィールドに設定してもうまく動きません。 Lombokで生成したsetterまた…
Redmineのtextile記法で、コードハイライトは<pre><code class="java"></code></pre>のような書き方をするのですが、これを入力するのが面倒になってきたので、Greasemonkeyを使ってテキストエリアで入力補完を行ってみました。 なお、Redmine 3.3 からは、ツールバーにコードハイライト用のボタン…
Scheduledアノテーションを使うと、スケジュールされたタイミングでメソッドを実行することができます。 これで周期実行的なものは、簡単に実装できます。 Getting Started · Scheduling Tasks 34. Task Execution and Scheduling 実装方法 実行したいメソッ…
View customizeで『「リポジトリ」タブをクリック時にデフォルトで表示されるブランチをmasterではなく、ある特定のブランチに設定したい』といった問い合わせをいただいたので対応してみました。 onozaty/redmine-view-customize - GitHub 画面をJavaScript…
MyBatisには、org.apache.ibatis.type.ArrayTypeHandlerがあって、java.sql.Arrayとのマッピングを行ってくれますが、パラメータ設定時と、結果取得時でマッピングが異なるので注意が必要です。 実際のコードを見たほうがわかりやすいので、現時点のコードを…
Spring Bootのspring-boot-starter-webのデフォルトだとTomcatがサーブレットコンテナとして組み込まれますが、設定を変えればJettyに切り替えられます。 70. Embedded servlet containers configurations { compile.exclude module: "spring-boot-starter-t…
ISBNから書籍の情報を取りたかったので、Amazon Product Advertising APIを使ってみました。 必要な情報 Amazon Product Advertising API を使うためには、下記の情報が必要になります。 アソシエイトタグ アクセスキー シークレットキー アソシエイトのアカ…
Spring Boot(現在の最新の1.4系)はJava7もサポートしているため、spring-boot-starter-testで依存するAssertJは、Java8対応の3系ではなく、2系となっています。 upgrade assertj to 3.3.0 · Issue #5272 · spring-projects/spring-boot · GitHub 3系に変えた…
Spring Boot DevTools を使うことによって、コードを修正して確認といったサイクルを短くすることができます。 http://docs.spring.io/spring-boot/docs/current/reference/html/using-boot-devtools.html 使い方 build.gradleやpom.xmlで依存関係を追加する…
すでに2017年を迎えてしまいましたが、、、2017年を迎えるにあたって、まずは2016年を振り返りたいと思います。 ダメだったこと Blogで毎週1エントリを目標にしていたけど、7月で途絶えてしまった 週に1度はGitHubにコミットすることを目標にしていたけど、3…
MyBatisのMapperでSQL書くにあたって、複数行に渡るSQL書くのにヒアドキュメントが使いたくて、まずはKotlinを試しました。 ただ、ElicpseでKotlinを書こうとすると、importの自動補完が効かず、ちょっと面倒だったので、Groovyを試しました。(本当は、Kotli…
Spring BootでのDBアクセス方法として、下記の3パターンを試してみました。 JDBC(spring-boot-starter-jdbc) JPA(spring-boot-starter-data-jpa) MyBatis(mybatis-spring-boot-starter) なお、それぞれの全体のコードは、下記に配置してあります。 https://g…
Spring Bootが楽しいので、社内勉強会で「Spring Bootを触ってみた」というタイトルでLTしてきました。 Spring Bootを触ってみた from onozaty www.slideshare.net 内容が薄くなってしまったので、もっと使い込んだら、もう少し長い時間でやりたいなぁと思っ…
Spring Boot を勉強し始めて、いろいろ楽しいので、いったんここにまとめてみます。 ここで書いている内容は、下記のリポジトリで試している内容になります。(今後もいろいろ試すので、リポジトリの内容はどんどん変わっていくかもしれません…) onozaty/spri…
下記の構成で Spring boot + Swagger のサンプルを作ってみたところ、 Eclipse 4.6.0 Spring Tool Suite(STS) 3.8.2 SpringFox 2.6.1 下記のような警告が出ました。 Class 'springfox.documentation.swagger.web.ClassOrApiAnnotationResourceGrouping' is m…
GoogleグループのRedmine Users (japanese)で、チケットの説明欄を非表示にするにはといった質問があったので、View customize pluginで対応してみました。 onozaty/redmine-view-customize - GitHub 画面をJavaScript/CSSで簡単にカスタマイズできるRedmine…
@onozaty 色々とご相談ですみません。特定のカスタムフィールドを、説明欄の下に移動させるにはどうすればいいですか。JQueryのmanipulationを使えば出来そうな気がするのですが、上手くいってません。よろしくお願いします。— 松谷 秀久 (@mattani) Novembe…
onozaty/ansible-tomcat: Install Tomcat Tomcat8をCentOS7にインストールするためのRoleを書きました。 最初はAnsible Galaxyにあがっているものを試してみようと思いましたが、やっていることが理解できない部分も多かったので、勉強もかねて自分で書いて…
Tomcat8をインストールして、managerを見ようとしたところ、403 Access Denied となったので、画面に表示されていた通りtomcat-user.xmlにmanager-guiというロールでユーザを追加します。Tomcat6の時は、managerだったのが、Tomcat7以降で変わったようですね…
How can I set default value when I change the status_id to refused in the issue list context menu? · Issue #4 · onozaty/redmine-view-customize-scripts · GitHub Issueとして、コンテキストメニューからステータスを却下(6)に変えたときに、対象バ…
Redmine Users (japanese) - Google グループで、チェックボックスを横並びにしたいといった要望が出ていたので、View customize でやってみます。 onozaty/redmine-view-customize - GitHub 画面をJavaScript/CSSで簡単にカスタマイズできるRedmineプラグイ…
チケット一覧のコンテキストメニューに項目を追加して、その項目をクリックしたらサーバ側に選択しているチケットの番号を送って、サーバ側で処理させることができないかという質問をいただいたので、View customize pluginで試行錯誤してみました。 onozaty…
jQueryオブジェクトの各関数ですが、jQuery.fnに定義されています。 なので、jQueryオブジェクトの各関数をフックしたい場合には、jQuery.fnに定義されているものを差し替えます。 たとえば、showメソッドをフックして、他の処理を入れたい場合には下記のよ…
Java8でコードを書くことが増えたので、Java7と8の新機能で知っておいた方がよさそうなことを、いまさらながら書き出してみます。 重要度は、自分自身が使う頻度が多かったもので判断しているので、あまりあてにならないかもしれません…たとえば、Date and T…
JavaのparallelStreamについて思いつくままに。 Java8から入ったStream APIで、parallelStreamを使うと簡単に並列処理が書けますが、streamとparallelStreamを使い分けるという感覚じゃなくて、並列処理を書きたい場合にparallelStreamを使うといった形で使…