spring mvc 未编辑完

@RequestMapping注解
属性:
value:用于指定请求的 URL。它和 path 属性的作用是一样的。
method:用于指定请求的方式。
params:用于指定限制请求参数的条件。它支持简单的表达式。要求请求参数的 key 和 value 必须和配置的一模一样。
headers:用于指定限制请求消息头的条件。
注意:以上四个属性只要出现 2 个或以上时,他们的关系是与的关系。

@RequestParam注解
作用:把请求中的指定名称的参数传递给控制器中的形参赋值
属性
value:请求参数中的名称
required:请求参数中是否必须提供此参数,默认值是true,必须提供

@RequestBody
作用:用于获取请求体内容。直接使用得到是 key=value&key=value…结构的数据。
注意:get 请求方式不适用。
属性
required:是否必须有请求体。默认值是:true。当取值为 true 时,get 请求方式会报错。如果取值
为 false,get 请求得到是 null。

@PathVaribale
作用
用于绑定 url 中的占位符。例如:请求 url 中 /delete/{id},这个{id}就是 url 占位符。
springmvc 支持 rest 风格 URL 的一个重要标志。
属性
value:用于指定 url 中占位符名称。
required:是否必须提供占位符。

@ModelAttribute
作用
可以用于修饰方法和参数。
出现在方法上,表示当前方法会在控制器的方法执行之前,先执行。它可以修饰没有返回值的方法,也可以修饰有具体返回值的方法。
出现在参数上,获取指定的数据给参数赋值。
属性
value:用于获取数据的 key。key 可以是 POJO 的属性名称,也可以是 map 结构的 key。
应用场景
当表单提交数据不是完整的实体类数据时,保证没有提交数据的字段使用数据库对象原来的数据。
例如:
我们在编辑一个用户时,用户有一个创建信息字段,该字段的值是不允许被修改的。在提交表单数
据是肯定没有此字段的内容,一旦更新会把该字段内容置为 null,此时就可以使用此注解解决问题。

@SessionAttribute
作用
用于多次执行控制器方法间的参数共享。
属性
value:用于指定存入的属性名称
type:用于指定存入的数据类型。

请求参数的绑定说明

绑定机制

  1. 表单提交的数据都是k=v格式的 username=haha&password=123
  2. SpringMVC的参数绑定过程是把表单提交的请求参数,作为控制器中方法的参数进行绑定的
  3. 要求:提交表单的name和参数的名称是相同的

支持的数据类型
1.基本数据类型和字符串类型
2.实体类型(JavaBean)
3.集合数据类型(List、map集合等)
注意:
基本数据类型和字符串类型
提交表单的name和参数的名称是相同的
区分大小写

实体类型(JavaBean)
提交表单的name和JavaBean中的属性名称需要一致
如果一个JavaBean类中包含其他的引用类型,那么表单的name属性需要编写成:对象.属性 。

给集合属性数据封装
JSP页面编写方式:list[0].属性

请求参数中文乱码的解决
在web.xml中配置Spring提供的过滤器类

<!-- 配置过滤器,解决中文乱码的问题 --> 
<filter> 
<filter-name>characterEncodingFilter</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> 
 </filter> 
 <filter-mapping> 
 <filter-name>characterEncodingFilter</filter-name> 
 <url-pattern>/*</url-pattern> 
 </filter-mapping>

自定义数据类型转换

  1. 实现Converter的接口 重写方法(转换的内容)
  2. spring配置文件中进行配置
<!-- 注册自定义类型转换器 -->
 <bean id="conversionService" class="org.springframework.context.support.ConversionServiceFactoryBean"> <property name="converters">
  <set>
    <bean class="cn.itcast.utils.StringToDateConverter"/> 
  </set> 
  </property> 
 </bean> 
 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值