首页 > 编程语言 >java 异常捕获

java 异常捕获

时间:2023-11-04 20:00:54浏览次数:33  
标签:shop java form 捕获 ProductForm new 异常 page productId

  • HTTP响应主体的方式不同:

  a. @RestController:

     1. 返回的对象数据作为JSON/XML直接写入HTTP响应.

     2. 是@Controller + @ResponseBody组合注解.

  1. 获取请求参数方式:
  • 在方法写形参获取 => 适合少量的
  • 定义一个对象存储提交的字段 => 适合量多的

3. 在方法写形参:

3.1 Get:

index(@RequestParam(value = "productId", required = false) String productId)
表示productId是非必传项

@RequestParam(value = "page", defaultValue = "0") Integer page
表示page参数默认值为0

4. 字义对象存储提交的字段:

(1). 验证对象:

# com/shop/form/ProductForm.java
package com.shop.form;
import lombok.Data;

@Data
public class ProductForm {
    private String productId;
    private String productName;
    ......
}

(2). 控制器:

# com/shop/controller/SellerProductController.java:
@PostMapping("/save")
public void save(@Valid ProductForm form, BindingResult bindingResult) {
    if (bindingResult.hasErrors()) {
        throw new SellException(ResultEnum.PARAMS_ERROR.getCode(),
                bindingResult.getFieldError().getDefaultMessage());
    }
}

 

// 判断字符值是否为空

if (!StringUtils.isEmpty(productId)) {

   // 查询存在的商品名称

}


数据拷贝

import org.springframework.beans.BeanUtils;

ProductInfo productInfo = new ProductInfo();

BeanUtils.copyProperties(form, productInfo);

List<OrderDetail> orderDetailList = new ArrayList<OrderDetail>(){

   {

       add(new OrderDetail(101, "鸭肉"));

       add(new OrderDetail(102, "肌肉"));

   }

};

标签:shop,java,form,捕获,ProductForm,new,异常,page,productId
From: https://blog.51cto.com/u_16251183/8185047

相关文章

  • JavaSE(09) - 面向对象进阶
    JavaSE(09)-面向对象进阶p121static关键字static表示静态,是java中的一个修饰符,可以修饰成员方法,成员变量.一,被static修饰的成员变量,叫做静态变量.特点:被改类所有对象共享不属于对象属于类随着类的加载而加载,优先于对象存在调用方式:类名调用(推荐)对......
  • JavaSE(10) - 面向对象进阶
    JavaSE(10)-面向对象进阶P129认识多态(polymorphism)多态就是对象的多种形态多态的前提是:1,有继承/实现关系2,有父类引用指向子类对象3,有方法重写多态的好处:使用父类型作为参数,可以接收所有子类对象,体现多态的扩展性与便利P130多态调用成员的特点调用......
  • 学JAVA用PYTHON重写day02.5
    packageday02;publicclassDemo05{/*三个数字排序*/publicstaticvoidmain(String[]args){System.out.println("三个数字排序,从大到小:");inta=2;intb=5;intc=1;intt;if(a<b){......
  • Java拾贝第十六天——集合之Queue、Stack
    Queue(队列)Queue是一种先进先出(FIFO:FirstInFirstOut)的有序集合:Queue是Collection的子接口,其定义如下publicinterfaceQueue<E>extendsCollection<E>LinkedList实现了Queue的子接口,根据多态性可以使用Queue创建LinkedList实例。Queue接口常用方法如下:方法类型......
  • JavaScript知识点
    成员对象1、window.eventwindow.documentwindow.history2、window.screenwindow.navigatorwindow.externalWindow对象的属性如下1、window//窗户自身2、window.self//引用本窗户window=window.self3、window.name//为窗户命名4、window.defaultStatus//设定窗户状态栏信息5、w......
  • JavaScript知识点
    同源限制1、同源策略指的是∶协议,域名,端口相同,同源策略是一种安全协议2、举例说明:比如一个黑客程序,他利用lframe把真正的银行登录页面嵌到他的页面上,当你使用真实的用户名,密码登录时,他的页面就可以通过Javascript读取到你的表单中input中的内容,这样用户名,密码就轻松到手了。offse......
  • 学JAVA用PYTHON重写day02.4
    packageday02;publicclassDemo04{/*判断是否是闰年普通年,能被4整除且不能被100整除的为闰年。(y%4==0)&&(y%100!=0)世纪年,能被400整除的是润年。y%400==0。四年一闰,百年不闰,四百又闰*/publicstaticvoidmain(......
  • JavaScript知识点
    null,undefined的区别1、undefined表示不存在这个值。2、undefined:是一个表示"无"的原始值或者说表示"缺少值",就是此处应该有一个值,但是还没有定义。当尝试读取时会返回undefined3、例如变量被声明了,但没有赋值时,就等于undefined4、null表示—个对象被定义了,值为“空值”5、null......
  • 学JAVA用PYTHON重写day02.2
    packageday02;importjava.util.Scanner;publicclassDemo02{/*条件分支*/publicstaticvoidmain(String[]args){/*if单分支*/System.out.println("if单分支>>>>>>>>>>>>......
  • java开发,json转list集合,原生实现
    java是一门面象对象的语言,对象需要先定义,但是在外理网络请求时候会用到json转成java对象,虽然现代开发框架中也提供了很多工具和方法直接转换,但是作为学习者了解一下底层实现,更能灵活变通现在有一个json格式如下{"list":[{"name":"Tom","sex":"b......