Eclipseのキー値がバックグラウンドコントローラーから受信した値を渡す場合

最近、非常に奇妙な状況に遭遇しました。それはバックグラウンドから渡された値でしたが、フロントデスクはそれを受け取ることができませんでした。
舞台裏:

	 @RequestMapping(value = "/SwitchList")
	 @ResponseBody
	 public ArrayList<NetEntity> apply_SwitchList(){
		 logger.info("获取交换机信息");
		 return NetService.getSwitchList();
	 }

フロント:

	        		$.ajax({
	        			url:'/net/SwitchList',
	        			type:'POST',
	        			success:function(data){
	         				$("#RZJHJ").empty();
	        			  $("#RZJHJ").prepend("<option value=''>请选择一个交换机</option>");//添加第一个option值
	        		    for (var i = 0; i < data.length; i++) {
	        					if(data[i].ipaddr!=null&&data[i].ipaddr!=""){
	        						$("#RZJHJ").append("<option value='"+data[i].ipaddr+"'>"+data[i].ipaddr+"</option>");
	        					}
	        		  		} 
	        			}
	        		})

このエンティティの関連部分の定義は次のとおりです。

    private String ipaddr;
           public String getIpAddr() {
           return ipaddr;
       }
       public void setIpAddr(String ipaddr) {
           this.ipaddr = ipaddr;
       }

フロントデスクはipaddrの値を受信できませんでした。
ブラウザのF12を調べてみると、問題が見つかりました。渡された値のキー値はipAddrです。そうではないはずです。定義した変数は明らかにipaddrです。値が渡されるとなぜ変更されるのですか?
キー値の内容を変更できる場所は、setIpAddr()とgetIpAddr()の2つだけです。
そこで、これら2つの関数をsetIpaddr()とgetIpaddr()に変更しました。案の定、値を渡すために使用されるキー値はipaddrになります。
したがって、関数名の設定と取得の規則は比較的厳格であることがわかります。4つのポイントに遭遇しました
。1 関数変数の定義では、グループなどのSQLステートメントで特別に定義された文字を使用できません。
2. set andgetの直後の文字は自動的に小文字になります。
3. set関数とget関数の最初の文字が小文字になった後、後で形成される文字列が値の転送に使用されるキー値であり、大文字と小文字が区別されます。
4.変数の最初の文字は自動的に小文字になるため、変数の最初の文字は小文字でなければならないことを意味します。

おすすめ

転載: blog.csdn.net/baidu_31788709/article/details/104191901