3

Person.javaという名前のPOJOがありますが、Person.javaからperson.jsという名前のバックボーンモデルを作成できるbashまたはユーティリティがあるので、すべてのフィールドを再入力する必要はありませんか?

ありがとうございました。

4

2 に答える 2

5

Jackson JSON Processor http://jackson.codehaus.org/を使用して POJO モデル コードを JSON に変換している場合は、バックボーン モデルのプロパティを再作成する必要はありません。簡単な例:

public String getPerson(){
    Person personPOJOInstance = new Person();
    ObjectMapper mapper = new ObjectMapper();
    StringWriter sw = new StringWriter();

    try{
        mapper.writeValue(sw, personPOJOInstance);
        pojoJSON = sw.getBuffer().toString();
    }
    catch(IOException exc){

    }
    return pojoJSON;
}

Spring MVC コントローラーを使用していて、コントローラー メソッドを次のように @RequestMapping アノテーションでマークしている場合は、これを行うことを心配する必要さえありません。

@RequestMapping(method= RequestMethod.GET, produces = "application/json", value="/path/to/controller/method")
public @ResponseBody getPerson(){
    return new Person();
}

最後に、バックボーン モデルは次のように単純です。

var Person = Backbone.Model.extend({
    url: '/path/to/controller/method'
});

バックボーン モデルに既定の属性を指定する必要はありませんが、指定することをお勧めします。

モデルをフェッチすると、次のようにバックボーン モデルの元の POJO から取得したプロパティにアクセスできます。

//instantiate and fetch your model.
var person = new Person();
person.fetch();
...
//access properties on your model.
var name = person.get('name');
于 2012-07-03T02:31:44.963 に答える