Seasar2 を使って、リクエストを受けたらJSONを返すWebAPIを作る。
ポイントは2つ。
そして2つとも下のサンプルの13行目にあります。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
public class IndexAction { @Resource protected JdbcManager jdbcManager; @Execute(validator=false) public String index() { List<UserAuth> list = jdbcManager.selectBySql( UserAuth.class, "select * from user_auth" ).getResultList(); // JSONICでリストオブジェクトをJSONに変換して返す. ResponseUtil.write(JSON.encode(list)); return null; } } |
ResponseUtil
意外に知られていないようです。
レスポンスはJSPで書くのだ!と思われがちですが、
この ResponseUtil を使ってレスポンスを String で指定することも出来るのです。
これ、Seasar2 の部品なので、知らなかった人は明日から使い倒せますね!
JSONIC
JSONIC というライブラリがあります。
この中に、static な JSON というクラスの encode() があります。
もちろん decode() もあります。
JSON のような構造化テキストをサラッと作れてしまうコレは非常に重宝します。
リンク: JSONIC入手元