• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

微信小程序填坑之路之springmvc与小程序的数据交互(json)

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

springmvc框架写到现在终于牵扯到小程序了(所以别说我“不务正业”),对于一个应用程序来说,它的本质其实就是无数个对数据进行增删改查的操作,这里起到至关重要的就是数据,于是这篇帖子的目的就是实现小程序与后台数据的交互。

小程序使用的是wx.request的api来提交和接收数据,最常见的就是接收后台传过来的json数据,并对其进行解析

先看运行结果:

这里总结springmvc框架的三种转json方法

后台 前台 返回前台的json格式
对象/bean/实体类 json {“id”: 0,”username”: “”,”age”: 0}
List<实体类> json [{“id”:1,”username”:”2”,”age”:1},{“id”:2,”username”:”3”,”age”:2}]
Map<String,实体类> json {“success”:true,”detail”:[ ] }

按步骤,从头开始来:

后台

web.xml


  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0">
  3. <servlet>
  4. <servlet-name>springmvc</servlet-name>
  5. <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
  6. <init-param>
  7. <param-name>contextConfigLocation</param-name>
  8. <param-value>classpath:config/ybajax.xml</param-value>
  9. </init-param>
  10. </servlet>
  11. <servlet-mapping>
  12. <servlet-name>springmvc</servlet-name>
  13. <url-pattern>*.mn</url-pattern>
  14. </servlet-mapping>
  15. <filter>
  16. <filter-name>CharacterEncodingFilter</filter-name>
  17. <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
  18. <init-param>
  19. <param-name>encoding</param-name>
  20. <param-value>UTF-8</param-value>
  21. </init-param>
  22. </filter>
  23. <filter-mapping>
  24. <filter-name>CharacterEncodingFilter</filter-name>
  25. <url-pattern>/*</url-pattern>
  26. </filter-mapping>
  27. </web-app>

导入springmvc所需要的jar包:http://pan.baidu.com/s/1jIK6sb8
导入json所需要的jar包:http://pan.baidu.com/s/1i5bnggP

配置文件 ybajax.xml


  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <beans
  3. xmlns="http://www.springframework.org/schema/beans"
  4. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  5. xmlns:mvc="http://www.springframework.org/schema/mvc"
  6. xmlns:context="http://www.springframework.org/schema/context"
  7. xsi:schemaLocation="http://www.springframework.org/schema/beans
  8. http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
  9. http://www.springframework.org/schema/mvc
  10. http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd
  11. http://www.springframework.org/schema/context
  12. http://www.springframework.org/schema/context/spring-context-3.0.xsd">
  13. <context:component-scan base-package="action"/>
  14. <!-- 注册适配器 -->
  15. <bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter">
  16. <property name="messageConverters">
  17. <list>
  18. <bean class="org.springframework.http.converter.json.MappingJacksonHttpMessageConverter"></bean>
  19. </list>
  20. </property>
  21. </bean>
  22. <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
  23. <property name="prefix" value="/jsp/"/>
  24. <property name="suffix" value=".jsp"/>
  25. </bean>
  26. </beans>

注意json需要对应的适配器类

实体类:User.java (实现bean用到)和 Bean.java(实现List、Map用到)


  1. package bean;
  2. public class User {
  3. private int id;
  4. private String username;
  5. private int age;
  6. public User() {}
  7. public User(int id, String username, int age) {
  8. this.id = id;
  9. this.username = username;
  10. this.age = age;
  11. }
  12. public int getId() {
  13. return id;
  14. }
  15. public void setId(int id) {
  16. this.id = id;
  17. }
  18. public String getUsername() {
  19. return username;
  20. }
  21. public void setUsername(String username) {
  22. this.username = username;
  23. }
  24. public int getAge() {
  25. return age;
  26. }
  27. public void setAge(int age) {
  28. this.age = age;
  29. }
  30. }
  31. package bean;
  32. import java.util.ArrayList;
  33. import java.util.List;
  34. public class Bean {
  35. private List<User> listuser= new ArrayList<User>();
  36. private Bean(){}
  37. public List<User> getListuser() {
  38. return listuser;
  39. }
  40. public void setListuser(List<User> listuser) {
  41. this.listuser = listuser;
  42. }
  43. }

AjaxAction.java


  1. package action;
  2. import java.util.ArrayList;
  3. import java.util.HashMap;
  4. import java.util.List;
  5. import java.util.Map;
  6. import org.springframework.stereotype.Controller;
  7. import org.springframework.ui.Model;
  8. import org.springframework.web.bind.annotation.RequestBody;

  9. 鲜花

    握手

    雷人

    路过

    鸡蛋
    该文章已有0人参与评论

    请发表评论

    全部评论

    专题导读
    热门推荐
    阅读排行榜

    扫描微信二维码

    查看手机版网站

    随时了解更新最新资讯

    139-2527-9053

    在线客服(服务时间 9:00~18:00)

    在线QQ客服
    地址:深圳市南山区西丽大学城创智工业园
    电邮:jeky_zhao#qq.com
    移动电话:139-2527-9053

    Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap