Tagbangers Blog

Blog

Spring MVC で Post-Redirect-Get パターンをやってみる

Spring MVC で Post-Redirect-Get パターンを実装するときのやり方をメモ。 コードは GitHub にもあります。 https://github.com/tagbangers/spring-best-practice... パターン1:セッションを使わない package practice.post_redirect_get; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.val...

Macな開発でローカル配信メールを設定

Macにおいて開発する際に結構困るのがメール設定。 アカウント登録や通知系で結構利用しますよね。 プログラム側の実装はJavaMailなど優秀なライブラリが多数あり記事も結構みかけます。 メールを配送する側の記事もルーティングさせる記事は良く見かけますがあえて送信させない記事はそんなになかったのでまとめてみました。 環境 OSX Yosemite 10.10.3 Postfix 2.11.0 設定 transport_mapsの作成 $ sudo vi /etc/postfix/transport_maps # 下記内容を追記 /^.*@.*$/ local aliases.dbの...

​Spring MVC @RequestMappingのマッピング優先度まとめ

Controllerに使う@RequestMappingにはURIの変数や正規表現などいろいろなパターンを指定できますが、どのコントローラにマッピングされるかという優先度をいつも忘れてしまうのでまとめてみます。 ちなみにパターンとして記述できる記号についてはAntPathMatcherのAntPatternComparatorの中で説明されているようで そのdocによると、 ? → 1文字にマッチ * (ワイルドカード) → 0かそれ以上の文字数にマッチ ** (ダブルワイルドカード) → 0かそれ以上のディレクトリにマッチ という意味になってます。 URI変数({variables})とワイ...

Elastic Beanstalkに時間ベースのスケーリング機能が追加されました

Elastic Beanstalkに時間ベースのスケーリング機能が追加されました! 以前から、Elastic BeanstalkではCloud Watchのメトリクスをトリガーとしたスケーリングが可能でした。たとえば、CPU使用率が平均で60%を越えた場合にスケールアウトさせる、などといった具合にアプリケーションの稼働状況や負荷状況に照準をあててスケーリングができます。 ただし、大規模なイベントが控えている為あらかじめサーバを増強しておきたい、特定の期間は比較的負荷が低い為サーバを減らしたい、といった要望があった場合はメトリクスベースのスケーリングでは対応が難しくなります。 今回のアップデート...

Sublime Textで簡易HTTPサーバ

HTML周りのコーディングに便利なSublime Textを使って簡易サーバが立てられちゃいます。 気軽にローカル環境で表示チェックをしたい時にピッタリです。 SublimeServerをインストール 1.Command Palletを開く メニューのToolsの一番上にあります。 ショートカットはcommand + shift + pです。 2.Package Control: Package Installを選択 ※Package Controlも別途インストールする必要があります。(https://packagecontrol.io/installation#st3) 3.表示されたリス...

​@EnableGlobalMethodSecurity を Controller クラスで使うメモ

Spring Security で @EnableGlobalMethodSecurity を用いれば、メソッドレベルでアクセスコントールが可能になるが、Service クラスレイヤーではなく、Controller レイヤーで使用する場合はちょっと注意が必要。 Spring MVC の基本設定パターンでは、たいてい ServletMapping ごとにサブのアプリケーションコンテキストが生成され、ルートコンテキストのみに、@EnableGlobalMethodSecurity を適用してもそのままでは Controller クラスに @Secure などを指定しても動作しない。 これに関連する...

DroidKaigiに参加してきました!

昨日渋谷マークシティにて開催されました DroidKaigiに参加してきました! 開幕から閉幕まで参加させていただき、せっかくなので感想などをつらつらと書かせていただきます。 〜イベント申込 3月25日のAM10:00〜申込開始でした。 私はちょっと出遅れたので10:03ぐらいに connpassのページ見に行ってみたら先着枠に既に100人近くの応募! まじかよまだ登録してねぇよ!っと焦って会員登録をして登録完了のメールを待つ間が非常に緊張しました。 登録したのにメールが2,3分待っても届かない!キャー! などと思ってたら無事にメールが届いて登録完了、即決で申込。 先着枠ギリギリで参加確定出来...

iReportが起動しないときの対処方法

iReportでは納品書や請求書など帳票のデザインテンプレートをGUIで作成できるものですが 最新version(5.6.0)をダウンロードして正常にインストールできたのに、起動だけしないという事象が発生しました。 必要事項を確認するとJDK1.5 or 1.6が必要とのこと。 自分の環境ではJDK1.8のパスを環境変数に設定しているのですが、 iReport用に、jasperReports/iReport-5.6.0/etcの下の、ireport.confを編集することで、JDKのパスを上書きできます。 # default location of JDK/JRE, can be overri...

My brew install list

続編書きました My set up list to 2016 タイトルの英語は適当です。  Macにはcentosとかのyumやubuntuのapt-get的なHomebrewというツールがあります。  こちらパッと見あんまり使わないんじゃねぇの...?的なイメージを受けるかもしれませんがPCセットアップ直後の開発環境セットアップの際にそのパワーを発揮します。  今回はHomebrew自体の説明は省いて私が個人的にPCセットアップ後に流してるbrewの対象を公開いたします。  弊社の開発部隊(Mac利用者)では大体これぐらいあれば事足ります。 $ ruby -e "$(curl -fsSL h...

今更ながらEmmetのご紹介

Emmetとは HTMLとCSSの入力補完。 Zen-Codingの後見。 展開後のカーソル位置が親切。 Sassなどのプリプロセッサ系より導入コストが低い。 少し覚えるだけですぐ便利。 導入 IntelliJ IDEA 標準サポートなのですぐ利用出来ます。 キーマップなどはお好みで変更出来るのでお試しください。 Preferencesの中で"Emmet"で検索をすると項目がすぐ見つかります。 SublimeText 他のプラグイン同様、Package Control からInstall Packageを選択します。 リストからEmmetを選ぶだけ!簡単ですね。 他の定番エディタたち、Coda...