增删改查

package org.example.springboottestone.controller;

import jakarta.annotation.Resource;
import org.example.springboottestone.mapper.ProductMapper;
import org.example.springboottestone.pojo.Product;
import org.springframework.context.annotation.Lazy;
import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.*;

import java.util.ArrayList;
import java.util.List;

@RestController
@RequestMapping("test")
public class TestController {
    //400却参数
    //404 url
    //500 表示服务器内部错误
    //405结构出错
    @GetMapping("test1")
    public String test1() {
        return "hello !this is my first SpringBoot Application Controller" ;
    }
    @GetMapping("test2")
    public String test2() {
        return "hello? this is my first SpringBoot Application Controller";
    }

    /**根据id查询商品
     * @param id  商品
     * @return Produce对象
     */
    @Resource
    ProductMapper productMapper;


    @GetMapping("selectProductById")
    public Product selectProductById(@RequestParam int id) {
        return productMapper.selectById(id);
    }
    @GetMapping("selectAllProduct")
    public List<Product> selectAllProduct() {
        List<Product> list = new ArrayList<>();
        for (int i = 0; i < 10; i++) {
            Product product = new Product(1,"外套"+i,100,"衣服");
            list.add(product);
        }
        return list;
    }
    @DeleteMapping("/deleteProduct")
    public String deleteProduct() {
        productMapper.deleteById(1); // 假设deleteById是ProductMapper中的一个方法,用于根据ID删除产品
        return "Product deleted successfully"; // 或者您可以根据删除操作的成功与否返回不同的消息
    }
    //前端提交接口

    /**
     * 提交一条商品信息
     * @param product 商品对象
     * @ return
     */
    @PostMapping("/add")
    public ResponseEntity<String> addProduct(@RequestBody Product product) {
        try {
            productMapper.insert(product);
            return ResponseEntity.status(HttpStatus.CREATED).body("Product added successfully");
        } catch (Exception e) {
            return ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR).body("Failed to add product: " + e.getMessage());
        }
    }


    @PutMapping("/update") // 修改路径以更好地反映其用途
    public ResponseEntity<String> updateProduct(@RequestBody Product product) {
        if (product.getId() == 0) {
            return ResponseEntity.badRequest().body("ID不可为空");
        }
        if (product.getId() < 0) {
            return ResponseEntity.badRequest().body("ID不可为负数");
        }
        productMapper.updateById(product);
        return ResponseEntity.ok("Product updated successfully");
    }




    //restfull规范
    //用springBoot连mysql进行数据的增删改查
    //使用持久性框架

}

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容