springmvc获取参数

@RequestParam

@RequestParam 用来请求request中的参数,至关于request.getParameter() 其中有三个属性:
一、value用来指定要取得参数的key
二、required 所取的参数是否必须存在,若是true表示必须存在,若不存在则抛出异常
三、default 指定该value的默认值java

类实现代码:spring

@RequestMapping("/requestParam")
    public String requestParam(
            @RequestParam(value = "id", required = false) Integer id) {

        System.out.println("the id is:" + id);

        return SUCCESS;

    }

测试请求代码api

<a href="paramSelect/requestParam?id=10">RequestParam 测试</a>

@RequestHeader

用来获取request头中的信息,其中参数的使用方法同@RequestParammarkdown

类实现代码cookie

@RequestMapping("/requestHeader")
    public String requestHeader(
            @RequestHeader(value = "User-Agent", required = true, defaultValue = "") String ua) {
        System.out.println("the User-Agent is:" + ua);
        return SUCCESS;

    }

测试请求代码mvc

<a href="paramSelect/requestHeader">RequestHeader 测试</a>

@RequestMapping

用来获取cookie中的参数,属性使用同@RequestParmaapp

类实现代码:ide

@RequestMapping("/cookieValue")
    public String cookieValue(@CookieValue(value = "JSESSIONID") String jid) {
        System.out.println("JSESSIONID is:" + jid);
        return SUCCESS;
    }

测试请求代码:post

<a href="paramSelect/cookieValue">CookieValue 测试</a>

获取javabean类型的参数(自动把参数封装成javabean)

一、能够把一个javabean看成请求参数传入,要求表单中的属性名称与javabean中的成员变量能一一对应,则springmvc会自动匹配测试

二、传入参数能够级联,如User中有一个birthday变量为Birthday类型,也可自动匹配

类实现代码

@RequestMapping("/postBean")
    public String postBean(User user) {
        System.err.println(user);
        return SUCCESS;
    }

User类:

public class User {
    private String username;
    private String password;

    private Birthday birthday;

    public User() {

    }

    public User(String username, String password, Birthday birthday) {
        super();
        this.username = username;
        this.password = password;
        this.birthday = birthday;
    }

    @Override
    public String toString() {
        return "User [username=" + username + ", password=" + password
                + ", birthday=" + birthday + "]";
    }

    public String getUsername() {
        return username;
    }

    public void setUsername(String username) {
        this.username = username;
    }

    public String getpassword() {
        return password;
    }

    public void setpassword(String password) {
        this.password = password;
    }

    public Birthday getBirthday() {
        return birthday;
    }

    public void setBirthday(Birthday birthday) {
        this.birthday = birthday;
    }

}

Birthday类

public class Birthday {
    private int month;
    private int year;

    public Birthday() {

    }

    public Birthday(int month, int year) {
        super();
        this.month = month;
        this.year = year;
    }

    @Override
    public String toString() {
        return "Birthday [month=" + month + ", year=" + year + "]";
    }

    public int getMonth() {
        return month;
    }

    public void setMonth(int month) {
        this.month = month;
    }

    public int getYear() {
        return year;
    }

    public void setYear(int year) {
        this.year = year;
    }

}

请求测试代码:

<form action="paramSelect/postBean" method="post">
    用户名:<input type="text" name="username">
    <br>
    密码:<input type="password" name="password">
    <br>
    出生月:<input type="text" name="birthday.month">
    <br>
    出生年:<input type="text" name="birthday.year">
    <br>
    <input type="submit" value="submit">
</form>

获取Servlet API 中类型参数

在请求参数中能够放入servlet中的api,springmvc会自动适配并传入对应参数

可获取的类型包括以下:

• HttpServletRequest
        • HttpServletResponse
        • HttpSession
        • java.security.Principal
        • Locale
        • InputStream
        • OutputStream
        • Reader
        • Writer

类实现代码

@RequestMapping("/servletTest")
    public void servletTest(HttpServletRequest request,
            HttpServletResponse response) throws IOException {

        PrintWriter out = response.getWriter();
        System.out.println("Test success");
        out.println("Test success");

    }

测试请求方法:

<a href="paramSelect/servletTest">Servlet API 测试</a>
相关文章
相关标签/搜索