IDEA版SpringBoot全教程 09 会员管理系统(下)2

本文涉及的产品
密钥管理服务KMS,1000个密钥,100个凭据,1个月
简介: 保存用户的时候要加盐加密:

加一个盐

public static final String salt = "java18.cn";

保存用户的时候要加盐加密:

//密码加密
String password = SecureUtil.md5(params.get("password") + salt);
params.put("password",password);

90c278e23a4fcff7fa8ab96561d604d0.png

还有登录的时候也要加密

6da3f7297e4d0913cce4ff96f8e8c6a4.png

还有一处,就是修改密码的时候,也要加密。

908e22520a6ebc9c814737c9d6249138.png

要改动的地方还是很多的吧,要小心修改哦,别漏了。

因为之前保存的用户,密码是没有加密的,这边为了简单操作,统一把密码设置为1,加密字符串就是:25280c00d0dfcaa5a6346819668f9069

一条update语句即可。

update user set `password` = '25280c00d0dfcaa5a6346819668f9069'

SpringBoot默认数据源不是druid,我们需要手动进行一下更换

springboot 2.0 默认连接池是Hikari了,所以引用parents后不用专门加依赖。

这也是为什么我们明明没有引入数据源,但是也可以正常使用的原因。

验证:f477aac2ac080b8a97d623139bdfb008.png

onApplicationEvent方法,在最后添加

//查看本地配置的数据源
DataSource dataSource = applicationContext.getBean(DataSource.class);
logger.info(dataSource.toString());

打印日志


2021-04-17 14:44:00.035 INFO 692 --- [ restartedMain] ication

EnhancerBySpringCGLIB

EnhancerBySpringCGLIB

93e83275 : HikariDataSource (HikariPool-8)


1.性能方面 hikari>druid>tomcat-jdbc>dbcp>c3p0 。hikari的高性能得益于最大限度的避免锁竞争。


2.druid功能最为全面,sql拦截等功能,统计数据较为全面,具有良好的扩展性。

db6b9c4d415ab9a21c5fab2cbd716c5c.png


看来SpringBoot默认的数据源是真的很强,普通的开发完全可以胜任了,而且性能是最好的。不过,这边也介绍一下更换数据源的方法。

a01cae1bb4e0fde8e63dccc745937cc1.png

<dependency>
  <groupId>com.alibaba</groupId>
  <artifactId>druid</artifactId>
  <version>LATEST</version>
</dependency>

6edad4279bb45ca98b7f21b97b84e806.png

spring.datasource.type: com.alibaba.druid.pool.DruidDataSource

查看数据源配置的代码改下:

logger.info(dataSource.getClass().getName());

打印


2021-04-17 14:58:29.730 INFO 7760 --- [ restartedMain] ication

EnhancerBySpringCGLIB

EnhancerBySpringCGLIB

3e81aef4 : com.alibaba.druid.pool.DruidDataSource

————————————————

版权声明:本文为CSDN博主「剽悍一小兔」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。

原文链接:https://blog.csdn.net/weixin_39570751/article/details/122636941

相关文章
|
2月前
|
Cloud Native Java C++
Springboot3新特性:开发第一个 GraalVM 本机应用程序(完整教程)
文章介绍如何在Spring Boot 3中利用GraalVM将Java应用程序编译成独立的本机二进制文件,从而提高启动速度、减少内存占用,并实现不依赖JVM运行。
302 1
Springboot3新特性:开发第一个 GraalVM 本机应用程序(完整教程)
|
1月前
|
XML Java 数据库连接
SpringBoot集成Flowable:打造强大的工作流管理系统
在企业级应用开发中,工作流管理是一个核心组件,它能够帮助我们定义、执行和管理业务流程。Flowable是一个开源的工作流和业务流程管理(BPM)平台,它提供了强大的工作流引擎和建模工具。结合SpringBoot,我们可以快速构建一个高效、灵活的工作流管理系统。本文将探讨如何将Flowable集成到SpringBoot应用中,并展示其强大的功能。
191 1
|
1月前
|
JavaScript Java 项目管理
Java毕设学习 基于SpringBoot + Vue 的医院管理系统 持续给大家寻找Java毕设学习项目(附源码)
基于SpringBoot + Vue的医院管理系统,涵盖医院、患者、挂号、药物、检查、病床、排班管理和数据分析等功能。开发工具为IDEA和HBuilder X,环境需配置jdk8、Node.js14、MySQL8。文末提供源码下载链接。
|
2月前
|
前端开发 Java Apache
Springboot整合shiro,带你学会shiro,入门级别教程,由浅入深,完整代码案例,各位项目想加这个模块的人也可以看这个,又或者不会mybatis-plus的也可以看这个
本文详细讲解了如何整合Apache Shiro与Spring Boot项目,包括数据库准备、项目配置、实体类、Mapper、Service、Controller的创建和配置,以及Shiro的配置和使用。
509 1
Springboot整合shiro,带你学会shiro,入门级别教程,由浅入深,完整代码案例,各位项目想加这个模块的人也可以看这个,又或者不会mybatis-plus的也可以看这个
|
2月前
|
存储 安全 Java
打造智能合同管理系统:SpringBoot与电子签章的完美融合
【10月更文挑战第7天】 在数字化转型的浪潮中,电子合同管理系统因其高效、环保和安全的特点,正逐渐成为企业合同管理的新宠。本文将分享如何利用SpringBoot框架实现一个集电子文件签字与合同管理于一体的智能系统,探索技术如何助力合同管理的现代化。
113 4
|
2月前
|
前端开发 Java Apache
SpringBoot实现电子文件签字+合同系统!
【10月更文挑战第15天】 在现代企业运营中,合同管理和电子文件签字成为了日常活动中不可或缺的一部分。随着技术的发展,电子合同系统因其高效性、安全性和环保性,逐渐取代了传统的纸质合同。本文将详细介绍如何使用SpringBoot框架实现一个电子文件签字和合同管理系统。
104 1
|
2月前
|
文字识别 安全 Java
SpringBoot3.x和OCR构建车牌识别系统
本文介绍了一个基于Java SpringBoot3.x框架的车牌识别系统,详细阐述了系统的设计目标、需求分析及其实现过程。利用Tesseract OCR库和OpenCV库,实现了车牌图片的识别与处理,确保系统的高准确性和稳定性。文中还提供了具体的代码示例,展示了如何构建和优化车牌识别服务,以及如何处理特殊和异常车牌。通过实际应用案例,帮助读者理解和应用这一解决方案。
|
2月前
|
Java Maven Spring
springboot学习一:idea社区版本创建springboot项目的三种方式(第三种为主)
这篇文章介绍了在IntelliJ IDEA社区版中创建Spring Boot项目的三种方法,特别强调了第三种方法的详细步骤。
934 0
springboot学习一:idea社区版本创建springboot项目的三种方式(第三种为主)
|
1月前
|
JavaScript NoSQL Java
CC-ADMIN后台简介一个基于 Spring Boot 2.1.3 、SpringBootMybatis plus、JWT、Shiro、Redis、Vue quasar 的前后端分离的后台管理系统
CC-ADMIN后台简介一个基于 Spring Boot 2.1.3 、SpringBootMybatis plus、JWT、Shiro、Redis、Vue quasar 的前后端分离的后台管理系统
45 0
|
2月前
|
机器学习/深度学习 移动开发 自然语言处理
基于人工智能技术的智能导诊系统源码,SpringBoot作为后端服务的框架,提供快速开发,自动配置和生产级特性
当身体不适却不知该挂哪个科室时,智能导诊系统应运而生。患者只需选择不适部位和症状,系统即可迅速推荐正确科室,避免排错队浪费时间。该系统基于SpringBoot、Redis、MyBatis Plus等技术架构,支持多渠道接入,具备自然语言理解和多输入方式,确保高效精准的导诊体验。无论是线上医疗平台还是大型医院,智能导诊系统均能有效优化就诊流程。
下一篇
DataWorks