// // System.ArgumentNullException: // path 参数为 null。...// // System.ArgumentNullException: // path 参数为 null。...// // System.ArgumentNullException: // path 为 null 或字节数组为空。...// // System.ArgumentNullException: // path 为 null 或内容字符串为空。...// // System.ArgumentNullException: // path 为 null 或内容字符串为空。
关键词System.ArgumentNullException: String reference not set to an instance of a String....System.ArgumentNullException: String reference not set to an instance of a String....\AliMobilePush.Webapi\Startup.cs:line 75 at Microsoft.Extensions.Options.ConfigureNamedOptions`1.Configure...的类型是IHostingEnvironment )来读取配置文件 appsettings.Production.json 和 appsettings.json文件,ContentRootPath 属性得到的值为当前启动命令的目录...,而不是dll所在的目录,所以应在发布项目dll所在的目录执行 dotnet xx.dll,否则会导致配置文件里面的参数读取不到。
官网地址:http://hibernate.org/validator/ 常见注解 注解 用途 Valid 递归的对关联的对象进行校验 AssertFalse 用于boolean字段,该字段的值只能为false...AssertTrue 用于boolean字段,该字段只能为true DecimalMax(value) 被注释的元素必须是一个数字,只能大于或等于该值 DecimalMin(value) 被注释的元素必须是一个数字...") private String username; @NotNull(message = "手机号码不能为空") private String mobile; @...") private String username; @NotNull(message = "手机号码不能为空") private String mobile; @...= 1, message = "性别选择错误") private Integer sex; @Valid @NotNull(message = "objectVOList不能为空
如果集合中不包含类型 的对象,则返回类型的默认值:如果是引用类型,默认值为 null;如果是值类型,默认值为 0。...如果定义的一个委托类型指定了类型参数,编译器会定义委托类的方法,用指定的类型参数替换方法的参数类型和值类型。 ...类型参数可以作为方法的参数,作为方法的返回值,或者作为方法内部定义的一个局部变量来使用。CLR允许一个方法指定它独有的类型参数,这些类型参数可用于参数、返回值、或者局部变量。 ...(表示为:T:class,且必须为类型参数指定的第一个约束。) (2).值类型约束: 值类型约束:用于确保使用的类型参数是指类型。...(表示为:T:struct,可空类型不包含在内) (3).构造函数类型约束: 构造函授类型约束:指定所有类型参数的最后一个约束,它检查类型实参是否有一个可用于创建实例的无参构造函数。
Validation扩展的注解 参考 ---- 分组校验 @Getter @Setter @ToString public class Person { @NotNull(message = "名字不能为空...该注解用于验证级联的属性、方法参数或方法返回类型。 当验证属性、方法参数或方法返回类型时,将验证对象及其属性上定义的约束,另外:此行为是递归应用的。...,第一个参数是需要被校验的值,第二个参数是上下文环境 isValid = validator.isValid( validatedValue, constraintValidatorContext...javax.validation.constraints.NotEmpty.message = 不能为空 javax.validation.constraints.NotNull.message...= 不能为空 org.hibernate.validator.constraints.ParametersScriptAssert.message = 执行脚本表达式"
("用户名不能为空!")...创建对象: public class Company { @NotBlank(message = "商品名称不能为空") private String name; @Size...); return company; } } 输出结果为:税号长度必须在2到10位之前 以上例子中的注解比较简单,通过添加 @NotBlank(message = "商品名称不能为空...判断值是否为false或者true DecimalMax、DecimalMin 必须为数字,并且值小于最大值、大于最小值 Digits 必须是数字 Email 必须是邮箱 Max、Min、NotBlank...log.getLengthCannotBeNegativeException(); } } } 定义完成之后,对Company的定义修改如下: @NotBlank(message = "公司名称不能为空
@NotBlank(message = "性别不能为空") private static String sex; @NotBlank(message = "姓名不能为空...= "年龄不能为空") @Max(value = 30,message = "年龄超过最大值30") @Range(min=30,max=60) private Integer...") private String content; } 2.进入Controller对应方法,在需要校验的对象前添加@Valid注解即可(校验对静态变量不生效),在使用 @Valid 注解的参数后可以紧跟着一个...@Valid @NotEmpty(message = "商品列表不能为空") private List goodsList...(@NotNull(message = "用户参数不能为空") User user){ return user.getName(); } //校验方法返回值
@NotBlank(message = "性别不能为空") private static String sex; @NotBlank(message = "姓名不能为空...= "年龄不能为空") @Max(value = 30,message = "年龄超过最大值30") @Range(min=30,max=60) private Integer...") private String content; } 2.进入Controller对应方法,在需要校验的对象前添加@Valid注解即可(校验对静态变量不生效),在使用 @Valid 注解的参数后可以紧跟着一个...message = "商品名称不能为空") private String goodsName; @NotNull(message = "商品价格不能为空") private Double...(@NotNull(message = "用户参数不能为空") User user){ return user.getName(); } //校验方法返回值
一、参数校验 在开发中经常需要写一些字段校验的代码,比如字段非空,字段长度限制,邮箱格式验证等等,写这些与业务逻辑关系不大的代码个人感觉有两个麻烦: 验证代码繁琐,重复劳动 方法内代码显得冗长 每次要看哪些参数验证是否完整...javax.validation.constraints.Pattern; @Getter @Setter @NoArgsConstructor public class DemoModel { @NotBlank(message="用户名不能为空...") private String userName; @NotBlank(message="年龄不能为空") @Pattern(regexp="^[0-9]{1,2}$",message...inclusive = true) private BigDecimal greatOrEqualThan; @Length(min = 1, max = 20, message = "message不能为空...") //不能将Length错用成Range //@Range(min = 1, max = 20, message = "message不能为空") private String message; 七
javax.validation.constraints.Pattern; 2. demo @Getter @Setter @NoArgsConstructor public class DemoModel { @NotBlank(message="用户名不能为空...") private String userName; @NotBlank(message="年龄不能为空") @Pattern(regexp="^[0-9]{1,2}$",message...请求参数校验 验证请求参数时,在 @RequestBody DemoModel demo 之间加注解 @Valid,然后在后面加 BindindResult 即可;多个参数,可以添加多个 @Valid...GET参数校验(@RequestParam参数校验) 3. model校验 4. 对象级联校验 对象内部包含另一个对象作为属性,属性上加 @Valid,可以验证作为属性的对象内部的验证 5....注解 解释 01 @Null 检查该字段为空 02 @NotNull 不能为 null 03 @NotBlank 不能为空,检查时会将空格忽略 04 @NotEmpty 不能为空,这里的空是指空字符串
参数为 null。... 参数为 null。... 参数为 null。... 参数为 null。... 参数为 null。
一、无返回类型的内置委托—Action 1.1 初识Action MSDN给出的定义:封装一个方法,该方法不具有参数并且不返回值。 可以使用此委托以参数形式传递方法,而不用显式声明自定义的委托。...当然,如果是有返回值的匿名方法则会转换为指定类型的new Func()对象,这里因为ForEach只接受无参数的委托实例或方法,所以如果传入了有返回值的匿名方法则会报错。...二、有返回类型的内置委托—Func 2.1 初识Func MSDN给出的定义:封装一个具有一个参数并返回 TResult 参数指定的类型值的方法。 ...也就是说,封装的方法必须具有一个通过值传递给它的参数,并且必须返回值。 ...); ③如果没有参数,必须使用一组空的圆括号; 5.1.2 Lambda使用示例 static void LambdaDemo() {
") private String simpleCode; /** * 条码 */ @NotBlank(message = "商品条码不能为空")...private String tiaoCode; /** * 药品名称 */ @NotBlank(message = "药品名称不能为空") private...String medicineName; /** * 剂型 */ @NotBlank(message = "剂型不能为空") private String...") private String wrapUnit; /** * 最小单位 */ @NotBlank(message = "最小单位不能为空")...因为,举个例子,添加的时候不需要校验id,而修改的时候id不能为空,有了分组以后,就可以添加的时候校验用组A,修改的时候校验用组B。 两个分组的接口,一个是添加的组,一个是修改的组: ? ?
因为基本类型都有默认值,不可能为null的 所有的注解都能标注在:字段、方法、构造器、入参、以及注解上 JSR的注解都申明都非常的简单,没有Hibernate提供的复杂,比如没有用到@ReportAsSingleViolation...javax.validation.constraints.NegativeOrZero.message = 必须是负数或零 javax.validation.constraints.NotBlank.message = 不能为空...javax.validation.constraints.NotEmpty.message = 不能为空 javax.validation.constraints.NotNull.message...org.hibernate.validator.constraints.NotBlank.message = 不能为空 org.hibernate.validator.constraints.NotEmpty.message...= 不能为空 org.hibernate.validator.constraints.ParametersScriptAssert.message = 执行脚本表达式"
这两个注解在idea里面可以帮助我们检测方法的返回值,方法参数以及局部变量是否为空,从而帮助我们减少一些NPE的发生。 1....配置其他注解 如果我们不想使用idea的注解,可以配置其他jar包的替代注解,此时需要点击右下角的Configure annotations。 添加相应的替代注解即可。...方法返回值 @Nullable:对方法的调用没有判空会被提示。 @Notnull:方法如果可能返回null会被提示。 方法参数: @Nullable:对参数直接使用没有判空会被提示。...@Notnull:调用时传入的参数可能为null会被提示。
*/ @Data//lombok注解 public class Student { private Integer id; @NotBlank(message = "name不能为空...") private String name; //@NotBlank(message = "name不能为空")//会报错 @NotNull(message = "age不能为空...") private Integer age; @NotBlank(message = "email不能为空") @Email(message = "邮箱不合法") private...validator() { ValidatorFactory validatorFactory = Validation.byProvider(HibernateValidator.class).configure...value) || "女".equals(value)) { return true; } else { //禁用默认的message的值,
// 异常:System.ArgumentNullException:httpContext 参数为 null。...// 异常: System.ArgumentNullException: //filterContext 参数为 null。...// 异常:System.ArgumentNullException: // httpContext 参数为 null。...Html.Encode,Html.AttributeEncode,Url.Encode 3)对Js进行编码 使用Ajax.JavaScriptStringEncode 4)将AntiXSS库作为默认的编码器(不建议使用...,每次执行控制器操作前,都会验证隐藏栏位和浏览器cookie中的值是否相同,只有相同才允许执行控制器操作。
①@NotEmpty 表示不能为null,也不能为空字符串,当类型为集合时集合不能为空,但是字符串可以是" "(注意引号之间有一个空格)。...@NotEmpty(message = "季节不能为空") String scene; ②@NotNull 表示不可以为null,但可以是空字符串; @NotNull(message = "季节不能为空...") String scene; ③@NotBlank 用于字符串,表示不能为null,也不能为空字符串,空格字符串也不行。...@Size(min = 2, message = "表示路线的坐标点应该不少于2个") ArrayList path; ⑥@Min和@Max 表示最小值和最大值,用于字符串或数值上,如果是字符串则转换为...ValidatorFactory validatorFactory = Validation.byProvider(HibernateValidator.class) .configure
领取专属 10元无门槛券
手把手带您无忧上云