WEB開発

WEB開発

階層化されたデータをHTTPのGETリクエストのパラメータに含める方法。

・・・が知りたい。 POSTのリクエストボディのシリアライズの方法はかなり柔軟なんですが、GETはURLにクエリパラメータとして添えるしかないので、柔軟性が低いです。 URLエンコードして渡す。 たとえばですが、四則演算があったとして、これ...
Java

JavaでパスワードなしのPKCS #12フォーマットの証明書を読み込もうとすると例外が出る。

iPhoneのプッシュ通知の認証に使っている証明書はp12という拡張子になると思いますが、この証明書をパスワードなしで書き出した場合に、JavaのKeyStoreに読み込めないという問題があります。 証明書を読み込もうとしたらゼロ除算で例外...
Spring

Spring MVCの@RequestMappingでパスにピリオドを含めると拡張子とみなされる問題。

Spring MVCには、@RequestMappingというアノテーションがあり、これをメソッドにつけるだけで、特定のHTTPリクエストがメソッドにひもづけられます。 これはとても便利なのですが、少し変な使い方をしたら、怪しげな挙動を起こ...
Backbone.js

Backbone.jsとオブザーバーパターンでビューとオブジェクトを疎結合に実装する。

Backbone.jsでJavaScriptプログラムが疎結合に書けるのは、オブジェクト(Model)とビュー(View)が明確に分離されていて、オブジェクトの変更が随時ビューに伝搬する仕組みになっているためです。 jQueryに限界を感じ...
Handlebars.js

Handlebars.jsで長すぎる文字列を縮めるヘルパーを作る。

Handlebars.jsは、JavaScriptを用いてクライアントサイドでHTMLを生成するテンプレートエンジンです。 JavaScriptで簡単に動かせるクライアントサイドテンプレートエンジンHandlebars.js Handleb...
Objective-C

驚愕の事実。Objective-Cのintとlongの最大値は同じだった。

WEBサービスのデータ設計をするときに、ID値を32bitの範囲にするか、64bitの範囲にするかというのは、結構悩みますよね。 32bitというのは、だいたい21億くらいです。ユーザーが21億人を超えることはまずないので、ユーザーIDは3...
Java

Mac OSXでApache Mavenのアップデート

Javaのプロジェクト管理ツールとしてMavenを使っています。 チーム開発の面倒なところが、メンバー全員の環境を揃えなければならないところだったりするのですが、Mavenを使えばほとんどコマンド一発で同じ環境が作れて便利です。 Apac...
Handlebars.js

JavaScriptで簡単に動かせるクライアントサイドテンプレートエンジンHandlebars.js

Ajaxが広く浸透し、「非同期的にサーバからデータを取り出しブラウザに表示する」というのは、もう当たり前のことになりました。 しかしながら、サーバから取り出したデータを「どうやって表示するか」というのは、少し難しい問題です。 「サーバサイド...
Amazon Web Services

自己署名証明書でAmazon ELBのHTTPS接続を使用する。

WEBサービスの通信を安全にするために、HTTPSを使って通信経路を暗号化する場合があります。Amazon ELBには、SSL Terminationという機能があり、これを使うと簡単にHTTPSが使えるようになります。 Elastic L...
MySQL

ロック待ちでハマる前に知りたかったMySQL InnoDBの行ロックとテーブルロックの挙動

整合性をしっかりとらないといけない処理ではトランザクションをかけるのですが、どうもトランザクションのロック待ちでタイムアウトしてしまうことがあるようです。 java.sql.SQLException: Lock wait timeo...
タイトルとURLをコピーしました