📜  加勒比海盗电影订单 (1)

📅  最后修改于: 2023-12-03 15:22:46.198000             🧑  作者: Mango

加勒比海盗电影订单

简介

加勒比海盗电影是一部经典好莱坞电影系列,自2003年第一部《加勒比海盗:黑珍珠号的诅咒》上映以来,深受观众喜爱,一共拍摄了五部电影。每个角色都非常的深入人心,如约翰尼·德普饰演的船长杰克·斯派洛、奥兰多·布鲁姆饰演的威尔·特纳、凯拉·奈特莉饰演的伊丽莎白·斯旺等。

作为程序员,我们的任务是创建一个订单系统,让用户可以更方便地购买加勒比海盗电影系列。

功能与要求
  • 用户可以浏览电影列表,并选择购买的电影和数量;
  • 用户可以在提交订单时查看总计价格;
  • 支持用户下单成功后的邮件通知。
技术选型
  • 语言:Java
  • 框架:Spring Boot
  • 数据库:MySQL
  • 邮件服务:JavaMail
数据库设计
CREATE TABLE movies (
    id INT PRIMARY KEY,
    name VARCHAR(50) NOT NULL,
    price DECIMAL(8, 2) NOT NULL
);

CREATE TABLE orders (
    id INT PRIMARY KEY,
    user_id VARCHAR(50) NOT NULL,
    movie_id INT NOT NULL,
    movie_name VARCHAR(50) NOT NULL,
    price DECIMAL(8, 2) NOT NULL,
    quantity INT NOT NULL,
    total_price DECIMAL(8, 2) NOT NULL
);
接口设计
展示电影列表
  • URL: /movies
  • Method: GET
  • Request Parameters: None
  • Response:
[
    {
        "id": 1,
        "name": "加勒比海盗:黑珍珠号的诅咒",
        "price": 20.00
    },
    {
        "id": 2,
        "name": "加勒比海盗2:聚魂棺",
        "price": 30.00
    },
    {
        "id": 3,
        "name": "加勒比海盗3:世界的尽头",
        "price": 40.00
    },
    {
        "id": 4,
        "name": "加勒比海盗4:惊涛怪浪",
        "price": 25.00
    },
    {
        "id": 5,
        "name": "加勒比海盗5:死无对证",
        "price": 35.00
    }
]
提交订单
  • URL: /orders
  • Method: POST
  • Request Body:
{
    "user_id": "1234",
    "movie_id": 1,
    "quantity": 2
}
  • Response:
{
    "id": 1,
    "user_id": "1234",
    "movie_id": 1,
    "movie_name": "加勒比海盗:黑珍珠号的诅咒",
    "price": 20.00,
    "quantity": 2,
    "total_price": 40.00
}
发送邮件通知

邮件通知使用JavaMail实现,需要配置邮件服务器的相关信息,如SMTP服务器地址、用户名、密码等。

总结

通过实现加勒比海盗电影订单系统,我们学习了Java语言、Spring Boot框架、MySQL数据库和JavaMail邮件服务的使用。同时,我们还了解了如何设计多个接口,实现不同的功能模块。