2017-03-01から1ヶ月間の記事一覧

データ抽出のテストにはモブプログラミングを使うといいかも #MobProgramming

モブプログラミングとは? この記事では複数人で行われるプログラミングの意です。 ペアプロの延長線上だと考えて下さい。 正確な定義とは異なるかもしれません。 参考までに以前書いた記事です。 su-kun1899.hatenablog.com データ抽出のテストって? 何ら…

最良の日だったかもしれない #ちら裏 #ポエム

転職して、一年ちょっとが経ったにもかかわらず、モヤモヤしながらもがき苦しんでるわけですが、今日は入社してから一番いい日だったかもしれない。 何があった とあるモジュールがSVNで構成管理をしているんだけれど、GitHubに移行することになった。 自分…

ネストしたオブジェクトでAutoMappingを使う #mybatis

MybatisのネストしたresultMapの自動マッピングはデフォルトPARTIALになっている。 つまり、ネストしたオブジェクトのauto-mappingは効かないということ。 これだといちいちマッピングを定義してやらなきゃいけないのでとてもつらいのだが、設定を変えなくて…

意見 #ちら裏 #ポエム

自分を信じよう 自分の知識・経験をフル稼働させて出した答えを信じ、大切にしたほうがよい。 他人の方が優秀かもしれないが、自分ではない。 もっとも信頼できるのは自分自身であるべきだ。 自分を疑おう 自分の出した答えを疑ったほうがよい。 世の中には…

IntelliJ IDEAで括り放題 #intellijidea

職場の同僚に教えてもらったのだが、Surround selection on typing quote or brace を有効にするといいかもしれない。 括弧やクォートで括り放題になる。 括っている文字の置き換えもIDEAさんがいい感じにやってくれる。 どういうことかというと。。 これを…

モブプログラミングやってみたら最高だった #MobProgramming

今日チームでモブプログラミングを初めてやってみたのだけれど、最高だったのでテンションのままにブログを書く。 きっかけ ふりかえりでたまたまJoy.Incの話になり、あの会社は全部ペアでやってるらしく、ペアプロしたくなるという話をした。 そうしたら、…

application.ymlの値をJavaアプリケーション側で受け取る #SpringBoot

org.springframework.beans.factory.annotation.Value を使うとよい。 ただし、まとまった単位で管理したいときは @ConfigurationProperties を使うのがよさげ。 例 @Configuration public class AppConfig { @Value("${spring.datasource.schema}") private…

SpringBootでMybatisの設定を動的に書き換えられないか挑戦してみた(失敗した)

MyBatisのConfigをJava側で動的に書き換えられないか調べてみた。 結果できなかったんだけど、備忘録として。 stackoverflow.com org.apache.ibatis.session.Configuration に値を突っ込むことでどうにかなりそう? configuration.getVariables().put("globa…

JavaScriptのargumentsオブジェクトは配列じゃないのか。。 #javascript #js

JavaScriptでargumentsオブジェクトは配列っぽいけど配列ではないらしい。 なので配列のメソッド呼ぼうとしてもエラーになる。 ES2015以前 Array.prototype.slice.call で配列に変換してあげるのがよいっぽい。 var args = Array.prototype.slice.call(argum…

Mavenでコマンドライン引数を渡す

run.argumentsプロパティで渡してあげるとよい。 Sample: ./mvnw spring-boot:run -Drun.arguments="arg1, arg2" 参考 stackoverflow.com

Javaの文字列結合はどうしたものか #java

以前はStringBuilderかStringBufferがお約束だったけども、String#joinがJava8から追加されてどうしたらいいものか。 StringJoinerなんてのもある。 というかString#joinは内部的にはStringJoinerを使っているらしい。 色々記事を漁ってみたものの、パフォー…

SpringBootでH2の管理コンソールを使う #springboot

spring:h2:console:enabled をtrueにするだけ。 spring: datasource: driver-class-name: org.h2.Driver url: jdbc:h2:mem:testdb;MODE=MYSQL username: sa password: h2: console: enabled: true SpringBoot起動後、下記にアクセスすると利用できる。 http:…

SpockでJavaの無名クラスを使ったらCircleCIがコケた #circleci #java #spock

CircleCIがテストの途中にタイムアウトでこけた。 command mvn test took more than 10 minutes since last output ログを見ても途中で止まっており、結果としてもタイムアウトなので検討つかない。 もちろんローカル環境では発生しない。 Revertなりなんな…

ジョイ・インクを読んだ #JoyInc #ポエム

「ジョイ・インク 役職も部署もない全員主役のマネジメント」を読んだ。 ある意味ぶっ飛んだ会社の話。 突拍子もないいくつもの仕組みが、「なぜ、そうするのか」次々に裏付けされていく。 どういう文化にしたいのか、どう向かっていくのか。 そして終盤、筆…

JavaのStreamで独自ソート #java

sortedにComparator Streamで独自ソートするにはsortedにComparatorを渡してやればOK。 List<Person> personsSortedByName = getPersons().stream() .sorted(new Comparator<Person>() { @Override public int compare(Person person1, Person person2) { return person1.get</person></person>…

SpockでオーバーロードされたメソッドをMockする #spock #groovy

JavaでオーバーロードされたメソッドをMockしようとしても、うまくMockできないことがある。 どちらのメソッドを呼べばいいかわからないからだと思う。(たぶん) 下記のようなメソッドをMockしたい場合の対応。 public String doSomething(String arg1) pub…