English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Способы передачи и приема данных между springmvc и js (два способа)

В springmvc результат набора данных контроллера можно передавать в frontend в формате JSON, а также через Map, реализация приведена ниже

1. через формат JSON

controller-уровень реализуется следующим образом

 @RequestMapping("queryCityInfo") 
  @ResponseBody 
  public String queryCityInfo()throws Exception{ 
     String provinceId = getString("id"); 
     @SuppressWarnings("rawtypes") 
    List cityList = personalService.queryCity(provinceId); 
     if(null != cityList && cityList.size() >0 ){ 
      String json = JSONUtils.toJSONString(cityList);      
      super.outStr(json); 
     } 
    return null; 
  } 
protected void outStr(String str)</span> 
  { 
    try 
    { 
      response.setCharacterEncoding("UTF-8"); 
      response.getWriter().write(str); 
    } 
    catch (Exception e) 
    { 
    } 
  } 
public static <T> String toJSONString(List<T> list) 
  { 
    JSONArray jsonArray = JSONArray.fromObject(list); 
    return jsonArray.toString(); 
  } 

js端接受 следующим образом

function selectBankCity(id){ 
  $.ajax({ 
    url:baseAddress+"queryCityInfo.do?provinceId="+id, 
    type:'get', 
    dataType:'json', 
    success:function(data){ 
      $('#custBankArea').empty(); 
      $('#custBankArea').append("<option >--Выберите информацию о городе--</option>"); 
      for(var i=0;i<data.length;i++){ 
        $('#custBankArea').append("<option value='"+data[i].id+"'>"+data[i].cityName+"</option>"); 
      } 
    } 
  }); 
} 

2. Через Map передается

controller-уровень реализуется следующим образом

@RequestMapping("queryProvince") 
  @ResponseBody 
  public Map<String, Object> queryProvince(HttpServletRequest request,HttpServletResponse response){ 
    Map<String, Object> map = new HashMap<String, Object>(); 
    try { 
      @SuppressWarnings("rawtypes") 
      List provinceList = personalService.queryProvince(); 
      if(null != provinceList && provinceList.size() >0 ){ 
        map.put("province", provinceList); 
      }  
    } catch (Exception e) {}} 
      // TODO Автоматически сгенерированный блок перехвата исключений 
      e.printStackTrace(); 
    } 
    return map; 
  } 

js端接受 следующим образом

$.ajax({ 
      url:baseAddress+"queryProvince.do", 
      type:"get", 
      success:function(resData){ 
        var data = resData.province; 
        for(var i=0;i<data.length;i++){ 
          //js реализация 
          //var objs = document.getElementById("cusBankCity") 
          //objs.options.add(new Option(data[i].provinceName) ,data[i].id); 
          //jq реализация 
          $("#cusBankCity").append("<option value='"+data[i].id+"'>"+data[i].provinceName+"</option>"); 
        } 
      } 
    }); 

Вот весь контент статьи, надеюсь, он поможет вам в изучении. также希望大家多多支持呐喊教程。

Заявление: содержимое этой статьи взято из Интернета, авторские права принадлежат соответствующему автору. Контент был предоставлен пользователями Интернета, сайт не имеет права собственности, не был обработан вручную и не несет ответственности за соответствующие юридические последствия. Если вы обнаружите контент,涉嫌侵犯版权, пожалуйста, отправьте письмо по адресу: notice#oldtoolbag.com (во время отправки письма, пожалуйста, замените # на @) для отчета и предоставьте соответствующие доказательства. В случае подтверждения, сайт немедленно удалит涉嫌侵权的内容。

Давай посмотрим