泛型不是Result,Girl才是泛型。因为在封装Result的时候,data属性是一个实体类,但是不确定是哪一个,现在可能是Girl,以后可能有其他的类型,所以在这里使用泛型替代准确的类型
是不是没加依赖
<dependency> <groupId>org.hibernate</groupId> <artifactId>hibernate-validator</artifactId></dependency>
这不存在现成安全的问题!红框内的result对象实在方法内创建的,无法被多个线程共享,所以不存在现成完全问题;上面static修饰的是方法而不是 成员变量,如果是成员变量 可能又有线程安全的风险,但是取决于你的程序怎么写;
在girl.java类里面,money这个属性上的注解里里
工具类中的方法用了public static修饰,不用创建实例就可通过类名调用
版本不同,点进去看源码,和视频里的源码都不一样了,返回值都不一样,但是我这使用 findById() 也不能返回对应的实体类
同求 疑惑
泛型提供的是编译期间的检查,防止出错,可以写也可以不写。
在类上加上这个@SuppressWarnings("unchecked")就ok了
同学指的是SQL表里面的日期吗?通过与实体类的绑定对日期字段进行修改,可以使用数据库管理工具Navicat手动输入相应的sql语句进行修改,如 update 表名 set 时间字段=2019 where 时间字段=2018。
或者不用廖师兄讲解的JPA,用mybatis半orm框架,不借助工具,进行动态sql的修改也可以达到目的。
同学建议把代码贴出来,方便解答
@NotNull:不能为null,但可以为empty
@NotEmpty:不能为null,而且长度必须大于0
@NotBlank:只能作用在String上,不能为null,而且调用trim()后,长度必须大于0
在girl类中写 @NotBlank(message = "这个字段必传") private String cupSize; @Min(value = 18,message = "禁止未成年少女入内") private Integer age; @NotBlank(message = "金额必传") private Double money; (别忘了money的get,set方法)
get 请求怎么会有表单验证呢?只有 Post 请求才会提交数据,有验证的需求吧。
基本都是原来已经有定义的注解
你看一下,80行,是不是你在result里面构造方法set的类型多了,虽然不影响,程序运行以及结果,但是有的人看着就不喜欢。
另外,我把警告出现的原因给你总结一下,希望采纳!~嘿嘿
在泛型前面加入 @SuppressWarnings("unchecked") 可以消除泛型警告主要是在强制转换时出现警告例如:@SuppressWarnings("unchecked")ArrayList<Object> stus = (ArrayList<Object>)request.getAttribute("stus");泛型参数表关键字 用途deprecation 使用了不赞成使用的类或方法时的警告unchecked 执行了未检查的转换时的警告,例如当使用集合时没有用泛型 (Generics) 来指定集合保存的类型。fallthrough 当 Switch 程序块直接通往下一种情况而没有 Break 时的警告。path 在类路径、源文件路径等中有不存在的路径时的警告。serial 当在可序列化的类上缺少 serialVersionUID 定义时的警告。finally 任何 finally 子句不能正常完成时的警告。all 关于以上所有情况的警告。--------------------- 作者:xzlAwin 来源:CSDN 原文:https://blog.csdn.net/xzlAwin/article/details/45959043 版权声明:本文为博主原创文章,转载请附上博文链接!
泛型不需要引入啊,public class Result<T>{
}就可以使用了啊。
可以的,亲测有效。 我猜想廖师兄当时是思想神游了。_ 。
这是不是少了个视频,突然冒出金额的属性
因为有些接口是不需要返回具体信息的,比如增删改之类的接口,有可能就只需要返回一个状态,成功或者失败
postman是模拟HTTP客户端的,HTTP1.0构造的请求是基于文本的!只有空字符串的概念而没有null的概念
COMMAND+N
你金额定义的是double型的,传入的确是string类型,传值的类型错误啊,还有你看一下你那个传的值是不是打了空格什么的
自定义对象里面的code 就是状态码啊,响应不同对应的返回的code的值是不一样的啊
Optional<Girl> optional = girlRepository.findById(id); Integer age = optional.orElseGet(Girl::new).getAge();
改成这样就行了,spring-boot 2.0后加了对java8 optional类型的支持。。。还是要看官方文档啊
估计是result后面没跟<T>
你好,我也有你同样需求,请问你解决了吗?可分分享下
money 类型是 Double 而不是 double 修改之后,把get/set方法重新生成一下就行了!