![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Spring
文章平均质量分 87
双普拉斯
非典型程序员!我不生产代码,我只是代码的搬运工!
展开
-
Spring的Bean的生命周期,Bean的装配和注入
10.经过流程9之后,就可以正式使用该Bean了,对于scope为singleton的Bean,Spring的ioc容器中会缓存一份该bean的实例,而对于scope为prototype的Bean,每次被调用都会new一个新的对象,期生命周期就交给调用方管理了,不再是Spring容器进行管理了。该属性控制着bean对象的作用域。3.如果Bean实现了BeanNameAware接口,会回调该接口的setBeanName()方法,传入该Bean的id,此时该Bean就获得了自己在配置文件中的id,原创 2023-02-26 01:39:38 · 583 阅读 · 0 评论 -
redis缓存穿透解决之布隆过滤器
布隆过滤器原创 2022-09-29 00:27:02 · 1452 阅读 · 0 评论 -
redis的基本知识和应用,redis缓存雪崩,缓存击穿,缓存穿透
redis基本使用与详解,redis命令,redis缓存原创 2022-09-28 22:58:16 · 172 阅读 · 0 评论 -
macOS根目录上无法写入文件和创建目录的问题
问题起源:springboot项目启动报错 在根目录下无法创建/data 存放项目日志Failed to create parent directories for [/home/app/log/myweb/myweb.log]试着手动创建去解决,失败admin@admindeMacBook-Pro-2 ~ % cd / admin@admindeMacBook-Pro-2 / % sudo mkdir dataPassword:mkdir: data: .原创 2022-03-03 16:19:24 · 4176 阅读 · 0 评论 -
Spring项目中使用Jwt完成Token验证
一、什么是JWT?为什么使用JWT?Json web token (JWT), 是为了在网络应用环境间传递声明而执行的一种基于JSON的开放标准((RFC 7519).该token被设计为紧凑且安全的,特别适用于分布式站点的单点登录(SSO)场景。JWT的声明一般被用来在身份提供者和服务提供者间传递被认证的用户身份信息,以便于从资源服务器获取资源,也可以增加一些额外的其它业务逻辑所必须的声明信息,该token也可直接被用于认证,也可被加密。随着技术的发展,分布式web应用的普及,通过se.原创 2021-10-24 21:44:31 · 4584 阅读 · 0 评论 -
数据结构与算法—Java快速排序
之前写的快速排序采用的是固定位置法,即每一次取得基准都是当前所排序区域的最左边的元素。接下来看一下快速排序的优化。一. 随机选取基准法这就是随机选取基准法,,在所排序的区域随机选取一个数与当前的基准交换,这个随机数就成了新的基准。然后进行一次快速排序。这种方法适用于数组本身有序,就会提高排序的效率。public static int partition(int[] array,int start,int end){//返回基准的下标 int low = start; int原创 2021-10-14 15:59:40 · 151 阅读 · 0 评论 -
Java中单例设计模式,饿汉式和懒汉式
单例模式所谓类的单例设计模式,就是采取一定的方法保证在整个的软件系统中,对某个类只能存在一个对象实例,并且该类只提供一个取得其对象实例的方法。如果我们要让类在一个虚拟机中只能产生一个对象: 将类的构造器的访问权限设置为private,这样,就不能用new操作符在类的外部产生类的对象了,但在类内部仍可以产生该类的对象。 提供一个public方法作为该类的访问点,用于创建该对象,必须是static修饰的,因为在类的外部开始还无法得到类的对象,只能通过类调用该方法。 缓存已创...原创 2021-10-12 16:06:55 · 498 阅读 · 0 评论 -
使用MyBatisPlus自动生成Java、xml模板
MyBatisPlus自动生成Java、xml模板使用MyBatisPlus使用MyBatisPluspublic class CodeGenerator { // 作者 private static final String author = "garry"; // 数据库 private static final String url = "jdbc:mysql://localhost:3306/test?useUnicode=true&useSSL=false&char原创 2020-12-16 17:21:41 · 1384 阅读 · 1 评论 -
使用Freemarker模板来生成model,service,mapper,mapper.xml等
项目工程:https://gitee.com/geekcjj/code-generator.git原创 2020-12-11 17:41:44 · 536 阅读 · 0 评论 -
视频格式转换工具,用到ws.schild.jave,之前是用的it.sauronsoftware.jave,作者已经不维护了
package com.maike.common.util;import java.io.File;import java.io.FileInputStream;import java.io.IOException;import java.nio.channels.FileChannel;import java.util.ArrayList;import java.util.List;import org.slf4j.Logger;import org.slf4j.LoggerFact.原创 2020-12-11 17:40:37 · 8723 阅读 · 16 评论 -
Java中banner字符画,可生成各种图案
http://patorjk.com/software/taaghttp://www.network-science.de/ascii/http://www.degraeve.com/img2txt.phhttp://patorjk.com/software/taaghttp://www.network-science.de/ascii/http://www.degraeve.com/img2txt.php原创 2020-11-26 11:47:55 · 3478 阅读 · 0 评论 -
springboot + redis + 注解 + 拦截器用Token 实现接口幂等性校验
一、概念幂等性, 通俗的说就是一个接口, 多次发起同一个请求, 必须保证操作只能执行一次比如:订单接口, 不能多次创建订单 支付接口, 重复支付同一笔订单只能扣一次钱 支付宝回调接口, 可能会多次回调, 必须处理重复回调 普通表单提交接口, 因为网络超时等原因多次点击提交, 只能成功一次 等等二、常见解决方案唯一索引 -- 防止新增脏数据 token机制 -- 防止页面重复提交 悲观锁 -- 获取数据的时候加锁(锁表或锁行) 乐观锁 -- 基于版本号version实现, 在更新原创 2020-11-25 15:03:32 · 429 阅读 · 0 评论 -
windows下使用批处理文件快速启动redis
windows下redis启动,需要进入redis安装目录,然后shift+右键,选择“在此处打开命令窗口”,然后输入./redis-server redis.conf,就可以启动redis了。如下所示: 这种情况有一个问题,就是每次需要进入redis安装目录对应的文件夹,然后打开命令行,输入redis启动命令,因此有了更进一步的改进,就是利用批处理脚本来完成这些操作,减少麻烦。批处理脚本如下:startup-redis.bat@echo offtitle redis-se...原创 2020-11-25 10:00:31 · 825 阅读 · 0 评论 -
关于mysql中模糊查询,使用instr和like
一、like,不区分大小写1.%:可代表任意(0-n)长度的字符串select * from A where name like '%指定内容'表示查出“指定内容”前有任意内容的记录,即以“指定内容”结尾的记录select * from A where name like '指定内容%'查询以该内容结尾的记录,后面是任意内容select * from A where name like '%指定内容%'查询包含指定内容的记录,只要有一个字符相等,就查询出来2._:可.原创 2020-11-19 09:52:44 · 515 阅读 · 0 评论 -
关于自增型主键的表中插入新数据后同时获取主键的值,useGeneratedKeys和keyProperty
在开发项目中遇到一个问题,就是在A表插入一条新的数据后,同时插入该条数据相关联的B表中一条数据,关联字段为A表中的主键,而这个主键时自增的,那么我如何在插入这条新数据的同时获取该数据主键id的值。在我看来要在插入的同时获得这个主键id的值一步是完成不了的,可能需要两部,先插入,后查询出来获取id的值,但这样两次访问数据库感觉有点不太安全,于是,而且插入数据后,你怎么知道查询后取出来的时你刚刚插入的那条数据,这些都没法判断,万一插入的数据时相同的没有一些显著的区分条件,你无法从A表中找到刚刚才新插原创 2020-11-17 15:51:22 · 609 阅读 · 0 评论 -
java读取properties中的中文值会乱码
在项目的应用中,经常将一些配置放入properties文件中,在代码应用中读取properties文件,就需要专门的类Properties类,通过这个类可以进行读取。web-name=池塘网web-author=麦科特web-describe=一个有趣的网站在项目中读取properties配置文件中如果有中文则会出现乱码的现象,如:第一种方式:private static final String FILE_PATH="webinfo.properties";Properties原创 2020-06-04 16:59:54 · 1176 阅读 · 2 评论 -
Intellij IDEA四种热部署配置
热加载热加载可以使代码修改后无须重启服务器,就可以加载更改的代码。(其实分 java 和非 java 代码, 本处可以让 java 代码立即生效且不重启服务)第 1 种:修改服务器配置,使得 IDEA 窗口失去焦点时,更新类和资源菜单 Run -> EditConfiguration , 然后配置指定服务器下,右侧 server 标签下 on frame deactivation = Update classes and resource。优点:简单缺点:基于 JVM 提供的热加载原创 2020-05-11 11:21:43 · 351 阅读 · 0 评论 -
no applicable action for [springProfile], current ElementPath is [[configuration][springProfile]]
Spring启动时logback打印出很多日志,还有错误信息09:00:16,520 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Could NOT find resource [logback.groovy]09:00:16,520 |-INFO in ch.qos.logback.classic.LoggerCon...转载 2019-11-07 09:54:31 · 1155 阅读 · 0 评论