基于 Spring Boot 和 MySQL 的水果管理系统

本文将带您构建一个基于 Spring Boot 和 MySQL 的简单水果管理系统,涵盖水果信息(名称、价格、数量)的增删改查功能。

1. 创建数据库

首先,在 MySQL 中创建一个名为 'fruit' 的数据库,然后创建一个名为 'fruits' 的表,包含以下字段:

  • id:水果 ID,自增主键
  • name:水果名称,字符串类型
  • price:水果价格,浮点数类型
  • quantity:水果数量,整数类型

2. 创建 Spring Boot 项目

创建一个新的 Spring Boot 项目,添加以下依赖项到 pom.xml 文件中:

<dependencies>
    <!-- Spring Boot Web -->
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
    </dependency>
    
    <!-- MySQL Connector -->
    <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
    </dependency>
</dependencies>

3. 配置数据库连接

在 application.properties 文件中添加以下配置信息:

spring.datasource.url=jdbc:mysql://localhost:3306/fruit
spring.datasource.username=root
spring.datasource.password=root
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
spring.jpa.hibernate.ddl-auto=update

4. 创建实体类

创建一个名为 Fruit 的实体类,包含以下属性:

@Entity
@Table(name = 'fruits')
public class Fruit {
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Long id;
    
    private String name;
    
    private double price;
    
    private int quantity;
    
    // 省略构造方法、getter 和 setter 方法
}

5. 创建数据访问层

创建一个名为 FruitRepository 的接口,继承自 JpaRepository,并添加自定义的查询方法:

@Repository
public interface FruitRepository extends JpaRepository<Fruit, Long> {
    List<Fruit> findByName(String name);
    List<Fruit> findByPriceLessThan(double price);
    List<Fruit> findByQuantityGreaterThan(int quantity);
}

6. 创建控制器

创建一个名为 FruitController 的控制器类,处理水果表的增删改查操作:

@RestController
@RequestMapping('/fruits')
public class FruitController {
    @Autowired
    private FruitRepository fruitRepository;
    
    // 获取所有水果
    @GetMapping('')
    public List<Fruit> getAllFruits() {
        return fruitRepository.findAll();
    }
    
    // 根据 ID 获取水果
    @GetMapping('/{id}')
    public Fruit getFruitById(@PathVariable Long id) {
        return fruitRepository.findById(id).orElse(null);
    }
    
    // 创建水果
    @PostMapping('')
    public Fruit createFruit(@RequestBody Fruit fruit) {
        return fruitRepository.save(fruit);
    }
    
    // 更新水果
    @PutMapping('/{id}')
    public Fruit updateFruit(@PathVariable Long id, @RequestBody Fruit fruitDetails) {
        Fruit fruit = fruitRepository.findById(id).orElse(null);
        if (fruit != null) {
            fruit.setName(fruitDetails.getName());
            fruit.setPrice(fruitDetails.getPrice());
            fruit.setQuantity(fruitDetails.getQuantity());
            return fruitRepository.save(fruit);
        } else {
            return null;
        }
    }
    
    // 删除水果
    @DeleteMapping('/{id}')
    public void deleteFruit(@PathVariable Long id) {
        fruitRepository.deleteById(id);
    }
}

7. 运行项目

在命令行中进入项目目录,运行以下命令启动应用程序:

mvn spring-boot:run

现在,你可以使用 Postman 或其他 HTTP 客户端工具来测试水果表的增删改查操作了。

总结

本文带您从零开始构建了一个基于 Spring Boot 和 MySQL 的简单水果管理系统,实现了对水果信息的增删改查功能。您可以根据自己的需求进行扩展,添加更多功能,例如:

  • 用户认证和授权
  • 数据分页和排序
  • 文件上传和下载
  • 更多查询条件和筛选功能
  • 前端界面开发
  • 等等

希望本文能帮助您更好地理解 Spring Boot 和 MySQL 的应用,并启发您构建自己的项目。

基于 Spring Boot 和 MySQL 的水果管理系统

原文地址: https://www.cveoy.top/t/topic/qE9f 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录