-2

ポストをJSON使用してデータを送信し、サーバー側のスプリング コントローラーで同じものを解釈する必要があるアプリケーションを作成しようとしています。jQuery非常に多くのトレイルとエラーが発生した後でも、サーバー側でデータを解釈する際に非常に多くの問題に直面しています。私も非常に多くの投稿を行ってきstackoverflowましたが、正しい答えを見つけることができませんでした.

データを春の形式で投稿することJSONは好ましいですか? 教えてください。

サーバー側でデータを処理する方法を説明するリンクを投稿しても役に立ちます。

4

4 に答える 4

1

JSON は、クライアントとサーバーの間でデータをやり取りするのに適した形式です。デシリアライゼーションを調べて、整形式のJSON をサーバー上のオブジェクトに取得します。

于 2012-10-21T10:01:25.977 に答える
0

あなたの答えから、あなたが直面している問題の種類がわかりません。主な問題がjquery/その他のソースからjsonデータを投稿して解釈することであると仮定すると、解決策は次のとおりです。

  1. Serializable インターフェイスを実装するモデル オブジェクトを作成します。例えば

    public class Account は Serializable を実装します{

     private static final long serialVersionUID = 1913207428686438208L;
     String bankAccountNo ;
     String userName ;
    
    public String getBankAccountNo() {
        return bankAccountNo;
    }
    
    public void setBankAccountNo(String bankAccountNo) {
        this.bankAccountNo = bankAccountNo;
    }
    
    public String getUserName() {
        return userName;
    }
    
    public void setUserName(String userName) {
        this.userName = userName;
    }
    
    public void Account(){
    
    }
    

    }

2.リクエストマッピングパスでコントローラーに注釈を付けます。

@Controller("jsonController")
@RequestMapping("test/")
public class JSONController {
    @RequestMapping(method = RequestMethod.GET, value = "get/account/{name}", headers = "Accept=application/json")
    public
    @ResponseBody
    Account getAccount(@PathVariable String name) {
        // let's suppose findAccount() finds the account
        Account account = findAccount(name);
        return account;
    }

@RequestMapping(method = RequestMethod.POST, value = "post/account", headers = "Content-type=application/json")
    public
    @ResponseBody
    String getAccount(@PathVariable String name) {
        // let's suppose saveAccount() persists the account
        saveAccount(account);
        return "success";
    }

}
  1. ライブラリに jackson-mapper-asl.jar と jackson-core-asl.jar を追加します。
  2. <context:annotation-config/>applicationContext.xml ファイルに追加します。

それが役に立てば幸い。

于 2012-10-21T17:40:08.140 に答える
0

それは、クライアントからサーバーに渡すデータによって異なります。しかし、はい、JSON は一般的なデータには十分な形式であり、私自身はそれを好みます。

于 2012-10-21T10:11:39.970 に答える
0

ここで、不足しているコンポーネントを最後に追加しています....以下のコードに問題がある場合は修正してください: コンテキスト xml ファイル:

    <mvc:resources location="/custom1/" mapping="/js/**" />
    <mvc:annotation-driven />
    <context:component-scan base-package="com.vk" />
    <context:annotation-config />    
    <bean id="JspViewResolver"
        class="org.springframework.web.servlet.view.InternalResourceViewResolver">
    <property name="viewClass"
        value="org.springframework.web.servlet.view.JstlView" />
    <property name="prefix" value="/WEB-INF/jsp/" />
    <property name="suffix" value=".jsp" />     
</bean>

以下のJavaScriptコード:

   $.ajax({url: "/JSONExample/post/account",
        type: "POST",
        data: {userName: "Sam" },
        dataType: "json",
        contentType: "application/json; charset=utf-8",
        success: function(result) {
        alert(result);
               }
        });
于 2012-10-22T09:08:20.063 に答える