当前位置: 首页 > wzjs >正文

设计好看的网站哈尔滨百度优化

设计好看的网站,哈尔滨百度优化,上海资格证报名网站,wordpress 嵌套回复一、数据绑定概述 将HTTP请求中的表单数据自动映射到Controller方法的参数中,支持多种数据类型绑定。 二、自动绑定数据类型 2.1 基本数据类型绑定 支持类型 基本类型:int, double 等包装类:Integer, Double 等String 类型 实现步骤 创…

一、数据绑定概述

将HTTP请求中的表单数据自动映射到Controller方法的参数中,支持多种数据类型绑定。


二、自动绑定数据类型
2.1 基本数据类型绑定

支持类型

  • 基本类型:int, double
  • 包装类:Integer, Double
  • String 类型

实现步骤

  1. 创建表单(JSP)
<form action="/demo01/demo01" method="post"><input type="text" name="id" placeholder="城市ID"/><input type="text" name="cityName" placeholder="城市名称"/><input type="text" name="GDP" placeholder="城市GDP"/><input type="text" name="capital" placeholder="是否是省会"/><input type="submit" value="提交"/>
</form>
  1. 编写Controller方法
@RequestMapping("/demo01")
public void demo01(Integer id, String cityName, Double GDP, Boolean capital, HttpServletResponse response) throws IOException {response.setContentType("text/html;charset=utf-8");response.getWriter().write("ID: " + id);response.getWriter().write("City: " + cityName);
}

注意事项

  • 表单字段名需与方法参数名一致
  • 空值会绑定为null(包装类允许为空)

2.2 实体类绑定

实体类定义

@Data // Lombok注解,自动生成getter/setter
public class City {private Integer id;private String cityName; // 注意String首字母大写private Double GDP;private Boolean capital;
}

Controller实现

@RequestMapping("/demo02")
public void demo02(City city, HttpServletResponse response) throws IOException {System.out.println(city); // 自动绑定表单数据到City对象
}

表单要求
字段名需与实体类属性名完全一致。


2.3 集合与数组绑定
2.3.1 数组绑定

Controller方法

@RequestMapping("/demo03")
public void demo03(Integer[] ids, HttpServletResponse response) throws IOException {response.getWriter().write(Arrays.toString(ids));
}

表单示例

<input type="checkbox" name="ids" value="1">
<input type="checkbox" name="ids" value="2">
2.3.2 List/Set绑定(需注解)

Controller方法

@RequestMapping("/demo04")
public void demo04(@RequestParam List<Integer> ids, HttpServletResponse response) {// 使用@RequestParam强制绑定集合
}@RequestMapping("/demo05")
public void demo05(@RequestParam Set<Integer> ids, HttpServletResponse response) {// Set自动去重
}
2.3.3 Map绑定(需注解)

Controller方法

@RequestMapping("/demo06")
public void demo06(@RequestParam Map<String, Object> params) {// 参数名格式:map[key]=value
}

表单示例

<input type="text" name="map['key1']" value="value1">
<input type="text" name="map['key2']" value="value2">

三、内置数据绑定对象
3.1 常用对象
  • Model:接口,数据存储在Request作用域
  • ModelMap:类,功能类似Model
  • ModelAndView:包含数据与视图路径
3.2 使用示例
@RequestMapping("/demo09")
public String demo09(Map<String,Object> map, Model model, ModelMap modelMap) {map.put("mapMsg", "Hello Map");model.addAttribute("modelMsg", "Hello Model");modelMap.addAttribute("modelMapMsg", "Hello ModelMap");return "forward:/demo09.jsp";
}

JSP显示数据

${requestScope.mapMsg}
${requestScope.modelMsg}
${requestScope.modelMapMsg}

四、乱码处理方案
4.1 配置过滤器

web.xml中添加:

<filter><filter-name>encodingFilter</filter-name><filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class><init-param><param-name>encoding</param-name><param-value>UTF-8</param-value></init-param><init-param><param-name>forceResponseEncoding</param-name><param-value>true</param-value></init-param>
</filter>
<filter-mapping><filter-name>encodingFilter</filter-name><url-pattern>/*</url-pattern>
</filter-mapping>
4.2 注意事项
  • 确保过滤器配置在<servlet>标签之前
  • 同时处理请求和响应编码

五、关键问题总结
  1. 集合绑定
    • List/Set必须使用@RequestParam
    • Map需特殊格式参数名
  2. 类型匹配
    • 表单值需能转换为目标类型(如数字转Double)
  3. 命名规范
    • 表单字段名与参数名/属性名严格一致
  4. 乱码处理优先级
    • 推荐使用过滤器而非手动设置request.setCharacterEncoding()
http://www.dtcms.com/wzjs/603331.html

相关文章:

  • 海南省建设人力资源网站科技型中小企业认定条件
  • 网页制作购物网站wordpress md5解密
  • 罗琳做的网站读后感页面设计模板
  • 河南做网站最好的公司网站建设管理的建议
  • 做网站的素材都在哪里下载电商网站代码
  • 网站工程师是做什么的工作励志的句子 正能量
  • 通辽做网站制作环翠区网站建设
  • 企业只有建立了自己的网站长春网络网站制作开发
  • 黄岐建网站如何查看一个网站流量
  • 北京建设部网站如何刷网站排名
  • wordpress网站导入数据库网页设计实训总结3000字大学篇
  • ih5做pc 网站推广自身网站
  • 惠阳住房与规划建设局网站香奈儿电子商务网站建设策划书
  • 唐山cms模板建站网站建设郑州
  • 团队建设网站网站设计类论文怎么做
  • 优秀网站设计推荐宜州设计公司
  • 是想建个网站 用本地做服务器网站的商桥怎么做
  • 宁波seo是什么意思搜索引擎优化的核心是
  • 两个路由器做双网站网站建设费会计账务处理
  • 微信网页网站怎么做软件工程课程网站开发
  • 网站常见结构有那些专业做网站建设设计
  • 做网站给文件不侵权麦云短链接
  • 如何在国外网站做翻译兼职网页设计基础知识点考试
  • 深圳网站制作必找祥奔科技公司装修装饰
  • 企业网站包含内容TP5.1做的网站首页被挂马原因
  • 外贸网站如何做推广苏州网站logo例子
  • 怎么把网站制作成安卓微信h5案例欣赏
  • 教程网站后台密码做淘宝网站要会程序吗
  • 怎么对网站链接做拆解建设网站需要做app吗
  • dz做电影网站百度关键词seo年度费用