欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

SpringMVC五種類型參數(shù)傳遞及json傳遞參數(shù)

 更新時間:2022年07月18日 10:09:14   作者:不會壓彎的小飛俠  
本文主要介紹了SpringMVC五種類型參數(shù)傳遞及json傳遞參數(shù),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

學(xué)習(xí)內(nèi)容:

1.普通參數(shù)
2.pojo參數(shù)
3.嵌套pojo
4.數(shù)組參數(shù)
5.集合參數(shù)
6.解決中文亂碼
7.json數(shù)據(jù)傳遞參數(shù)

案例分析:

1.pom.xml

<?xml version="1.0" encoding="UTF-8"?>

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
? ? ? ? ?xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
? <modelVersion>4.0.0</modelVersion>

? <groupId>org.example</groupId>
? <artifactId>SpringMVC-Demo1</artifactId>
? <version>1.0-SNAPSHOT</version>
? <packaging>war</packaging>

? <dependencies>
? ? <dependency>
? ? ? <groupId>org.springframework</groupId>
? ? ? <artifactId>spring-webmvc</artifactId>
? ? ? <version>5.2.22.RELEASE</version>
? ? </dependency>
? ? <dependency>
? ? ? <groupId>javax.servlet</groupId>
? ? ? <artifactId>javax.servlet-api</artifactId>
? ? ? <version>4.0.1</version>
? ? ? <scope>provided</scope>
? ? </dependency>
? ? ?<dependency>
? ? ? <groupId>com.fasterxml.jackson.core</groupId>
? ? ? <artifactId>jackson-databind</artifactId>
? ? ? <version>2.13.3</version>
? ? </dependency>
? </dependencies>
</project>

2.ServletContainersInitConfig

package com.study.config;
import org.springframework.web.filter.CharacterEncodingFilter;
import org.springframework.web.servlet.support.AbstractAnnotationConfigDispatcherServletInitializer;

import javax.servlet.Filter;

public class ServletContainersInitConfig extends AbstractAnnotationConfigDispatcherServletInitializer {

? ? @Override
? ? protected Class<?>[] getRootConfigClasses() {
? ? ? ? return new Class[0];
? ? }

? ? @Override
? ? protected Class<?>[] getServletConfigClasses() {
? ? ? ? return new Class[]{SpringMvcConfig.class};
? ? }

? ? @Override
? ? protected String[] getServletMappings() {
? ? ? ? return new String[]{"/"};
? ? }
? ? @Override
? ? protected Filter[] getServletFilters() {
? ? ? ? CharacterEncodingFilter filter = new CharacterEncodingFilter();
? ? ? ? filter.setEncoding("UTF-8");
? ? ? ? return new Filter[]{filter};
? ? }
}
/*
public class ServletContainersInitConfig extends AbstractDispatcherServletInitializer {
? ? //加載SpringMVC容器配置
? ? @Override
? ? protected WebApplicationContext createServletApplicationContext() {
? ? ? ? AnnotationConfigWebApplicationContext ctx = new AnnotationConfigWebApplicationContext();
? ? ? ? ctx.register(SpringMvcConfig.class);
? ? ? ? return ctx;
? ? }
? ? //設(shè)置哪些請求可以歸屬SpringMVC處理
? ? @Override
? ? protected String[] getServletMappings() {
? ? ? ? return new String[]{"/"};
? ? }
? ? //加載Spring容器配置
? ? @Override
? ? protected WebApplicationContext createRootApplicationContext() {
? ? ? ? AnnotationConfigWebApplicationContext ctx = new AnnotationConfigWebApplicationContext();
? ? ? ? ctx.register(SpringConfig.class);
? ? ? ? return ctx;
? ? }
}*/

3.SpringMvcConfig

package com.study.config;

import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration;

@Configuration
@ComponentScan("com.study.controller")
public class SpringMvcConfig {
}

4.UserController

package com.study.controller;

import com.study.domain.User;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;

import java.util.Arrays;
import java.util.List;

@Controller
public class UserController {
? ? //1.普通參數(shù)傳遞
? ? @RequestMapping("/commonParam")
? ? @ResponseBody
? ? public String commonParam(String name,int age){
? ? ? ? System.out.println("普通參數(shù)傳遞name:"+name);
? ? ? ? System.out.println("普通參數(shù)傳遞age:"+age);
? ? ? ? return "'module':'common param'";
? ? ? ? //http://localhost:8080/SpringMVC_Demo3/commonParam?name=tom&age=13 ?普通參數(shù)傳遞name:jack ?普通參數(shù)傳遞age:13
? ? }
? ? //2.pojo參數(shù)傳遞
? ? @RequestMapping("/pojo")
? ? @ResponseBody
? ? public String pojoParam(User user){
? ? ? ? System.out.println("pojo參數(shù)傳遞user:"+user);
? ? ? ? return "'module':'pojo.....'";
? ? ? ? //http://localhost:8080/SpringMVC_Demo3/pojo?name=%E5%B0%8F%E9%A3%9E%E4%BE%A0&age=13
? ? ?//pojo參數(shù)傳遞user:User{name='小飛俠', age=13}
? ? }
? ? // 3.嵌套pojo參數(shù)
? ? @RequestMapping("/pojos")
? ? @ResponseBody
? ? public String pojosParam(User user){
? ? ? ? System.out.println("pojos參數(shù)傳遞user:"+user);
? ? ? ? return "'module':'pojos.....'";
? ? ? ? //http://localhost:8080/SpringMVC_Demo3/pojos?name=%E5%B0%8F%E9%A9%AC%E5%93%A5&age=13&address.province=%E6%B2%B3%E5%8D%97&address.city=%E5%95%86%E4%B8%98
? ? ? ? //pojo參數(shù)傳遞user:User{name='小馬哥', age=13, address=Address{province='河南', city='商丘'}}
? ? }
? ? //4.數(shù)組參數(shù)傳遞
? ? @RequestMapping("/arr")
? ? @ResponseBody
? ? public String array(String [] arr){
? ? ? ? System.out.println("數(shù)組參數(shù)傳遞arr:"+ Arrays.toString(arr));
? ? ? ? return "'module':'array.....'";
? ? ? ? //http://localhost:8080/SpringMVC_Demo3/arr?arr=1&arr=2&arr=3
? ? ? ? //數(shù)組參數(shù)傳遞arr:[1, 2, 3]
? ? }
? ? //5.集合參數(shù)
? ? @RequestMapping("/coll")
? ? @ResponseBody
? ? public String collection(@RequestParam List<String> colls){
? ? ? ? System.out.println("集合參數(shù)傳遞colls:"+colls);
? ? ? ? return "'module':'collection.....'";
? ? ? ? //http://localhost:8080/SpringMVC_Demo3/coll?colls=1&colls=2&colls=3
? ? ? ? //集合參數(shù)傳遞colls:[1, 2, 3]
? ? }
? ? ?//6.pojo參數(shù):json格式
? ? @RequestMapping("/json")
? ? @ResponseBody
? ? public String json(User user) throws JsonProcessingException {
? ? ? ? ObjectMapper objectMapper = new ObjectMapper();
? ? ? ? String json = objectMapper.writeValueAsString(user);
? ? ? ? System.out.println(json);
? ? ? ? return "'module':'json.....'";
? ? ? ? //http://localhost:8080/SpringMVC_Demo3/json?name=小馬哥&age=23&address.province=河南&address.city=商丘
? ? ? ? //{"name":"小馬哥","age":23,"address":{"province":"河南","city":"商丘"}}
? ? }
}

5.Address

package com.study.domain;

public class Address {
? ? private String province;
? ? private String city;

? ? public String getProvince() {
? ? ? ? return province;
? ? }

? ? public void setProvince(String province) {
? ? ? ? this.province = province;
? ? }

? ? public String getCity() {
? ? ? ? return city;
? ? }

? ? public void setCity(String city) {
? ? ? ? this.city = city;
? ? }

? ? @Override
? ? public String toString() {
? ? ? ? return "Address{" +
? ? ? ? ? ? ? ? "province='" + province + '\'' +
? ? ? ? ? ? ? ? ", city='" + city + '\'' +
? ? ? ? ? ? ? ? '}';
? ? }
}

6.User

package com.study.domain;

public class User {
? ? private String name;
? ? private int age;

? ? private Address address;

? ? public Address getAddress() {
? ? ? ? return address;
? ? }

? ? public void setAddress(Address address) {
? ? ? ? this.address = address;
? ? }

? ? 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;
? ? }

? ? @Override
? ? public String toString() {
? ? ? ? return "User{" +
? ? ? ? ? ? ? ? "name='" + name + '\'' +
? ? ? ? ? ? ? ? ", age=" + age +
? ? ? ? ? ? ? ? ", address=" + address +
? ? ? ? ? ? ? ? '}';
? ? }
}

到此這篇關(guān)于SpringMVC五種類型參數(shù)傳遞及json傳遞參數(shù)的文章就介紹到這了,更多相關(guān)SpringMVC類型參數(shù)傳遞及json傳遞參數(shù)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Java基礎(chǔ)之Object類詳解

    Java基礎(chǔ)之Object類詳解

    這篇文章主要介紹了Java基礎(chǔ)之Object類詳解,文中有非常詳細的代碼示例,對正在學(xué)習(xí)java的小伙伴們有非常好的幫助,需要的朋友可以參考下
    2021-05-05
  • 基于IO版的用戶登錄注冊實例(Java)

    基于IO版的用戶登錄注冊實例(Java)

    下面小編就為大家?guī)硪黄贗O版的用戶登錄注冊實例(Java)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-09-09
  • springboot的類加載器(org.springframework.boot.loader)過程詳解

    springboot的類加載器(org.springframework.boot.loader)過程詳解

    這篇文章主要介紹了springboot的類加載器(org.springframework.boot.loader),本文給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-11-11
  • mybatis清除一級緩存的幾種方式

    mybatis清除一級緩存的幾種方式

    這篇文章主要介紹了mybatis清除一級緩存的幾種方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-03-03
  • Java Socket設(shè)置timeout的幾種常用方式說明

    Java Socket設(shè)置timeout的幾種常用方式說明

    這篇文章主要介紹了Java Socket設(shè)置timeout的幾種常用方式說明,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-11-11
  • SpringBoot返回json和xml的示例代碼

    SpringBoot返回json和xml的示例代碼

    本篇文章主要介紹了SpringBoot返回json和xml的示例代碼,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-04-04
  • 解決使用@ResponseBody后返回500錯誤的問題

    解決使用@ResponseBody后返回500錯誤的問題

    這篇文章主要介紹了解決使用@ResponseBody后返回500錯誤的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-09-09
  • Spring?boot?處理大文件上傳完整代碼

    Spring?boot?處理大文件上傳完整代碼

    這篇文章主要介紹了Spring?boot?處理大文件上傳,本文通過實例代碼給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-07-07
  • Guava范圍類Range方法實例深入解析

    Guava范圍類Range方法實例深入解析

    這篇文章主要為大家介紹了Guava范圍類Range方法實例深入解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-12-12
  • mybatis如何批量修改數(shù)據(jù)

    mybatis如何批量修改數(shù)據(jù)

    這篇文章主要介紹了mybatis如何批量修改數(shù)據(jù)方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-03-03

最新評論