SpringBoot实训-商城项目(1)

  • Post author:
  • Post category:其他


项目名称:学子商城

分析项目:


当开发某一个项目时,分许该项目中需要处理哪些数据?

例如:用户,收货地址,商品类别,商品,收藏,购物车,订单。。。。

处理数据的先后顺序:先处理基础数据,在处理相关数据,例如需要先处理商品数据,才可以处理订单数据。


处理以上数据的先后顺序:

用户>收获地址>商品类别>商品>收藏>购物车>订单

当确定了数据处理顺序之后应该分析每个数据对应的功能有哪些,例如用户数据:注册,登录,修改密码,修改资料,上传头像

确定开发功能的开发顺序,遵循增>查>删>改


用户数据功能的开发顺序:

注册>登录>修改密码>修改资料>上传头像


确定每一个功能的开发步骤

:创建数据表>创建实体类>持久层>业务层>控制器层>前端页面

项目实现:


关于项项目的数据表问题:

  1. 根据虚拟的前端页面和业务需求创建出各种数据表
  2. 画出各种数据表之间的关系图
  3. 每个表中的每个字段都应该有其作用否则将直接去掉
  1. 数据处理:


    1. 创建数据库:student_shop
    2. 在该数据库中导入要创建的数据表
    3. 显示出所有的数据表:


  2. SpringBoot框架-项目创建:

    1. SpringBoot框架存在的原因相对于传统的ssm框架减少了依赖的添加和大量的配置,使用起来比较方便,便于开发。

    2. 创建SpringBoot项目

      • 打开start.spring.io地址
      • 下载项目之后解压到工作空间里面(路径最好不要出现中文),开发开发工具idea导入项目(保证网络通常)

        1. 导入项目成功之后找到JavaApplication类中的main方法并运行,会报错,原因是因为没有配置连接数据库的基本信息:
        2. 在application.properties文件中配置如下信息:

          spring.datasource.url=jdbc:mysql://localhost:3306/student_shop?useUnicode=true&characeterEncoding=utf-8&serverTimezone=Asia/Shanghai
          spring.datasource.username=root
          spring.datasource.password=root

        5.配置完成之后再次运行main方法则可以执行成功在控制台的效果如下:


        1. 找到测试类javaApplicationTests类,先测试空方法contextLoads(),可以正常执行

        2. 在该测试类中添加一个测试连接的方法:
        3. 如果使用@Autowired自动装配出现错误,则需要修改:

        4. 此时测试getConnection()方法,则可以在控制台看到连接成功的信息


        功能实现-用户注册:

      1. 用户数据之注册功能:


        • 创建用户数据表
CREATE TABLE `t_user` (

  `uid` int(11) NOT NULL AUTO_INCREMENT COMMENT '用户id',

  `username` varchar(20) NOT NULL COMMENT '用户名',

  `password` char(32) NOT NULL COMMENT '密码',

  `salt` char(36) DEFAULT NULL COMMENT '盐值加密',

  `gender` int(11) DEFAULT NULL COMMENT '性别,0-女,1-男',

  `phone` varchar(20) DEFAULT NULL COMMENT '电话',

  `email` varchar(50) DEFAULT NULL COMMENT '邮箱',

  `avatar` varchar(50) DEFAULT NULL COMMENT '头像',

  `is_delete` int(11) DEFAULT NULL COMMENT '是否删除,0-未删除,1-已删除',

  `created_user` varchar(20) DEFAULT NULL COMMENT '创建执行人',

  `created_time` datetime DEFAULT NULL COMMENT '创建时间',

  `modified_user` varchar(20) DEFAULT NULL COMMENT '修改执行人',

  `modified_time` datetime DEFAULT NULL COMMENT '修改时间',

  PRIMARY KEY (`uid`),

  UNIQUE KEY `username` (`username`)

) ENGINE=InnoDB AUTO_INCREMENT=12 DEFAULT CHARSET=utf8;

      • 创建用户实体类

        1. 创建tedu.cn.java.entity.User类并继承BaseEntity类
        2. 给所有属性添加get、set、toString方法
        3. 创建tedu.cn.java.entity.BaseEntity类
        4. 给所有属性添加get、set、toString方法

      • 注册-持久层-连接数据库执行sql

        1. 规划sql语句
        2. 创建接口和抽象方法
        3. 配置映射关系
        4. 测试sql语句是否正常
      • 注册-业务层-保证数据的安全

        1. 业务层的基本定位
        2. 规划异常
        3. 创建接口和抽象方法
        4. 实现接口重写抽象方法
        5. 测试能够正常使用
      • 注册-控制层

        1. 设计请求

          1. 请求路径
          2. 请求参数
          3. 请求类型
          4. 响应数据
        2. 处理请求
        3. 统一处理异常
        4. 测试
      • 注册-前端页面

        1. 找到页面接收数据进行并返回结果(JavaScript,jQuery,ajax,json,html)



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