深圳市建设安监站网站,个人的网站备案多少钱,东莞百域网站建设公司,本地wordpress安装基于Spring MVC实现HttpServletRequest、基本数据类型、Java Bean、数组、List、Map、JSON方式的参数传递。
1. 创建项目
选择Maven快速构建web项目#xff0c;项目名称为case13-springmvc02。 2. 配置Maven依赖
?xml version1.0 encodingUTF-8项目名称为case13-springmvc02。 2. 配置Maven依赖
?xml version1.0 encodingUTF-8?
project xmlnshttp://maven.apache.org/POM/4.0.0 xmlns:xsihttp://www.w3.org/2001/XMLSchema-instancexsi:schemaLocationhttp://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsdmodelVersion4.0.0/modelVersiongroupIdcom.wfit.springmvc/groupIdartifactIdspringmvc02/artifactIdversion1.0-SNAPSHOT/versionpackagingwar/packagingpropertiesproject.build.sourceEncodingUTF-8/project.build.sourceEncodingmaven.compiler.source1.8/maven.compiler.sourcemaven.compiler.target1.8/maven.compiler.target/propertiesdependencies!--spring mvc--dependencygroupIdorg.springframework/groupIdartifactIdspring-webmvc/artifactIdversion5.3.25/version/dependency!--servlet--dependencygroupIdjavax.servlet/groupIdartifactIdjavax.servlet-api/artifactIdversion3.1.0/versionscopeprovided/scope/dependency!--jackson--dependencygroupIdcom.fasterxml.jackson.core/groupIdartifactIdjackson-databind/artifactIdversion2.12.3/version/dependency/dependencies
/project
3. 更新Maven仓库 4. 创建java和resources目录
src.main路径下执行new – Directory操作选择java、resources后执行回车键。 5. 创建Spring MVC配置文件
?xml version1.0 encodingUTF-8?
beans xmlnshttp://www.springframework.org/schema/beansxmlns:xsihttp://www.w3.org/2001/XMLSchema-instancexmlns:contexthttp://www.springframework.org/schema/contextxmlns:mvchttp://www.springframework.org/schema/mvcxsi:schemaLocationhttp://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context https://www.springframework.org/schema/context/spring-context.xsd http://www.springframework.org/schema/mvc https://www.springframework.org/schema/mvc/spring-mvc.xsd!--开启注解--context:component-scan base-packagecom.wfit/!--启用mvc--mvc:annotation-driven/mvc:annotation-driven
/beans
6. 配置web.xml
在web.xml中配置DispatcherServlet。
!DOCTYPE web-app PUBLIC-//Sun Microsystems, Inc.//DTD Web Application 2.3//ENhttp://java.sun.com/dtd/web-app_2_3.dtd
web-app!--解决POST中文乱码问题 过滤器--filterfilter-nameencoding/filter-namefilter-classorg.springframework.web.filter.CharacterEncodingFilter/filter-classinit-paramparam-nameencoding/param-nameparam-valueutf-8/param-value/init-param/filterfilter-mappingfilter-nameencoding/filter-nameurl-pattern/*/url-pattern/filter-mapping!--配置前端控制器DispatcherServlet--servletservlet-namedispatcherServlet/servlet-nameservlet-classorg.springframework.web.servlet.DispatcherServlet/servlet-class!--加载SpringMVC文件--init-paramparam-namecontextConfigLocation/param-nameparam-valueclasspath:spring-mvc.xml/param-value/init-param!--启动容器时加载servlet--load-on-startup1/load-on-startup/servletservlet-mappingservlet-namedispatcherServlet/servlet-name!--表示拦截所有请求--url-pattern//url-pattern/servlet-mapping
/web-app
7. 创建Student实体类
src.main.java.com.wfit.entity目录下创建Student.java。
public class Student {public String id;public String name;public int age;public String getId() {return id;}public void setId(String id) {this.id id;}public String getName() {return name;}public void setName(String name) {this.name name;}public int getAge() {return age;}public void setAge(int age) {this.age age;}Overridepublic String toString() {return Student{ id id \ , name name \ , age age };}
}
8. 创建ParamController类
在src.main.java.com.wfit.param目录下创建ParamController.java。
HttpServletRequest参数传递
Controller
RequestMapping(/param)
public class ParamController {/*** 通过HttpServletRequest接收参数*/RequestMapping(/servlet)public void servlet(HttpServletRequest request, HttpServletResponse response) throws IOException {String name request.getParameter(name);System.out.println(name name);PrintWriter writer response.getWriter();writer.print(hello name);writer.flush();writer.close();}
} 基本数据类型参数传递
基本数据类型以及他们的包装类。
/*** 使用基本数据类型和String类型*/
RequestMapping(value /simple,produces text/plain;charsetUTF-8)
ResponseBody
public String simple(String id,String name,int age){String str id , name , age;System.out.println(str);return str;
} Java Bean参数传递
Controller
RequestMapping(/param)
public class ParamController {/*** JavaBean传递参数*/RequestMapping(value /bean,method RequestMethod.POST,produces text/plain;charsetUTF-8)ResponseBodypublic String bean(Student student){System.out.println(student);return student.toString();}
} 数组参数传递
Controller
RequestMapping(/param)
public class ParamController {/*** 数组参数*/
RequestMapping(value /array,method RequestMethod.POST)
ResponseBody
public String array(String[] hobbies){for(String hobby : hobbies){System.out.println(hobby);}return success;
}
} List参数传递
Controller
RequestMapping(/param)
public class ParamController {/*** List参数*/
RequestMapping(value /list,method RequestMethod.POST)
ResponseBody
public String list(RequestParam ListString hobbyList){hobbyList.forEach(hobby - System.out.println(hobby));return success;
}
} Map参数传递
Controller
RequestMapping(/param)
public class ParamController {/*** Map参数*/
RequestMapping(value /map,method RequestMethod.POST)
ResponseBody
public String map(RequestParam MapString,Object map){System.out.println(map);return success;
}
} 9. 创建JsonController类
在src.main.java.com.wfit目录下创建JsonController类实现JSON参数转成Java Bean、Map、List等引用类型。
Json Bean参数传递
Controller
RequestMapping(/json)
public class JsonController {/*** json bean*/RequestMapping(value /bean,method RequestMethod.POST)ResponseBodypublic Object bean(RequestBody Student student){System.out.println(student);MapString,Object map new HashMapString,Object();map.put(code,200);map.put(msg,success);map.put(data,student.toString());return map;}
} Json Map参数传递
Controller
RequestMapping(/json)
public class JsonController {/*** json map*/RequestMapping(value /map,method RequestMethod.POST)ResponseBodypublic Object map(RequestBody MapString,Object jsonMap){System.out.println(jsonMap);MapString,Object map new HashMapString,Object();map.put(code,200);map.put(msg,success);map.put(data,jsonMap);return map;}
} Json List参数传递
Controller
RequestMapping(/json)
public class JsonController {/*** json list*/RequestMapping(/list)ResponseBodypublic Object list(RequestBody ListStudent studentList){System.out.println(studentList);MapString,Object map new HashMapString,Object();map.put(code,200);map.put(msg,success);map.put(data,studentList);return map;}
}