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

网站的验证码怎么做深圳网站建设有免费的吗

网站的验证码怎么做,深圳网站建设有免费的吗,安卓开发平台,珠海做网站需要多少钱客户端传日期格式字段#xff08;string#xff09;,服务端接口使用java.util.Date类型接收报错问题 问题演示第1种#xff1a;客户端以URL拼接的方式传值第2种#xff1a;客户端以body中的form-data方式提交第3种 客户端以Body中的json方式提交 问题解决#xff08;全局解… 客户端传日期格式字段string,服务端接口使用java.util.Date类型接收报错问题 问题演示第1种客户端以URL拼接的方式传值第2种客户端以body中的form-data方式提交第3种 客户端以Body中的json方式提交 问题解决全局解决方式针对 第1和第2种情况解决办法验证 针对第3中情况解决办法验证 问题演示 演示代码 服务端接口代码 PostMapping(/binder)ResponseBodypublic String binderTest(TestEntity te) {return te.getBirthDay().toString() ;}以上接口中的实体TestEntity import java.util.Date;import org.springframework.format.annotation.DateTimeFormat;import com.fasterxml.jackson.annotation.JsonFormat;import lombok.Data;Data public class TestEntity {private String name;private String addr;private Date birthDay; }TestEntity中的字段birthDay为Date类型 客户端演示使用PostMan 第1种客户端以URL拼接的方式传值 后台报错 Field error in object testEntity on field birthDay: rejected value [2024-02-09 22:22:33]; codes [typeMismatch.testEntity.birthDay,typeMismatch.birthDay,typeMismatch.java.util.Date,typeMismatch]; arguments [org.springframework.context.support.DefaultMessageSourceResolvable: codes [testEntity.birthDay,birthDay]; arguments []; default message [birthDay]]; default message [Failed to convert property value of type java.lang.String to required type java.util.Date for property birthDay; nested exception is org.springframework.core.convert.ConversionFailedException: Failed to convert from type [java.lang.String] to type [java.util.Date] for value 2024-02-09 22:22:33; nested exception is java.lang.IllegalArgumentException]]第2种客户端以body中的form-data方式提交 后台报错 Field error in object testEntity on field birthDay: rejected value [2024-02-07]; codes [typeMismatch.testEntity.birthDay,typeMismatch.birthDay,typeMismatch.java.util.Date,typeMismatch]; arguments [org.springframework.context.support.DefaultMessageSourceResolvable: codes [testEntity.birthDay,birthDay]; arguments []; default message [birthDay]]; default message [Failed to convert property value of type java.lang.String to required type java.util.Date for property birthDay; nested exception is org.springframework.core.convert.ConversionFailedException: Failed to convert from type [java.lang.String] to type [java.util.Date] for value 2024-02-07; nested exception is java.lang.IllegalArgumentException]]第3种 客户端以Body中的json方式提交 这里需要先在接口中添加注解RequestBody,接口变成如下: PostMapping(/binder)ResponseBodypublic String binderTest(RequestBody TestEntity te) {return te.getBirthDay().toString() ;}以上日期格式是 yyyy-MM-dd 2024-06-08,可以成功! 但是将格式变成yyyy-MM-dd HH:mm:ss,就不行了见如下 后台报错 JSON parse error: Cannot deserialize value of type java.util.Date from String 2024-06-08 22:11:33: not a valid representation (error: Failed to parse Date value 2024-06-08 22:11:33: Cannot parse date 2024-06-08 22:11:33: while it seems to fit format yyyy-MM-ddTHH:mm:ss.SSSX, parsing fails (leniency? null)); nested exception is com.fasterxml.jackson.databind.exc.InvalidFormatException: Cannot deserialize value of type java.util.Date from String 2024-06-08 22:11:33: not a valid representation (error: Failed to parse Date value 2024-06-08 22:11:33: Cannot parse date 2024-06-08 22:11:33: while it seems to fit format yyyy-MM- ddTHH:mm:ss.SSSX, parsing fails (leniency? null))at [Source: (PushbackInputStream); line: 2, column: 16] (through reference chain: 问题解决全局解决方式 针对 第1和第2种情况 解决办法 新增日期转换类并将其纳入到spring的bean管理中: import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Date;import org.springframework.core.convert.converter.Converter;/*** 日期格式转换类* * 仅针对当客户端是以下两种方式日期格式值的转换* * 1.url地址拼接的方式形如localhost:8031/binder?birthDay2024-02-09 22:22:33。* * 2.body方式中的form-data方式* * 注意与DateJacksonConverter类区别。* * author Administrator*/ public class MyDateConverter implements ConverterString, Date {// TODO 2024年4月12日16:01:01// 完善—日期格式有多种这里只列举了一种根据传入的String格式日期分别初始化SimpleDateFormat还有如下格式需要处理//private static String[] pattern new String[] { yyyy-MM-dd, yyyy-MM-dd HH:mm, yyyy-MM-dd HH:mm:ss,// yyyy-MM-dd HH:mm:ss.S, yyyy.MM.dd, yyyy.MM.dd HH:mm, yyyy.MM.dd HH:mm:ss, yyyy.MM.dd HH:mm:ss.S,// yyyy/MM/dd, yyyy/MM/dd HH:mm, yyyy/MM/dd HH:mm:ss, yyyy/MM/dd HH:mm:ss.S };SimpleDateFormat sdf new SimpleDateFormat(yyyy-MM-dd HH:mm:ss);Overridepublic Date convert(String s) {Date date null;try {date sdf.parse(s);} catch (ParseException e) {throw new RuntimeException(e);}return date;} }import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.http.converter.json.Jackson2ObjectMapperFactoryBean; import org.springframework.http.converter.json.MappingJackson2HttpMessageConverter;import com.fasterxml.jackson.databind.ObjectMapper;/*** 配置数据绑定* * author Administrator**/ Configuration public class MyConfigurableWebBindingInitializer {/*** 仅针对当客户端是以下两种方式日期格式值的转换* 1.url地址拼接的方式形如localhost:8031/binder?birthDay2024-02-09 22:22:33。* 2.body方式中的form-data方式* * return*/Beanpublic MyDateConverter myDateConverter() {return new MyDateConverter();} } 验证 均成功 针对第3中情况 解决办法 同样新增日期转换类并将其纳入到spring的bean管理中: import java.io.IOException; import java.text.ParseException; import java.util.Date;import org.apache.commons.lang.StringUtils; import org.apache.commons.lang3.time.DateUtils;import com.fasterxml.jackson.core.JsonParser; import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.databind.DeserializationContext; import com.fasterxml.jackson.databind.JsonDeserializer;/*** 日期格式转化类* * 针对客户端传值方式为 body中的json方式* * 注意与MyDateConverter类区别。* * author Administrator* * https://www.jianshu.com/p/c97a20fc9a35**/ public class DateJacksonConverter extends JsonDeserializerDate {private static String[] pattern new String[] { yyyy-MM-dd, yyyy-MM-dd HH:mm, yyyy-MM-dd HH:mm:ss,yyyy-MM-dd HH:mm:ss.S, yyyy.MM.dd, yyyy.MM.dd HH:mm, yyyy.MM.dd HH:mm:ss, yyyy.MM.dd HH:mm:ss.S,yyyy/MM/dd, yyyy/MM/dd HH:mm, yyyy/MM/dd HH:mm:ss, yyyy/MM/dd HH:mm:ss.S };Overridepublic Date deserialize(JsonParser p, DeserializationContext ctxt) throws IOException, JsonProcessingException {Date targetDate null;String originDate p.getText();if (StringUtils.isNotEmpty(originDate)) {try {long longDate Long.valueOf(originDate.trim());targetDate new Date(longDate);} catch (NumberFormatException e) {try {targetDate DateUtils.parseDate(originDate, DateJacksonConverter.pattern);} catch (ParseException pe) {throw new IOException(String.format(%s can not convert to type java.util.Date,just support timestamp(type of long) and following date format(%s),originDate, StringUtils.join(pattern, ,)));}}}return targetDate;}Overridepublic Class? handledType() {return Date.class;} } import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.http.converter.json.Jackson2ObjectMapperFactoryBean; import org.springframework.http.converter.json.MappingJackson2HttpMessageConverter;import com.fasterxml.jackson.databind.ObjectMapper;/*** 配置数据绑定* * author Administrator**/ Configuration public class MyConfigurableWebBindingInitializer {/*** 仅针对当客户端是以下两种方式日期格式值的转换* 1.url地址拼接的方式形如localhost:8031/binder?birthDay2024-02-09 22:22:33。* 2.body方式中的form-data方式* * return*/Beanpublic MyDateConverter myDateConverter() {return new MyDateConverter();}// 针对客户端传值方式为 body中的json方式对日期格式进行转换开始Beanpublic DateJacksonConverter dateJacksonConverter() {return new DateJacksonConverter();}Beanpublic Jackson2ObjectMapperFactoryBean jackson2ObjectMapperFactoryBean(Autowired DateJacksonConverter dateJacksonConverter) {Jackson2ObjectMapperFactoryBean jackson2ObjectMapperFactoryBean new Jackson2ObjectMapperFactoryBean();jackson2ObjectMapperFactoryBean.setDeserializers(dateJacksonConverter);return jackson2ObjectMapperFactoryBean;}Beanpublic MappingJackson2HttpMessageConverter mappingJackson2HttpMessageConverter(Autowired ObjectMapper objectMapper) {MappingJackson2HttpMessageConverter mappingJackson2HttpMessageConverter new MappingJackson2HttpMessageConverter();mappingJackson2HttpMessageConverter.setObjectMapper(objectMapper);return mappingJackson2HttpMessageConverter;}// 针对客户端传值方式为 body中的json方式结束} 验证 需给接口加上RequestBody注解略。 成功
http://www.hkea.cn/news/14336163/

相关文章:

  • 做 英语试题的网站wordpress视频自动略图
  • pc端手机网站 viewport 自适应公司网站建设youyi51
  • 互联网公司网站建设ppt模板seo网站服务公司
  • 哪类小网站容易做网络系统分类
  • 网站开发流行语言大连高新园区邮编
  • wordpress做淘客网站北京网站开发的趋势在哪里
  • 外贸英语 网站智慧团建官网手机版登录
  • 唐汉网站建设如何有效的推广宣传
  • 将网页加入可信站点最新中高风险地区名单
  • 如何制作新型网站程序地方网站盈利
  • 腾讯云网站建设视频教程wordpress用户名或密码错误
  • dz系统怎么做地方网站义乌前十跨境电商公司
  • 网站增加权重湖南常德石门县
  • 网站链接优化怎么做广东深广东深圳网站建设服务
  • 空间ip地址访问网站福州网站推广定制
  • 河南小学网站建设礼品公司网站建设
  • 深圳建设材料价格网站仿木鱼网络网站
  • wordpress打印插件西安的网络优化公司
  • 房产门户网站平台搭建个人做哪方面的网站
  • 沈阳网站设计定制网站建设建设网站的编程过程
  • 百度做网站的公司社区类网站开发
  • nodejs做网站的弊端一般vs做的网站的总体框架
  • 手机适配网站建设棋牌网站流程
  • 免费企业网站建立服装网站建设公司哪家好
  • 电商网站建设实训步骤七台河新闻联播今天的
  • 站长忽略的几个观点wordpress 3 企业主题
  • 商丘哪里做网站建工社网校官网
  • 江苏和城乡建设部网站首页怎么在网站做系统
  • 网站怎么做关键词怎么优化惠安县规划建设局网站
  • 个人网站如何赚钱北京logo设计公司哪家好