SpringMVC-06-接收参数和数据回显

本文介绍了在SpringMVC中如何接收前端参数,包括直接通过形参名匹配和使用@RequestParam注解进行映射。同时讲解了当参数为对象时,URL参数名需与对象属性名一致。此外,还探讨了数据回显的概念,提到了ModelAndView、ModelMap和Model三种方式,并展示了它们的使用示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

SpringMVC-06-接收参数和数据回显

接收前端的参数

原生通过req.getParameters(“name”)来获得

在Spring框架下

如果方法名中的形参名和前端名字一样直接接收

@Controller
public class ControllerUser {
    @GetMapping("/user")
    public String FromFrontEnd(String name){
        System.out.println(name);
        return "redirect:/index.jsp";
    }
}

url

http://localhost:8080/user                       null
http://localhost:8080/user?name=void			 void

若名字不匹配

http://localhost:8080/user   null

通过@RequestParam做参数映射,建议除了对象,尽量加上,降低错误的发生率

(回忆mybatis的@Param())

@Controller
public class ControllerUser {
    @GetMapping("/user")
    public String FromFrontEnd(@RequestParam("username") String name){
        System.out.println(name);
        return "redirect:/index.jsp";
    }
}

url

http://localhost:8080/user?username=void			 void

传的是一个对象

则url中的参数名需和对象的属性名一致,否则无法获得,则为空

@Controller
public class ControllerUser {
    @GetMapping("/user")
    public String FromFrontEnd(User user){
        System.out.println(user);
        return "redirect:/index.jsp";
    }
}

url

http://localhost:8080/user?id=1&username=xiaoming&age=10 			User(id=1, name=null, age=10)

数据回显

ModelAndView

该对象需要封装数据和跳转信息,重写Controller接口方法时,指定的返回的类型,使用频率不算高

//模型视图对象
ModelAndView mv = new ModelAndView();
mv.addObject("msg","hello");
mv.setViewName("test");
return mv;

ModelMap

继承了LinkedHashMap,所以LinkedHashMap所拥有的特性,ModelMap也有

和Model的用法差不多

Model

用的最多,和ModelMap有联系,它的实现类继承了ModelMap,是精简版

@Controller
public class ControllerUser {
    @GetMapping("/user")
    public String FromFrontEnd(Model model){
        model.addAttribute("msg","hello");
        return "test";
    }
}
### 小红书水印API接口概述 小红书作为一款流行的社交电商平台,其内容通常带有平台的水印。为了满足开发者和用户的实际需求,市场上存在一些第三方的小红书水印API接口服务[^1]。这些API能够帮助用户解析并下载不带水印的内容,无论是图片还是视频。 #### API功能特点 通过此类API,可以实现以下功能: - **视频解析**:输入小红书视频链接后,API会返回无水印视频文件地址。 - **图集解析**:对于多张图片组成的图集,API同样能提供无水印版本的下载链接。 - **统计功能**:部分高级版API还支持解析次数的统计,便于运营者了解使用情况[^2]。 #### 请求参数与响应结果 调用这类API时,需注意以下几个方面: - **基础参数**:包括`url`字段用于传递目标资源链接;可选参数如`bigFile`控制大文件处理逻辑。 - **状态码解释**:不同的HTTP状态码代表不同含义,例如200表示成功解析,而其他特定错误码则提示具体问题所在[^4]。 以下是基于PHP语言的一个简单示例代码片段展示如何对接这样的API: ```php <?php function getNoWatermark($link){ $apiUrl = "http://example.com/api"; // 替换为真实有效的API URL $postData = array( 'url' => $link, 'key' => 'your_api_key_here', // 如果需要密钥认证,请替换为你自己的KEY ); $ch = curl_init(); curl_setopt($ch, CURLOPT_URL,$apiUrl); curl_setopt($ch, CURLOPT_POST, true); curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($postData)); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); $response = curl_exec ($ch); curl_close ($ch); return json_decode($response,true); } // 调用函数测试 $result = getNoWatermark('https://www.xiaohongshu.com/some_video_link'); if(isset($result['code']) && intval($result['code']) === 200){ echo '<a href="'.$result['data']['video_url'].'" download>点击这里下载水印视频</a>'; }else{ echo 'Error:'.$result['msg']; } ?> ``` 此脚本展示了基本流程,即向指定URL发送POST请求并将接收到的数据解码成关联数组形式以便进一步操作。 ### 注意事项 尽管上述方法可行,但在实际应用过程中需要注意版权法律风险以及服务商的服务条款限制等问题。确保仅对自己拥有合法使用权的作品进行去水印处理是非常重要的原则之一。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值