Day14-作业(SpringBoot原理篇)

  • Post author:
  • Post category:其他



作业1:自定义starter的代码结合自动装配,实现指定bean的装配

  1. 创建kunkun-spring-boot-starter模块

    引入kunkun-spring-boot-autoconfigure模块

  2. 创建kunkun-spring-boot-autoconfigure模块

    1. 创建KunkunUtils工具类
    2. 创建KunkunAutoConfiguration配置类(管理KunkunUtils)
    3. 将KunkunAutoConfiguration配置类进行自动装配(META-INF/spring/……)



作业2:面试题

  1. 如果别人给我了一个项目,都已经打成jar包了(没有提供源码),发现其中的一项参数不对,能不能在外部直接修改项目配置项的内容,如何实现?
  2. Spring容器中的bean对象是什么时候创建的 ?[包括: 默认单例 以及 非单例]
  3. 简单聊聊你对SpringBoot框架的理解 / SpringBoot自动配置的原理是什么?
  4. SpringBoot框架与Spring Framework的关系能详细的描述一下吗? 为什么现在项目开发都基于SpringBoot进行 ?
  5. 有没有在项目中自己定义过 starter,如果让你来定义starter,能描述下大概的思路吗?
  6. SpringBoot读取配置文件的方式有哪些?




作业3



【苍穹外卖】



:根据如下提供的接口文档 及 页面原型(需求)完成接口文档中



订单模块



接口开发,并通过postman测试接口




备注:

根据接口文档开发接口,并给予postman进行测试即可,


前端


工程前端人员还未开发,所以无需联调测试。



页面原型:








页面原型,提取码:5555



https://pan.baidu.com/s/1sSVPV1Nhu8hKDJPoMjDSNA








接口文档:

将json文件,导入YAPI/ApiFox/Postman








接口文档,提取码:5555



https://pan.baidu.com/s/1aJAIN0yU3BZerxK9JDu_SQ








基础代码:


在day10/day11/day12 作业的基础工程上,进行开发



建表语句:

--
-- Table structure for table `orders`
--

DROP TABLE IF EXISTS `orders`;
/*!40101 SET @saved_cs_client     = @@character_set_client */;
/*!50503 SET character_set_client = utf8mb4 */;
CREATE TABLE `orders` (
  `id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键',
  `number` varchar(50) COLLATE utf8_bin DEFAULT NULL COMMENT '订单号',
  `status` int NOT NULL DEFAULT '1' COMMENT '订单状态 1待付款 2待接单 3已接单 4派送中 5已完成 6已取消 7退款',
  `user_id` bigint NOT NULL COMMENT '下单用户',
  `address_book_id` bigint NOT NULL COMMENT '地址id',
  `order_time` datetime NOT NULL COMMENT '下单时间',
  `checkout_time` datetime DEFAULT NULL COMMENT '结账时间',
  `pay_method` int NOT NULL DEFAULT '1' COMMENT '支付方式 1微信,2支付宝',
  `pay_status` tinyint NOT NULL DEFAULT '0' COMMENT '支付状态 0未支付 1已支付 2退款',
  `amount` decimal(10,2) NOT NULL COMMENT '实收金额',
  `remark` varchar(100) COLLATE utf8_bin DEFAULT NULL COMMENT '备注',
  `phone` varchar(11) COLLATE utf8_bin DEFAULT NULL COMMENT '手机号',
  `address` varchar(255) COLLATE utf8_bin DEFAULT NULL COMMENT '地址',
  `user_name` varchar(32) COLLATE utf8_bin DEFAULT NULL COMMENT '用户名称',
  `consignee` varchar(32) COLLATE utf8_bin DEFAULT NULL COMMENT '收货人',
  `cancel_reason` varchar(255) COLLATE utf8_bin DEFAULT NULL COMMENT '订单取消原因',
  `rejection_reason` varchar(255) COLLATE utf8_bin DEFAULT NULL COMMENT '订单拒绝原因',
  `cancel_time` datetime DEFAULT NULL COMMENT '订单取消时间',
  `estimated_delivery_time` datetime DEFAULT NULL COMMENT '预计送达时间',
  `delivery_status` tinyint(1) NOT NULL DEFAULT '1' COMMENT '配送状态  1立即送出  0选择具体时间',
  `delivery_time` datetime DEFAULT NULL COMMENT '送达时间',
  `pack_amount` int DEFAULT NULL COMMENT '打包费',
  `tableware_number` int DEFAULT NULL COMMENT '餐具数量',
  `tableware_status` tinyint(1) NOT NULL DEFAULT '1' COMMENT '餐具数量状态  1按餐量提供  0选择具体数量',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8mb3 COLLATE=utf8_bin COMMENT='订单表';
/*!40101 SET character_set_client = @saved_cs_client */;



需求:

  1. 多条件/分页查询订单信息。

    【参照接口文档 及 页面原型 和 需求】

  2. 拒单/接单/派单。

    【参照接口文档 及 页面原型 和 需求】

  3. 根据ID查询订单信息。

    【参照接口文档 及 页面原型 和 需求】




版权声明:本文为chuanchengdabing原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。