当前位置:   article > 正文

SpringBoot--网上商城项目(前端搭建、首页、用户登录、盐加密、登录令牌管理)_springboot网上商城

springboot网上商城

                                                                        文章目录

一、项目技术点

数据表

二、构建SpringBoot项目

1、创建SpringBoot项目并配置pom

配置pom  

2、application.yml的配置

3、首页访问

 三、首页功能

工具类!!!

 首页数据绑定语法

 四、用户明文登录

 五、前端及数据库密码加密

盐加密

六、服务器客户端登录密码管理


一、项目技术点

前端:Freemarker、jQuery
后端:SpringBoot、MyBatisPlus、Lombok
中间件:Redis

数据表

用户表:t_user

订单项表:t_order_item                           

数据项表:t_dict_data

商品表:t_goods                       

订单表:t_order

数据源表:t_dict_type

二、构建SpringBoot项目

1、创建SpringBoot项目并配置pom

 

 

配置pom  

  1. <parent>
  2. <groupId>org.springframework.boot</groupId>
  3. <artifactId>spring-boot-starter-parent</artifactId>
  4. <version>2.3.9.RELEASE</version>
  5. <relativePath/> <!-- lookup parent from repository -->
  6. </parent>

 

 导入pom依赖时,报红杠杠,是网络问题,删除重新导入或者换一个网络重新导入

  1. <properties>
  2. <java.version>1.8</java.version>
  3. </properties>
  4. <dependencies>
  5. <!--freemarker-->
  6. <dependency>
  7. <groupId>org.springframework.boot</groupId>
  8. <artifactId>spring-boot-starter-freemarker</artifactId>
  9. </dependency>
  10. <!--spring web-->
  11. <dependency>
  12. <groupId>org.springframework.boot</groupId>
  13. <artifactId>spring-boot-starter-web</artifactId>
  14. </dependency>
  15. <!--mysql-->
  16. <dependency>
  17. <groupId>mysql</groupId>
  18. <artifactId>mysql-connector-java</artifactId>
  19. <scope>runtime</scope>
  20. <version>5.1.44</version>
  21. </dependency>
  22. <!--lombok-->
  23. <dependency>
  24. <groupId>org.projectlombok</groupId>
  25. <artifactId>lombok</artifactId>
  26. <optional>true</optional>
  27. </dependency>
  28. <!--junit-->
  29. <dependency>
  30. <groupId>org.springframework.boot</groupId>
  31. <artifactId>spring-boot-starter-test</artifactId>
  32. <scope>test</scope>
  33. <exclusions>
  34. <exclusion>
  35. <groupId>org.junit.vintage</groupId>
  36. <artifactId>junit-vintage-engine</artifactId>
  37. </exclusion>
  38. </exclusions>
  39. </dependency>
  40. <dependency>
  41. <groupId>junit</groupId>
  42. <artifactId>junit</artifactId>
  43. <scope>test</scope>
  44. </dependency>
  45. <!-- mybatis plus依赖 -->
  46. <dependency>
  47. <groupId>com.baomidou</groupId>
  48. <artifactId>mybatis-plus-boot-starter</artifactId>
  49. <version>3.4.0</version>
  50. </dependency>
  51. <!-- mybatis-plus-generator依赖 -->
  52. <dependency>
  53. <groupId>com.baomidou</groupId>
  54. <artifactId>mybatis-plus-generator</artifactId>
  55. <version>3.4.0</version>
  56. </dependency>
  57. <!--hariki-->
  58. <dependency>
  59. <groupId>com.zaxxer</groupId>
  60. <artifactId>HikariCP</artifactId>
  61. </dependency>
  62. <!-- MD5依赖 -->
  63. <dependency>
  64. <groupId>commons-codec</groupId>
  65. <artifactId>commons-codec</artifactId>
  66. </dependency>
  67. <dependency>
  68. <groupId>org.apache.commons</groupId>
  69. <artifactId>commons-lang3</artifactId>
  70. <version>3.6</version>
  71. </dependency>
  72. <!-- valid验证依赖 -->
  73. <dependency>
  74. <groupId>org.springframework.boot</groupId>
  75. <artifactId>spring-boot-starter-validation</artifactId>
  76. </dependency>
  77. <!--redis-->
  78. <dependency>
  79. <groupId>org.springframework.boot</groupId>
  80. <artifactId>spring-boot-starter-data-redis</artifactId>
  81. </dependency>
  82. <!--commons-pool2 对象池依赖 2.0版本的lettuce需要-->
  83. <dependency>
  84. <groupId>org.apache.commons</groupId>
  85. <artifactId>commons-pool2</artifactId>
  86. </dependency>
  87. <!--spring-session将session借助于第三方存储(redis/mongodb等等),默认redis-->
  88. <!--<dependency>
  89. <groupId>org.springframework.session</groupId>
  90. <artifactId>spring-session-data-redis</artifactId>
  91. </dependency>-->
  92. <dependency>
  93. <groupId>com.alipay.sdk</groupId>
  94. <artifactId>alipay-easysdk</artifactId>
  95. <version>2.0.1</version>
  96. </dependency>
  97. </dependencies>
  98. <build>
  99. <plugins>
  100. <plugin>
  101. <groupId>org.springframework.boot</groupId>
  102. <artifactId>spring-boot-maven-plugin</artifactId>
  103. </plugin>
  104. </plugins>
  105. </build>

2、application.yml的配置

没有下载这个插件的话,需要下载,下载后,重新启动idea哦,这应该是常识了叭~~~~~~~~~~~

  转成yml

再将下面的配置,拷贝进去

  1. server:
  2. port: 8081
  3. servlet:
  4. context-path: /
  5. spring:
  6. datasource:
  7. url: jdbc:mysql://localhost:3306/spbootpro?useSSL=false&useUnicode=true&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=UTC&characterEncoding=UTF8
  8. driver-class-name: com.mysql.jdbc.Driver
  9. password: 123456
  10. username: root
  11. hikari:
  12. # 最小空闲连接数量
  13. minimum-idle: 5
  14. # 空闲连接存活最大时间,默认600000(10分钟)
  15. idle-timeout: 180000
  16. # 连接池最大连接数,默认是10
  17. maximum-pool-size: 10
  18. # 此属性控制从池返回的连接的默认自动提交行为,默认值:true
  19. auto-commit: true
  20. # 连接池名称
  21. pool-name: MyHikariCP
  22. # 此属性控制池中连接的最长生命周期,值0表示无限生命周期,默认1800000即30分钟
  23. max-lifetime: 1800000
  24. # 数据库连接超时时间,默认30秒,即30000
  25. connection-timeout: 30000
  26. freemarker:
  27. #设置编码格式
  28. charset: UTF-8
  29. #后缀
  30. suffix:
  31. #文档类型
  32. content-type: text/html
  33. #模板前端
  34. template-loader-path: classpath:/templates/
  35. #启用模板
  36. enabled: true
  37. mvc:
  38. static-path-pattern: /static/**
  39. redis:
  40. #服务端IP
  41. host: 192.168.141.128
  42. #端口
  43. port: 6379
  44. #密码
  45. password: 123456
  46. #选择数据库
  47. database: 0
  48. #超时时间
  49. timeout: 10000ms
  50. #Lettuce的连接是基于Netty的,连接实例(StatefulRedisConnection)可以在多个线程间并发访问
  51. #Lettuce线程安全,Jedis线程非安全
  52. lettuce:
  53. pool:
  54. #最大连接数,默认8
  55. max-active: 8
  56. #最大连接阻塞等待时间,默认-1
  57. max-wait: 10000ms
  58. #最大空闲连接,默认8
  59. max-idle: 200
  60. #最小空闲连接,默认0
  61. min-idle: 5
  62. #mybatis-plus配置
  63. mybatis-plus:
  64. #所对应的 XML 文件位置
  65. mapper-locations: classpath*:/mapper/*Mapper.xml
  66. #别名包扫描路径
  67. type-aliases-package: com.xiaokun.spbootpro.model
  68. configuration:
  69. #驼峰命名规则
  70. map-underscore-to-camel-case: true
  71. #日志配置
  72. logging:
  73. level:
  74. com.xiaokun.spbootpro.mapper: debug

配置中该修该的修改一下,比如服务端IP,数据库名称什么的。 

 这个后缀不用修改也不用添加,空的方便后续开发

  编写controller层,访问首页界面

3、首页访问

样式,依赖都已经调整好了,导入前端页面及页面对应的js/css/images文件

前端静态页面,导入你手上现有的就ok

 在浏览器中输入访问地址 http://localhost:8081/

访问成功,就说明你的前端搭建好了

 三、首页功能

将这边的静态数据变为动态数据,什么是动态数据呢?就是数据库中的数据

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/正经夜光杯/article/detail/860079
推荐阅读
相关标签