自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

来一只烤虾的博客

很高兴与大家进行技术交流

  • 博客(24)
  • 收藏
  • 关注

原创 docker容器中修改kafka中的partition配置

docker容器修改kafka中的配置

2023-01-12 18:02:13 971

原创 使用mybatis操作oracle数据

mapper.xml<!--批量插入--><insert id="insert" parameterType="java.util.List"> INSERT INTO exam(empId,empName,insuredType,beginDate,status,maxDate,insuredOrg) <foreach item="item" collection="list" separator="UNION ALL" >

2020-12-25 18:15:52 2365

原创 Mybatis的救赎之路

注解@Param:可以为前端传来的参数赋别名,sql查询中直接使用别名就可以java代码实例://前端form表单的传过来的变量名为nameList<PreSelDict> queryInfo(@Param("info") String name);//mapper接口//mapper.xml中的sql语句 <if test="info!=null and info!=''"> and name like '%'||#{info}||'%'

2020-09-28 16:20:45 142

原创 好文章连接

Spring中使用RedisTemplate操作Redis(spring-data-redis)

2020-08-17 17:02:18 155

原创 redis位图(Bitmap)

简介位图实质是对字符串类型进行更细致的划分,在比特位上进行操作操作,字符串的最小单位为字符,而位图的最小单位是比特。位图的存储是按照操作系统从低位到高位存储(从右向左)语法命令 1. setbit key_name offset value--对指定的偏移量的比特位进行设值; --offset为偏移量,以0为基准。也可以把offset看做操作位的下标(以下相同); 2. getbit key_name offset --获取指定的偏移量的比特位的值; 3. bitcount key_na

2020-08-17 14:58:07 236

原创 springboot对从数据库中获取的数据进行树形结构解析并返回json格式

这里只写出service实现类中的主要业务逻辑,基于从数据库中成功获取数据上进行操作,若想获取全部源码,可以私信我.实体类package com.yang.treedata.project2.entity;import java.io.Serializable;import java.util.ArrayList;import java.util.List;public class Disease implements Serializable { private Integer

2020-08-12 11:01:06 2754 8

原创 pgsql遇到的问题

导入sql执行脚本时自增序列不存在问题解决方案 1. 新建一个查询,执行 CREATE SEQUENCE IF NOT EXISTS XXXX_id_seq 语句,创建自增序列; 2. 在 DEFAULT nextval('XXXX_id_seq'::regclass) NOT NULL 语句''中添加"" --例如:DEFAULT nextval('"XXXX_id_seq"'::regclass) NOT NULL...

2020-08-07 23:24:49 1003

原创 pgsql学习与总结

实现树状查询--创建表CREATE TABLE province(id int4 NOT NULL,pid int4 NOT NULL,name VARCHAR(32) NOT NULL,PRIMARY KEY (id) );--插入数据insert into province (ID, pid, NAME)values (1,0,'山东');insert into province (ID, pid, NAME)values (2,1,'菏泽');insert into provin

2020-08-07 12:00:28 627

原创 oracle学习与总结

--向可以为null的字段插入数据时,插入null与省略的结果是一样的--类型为char或者varchar类型的字段插入空字符串显示为空白insert into emp1 values (1,'李四',null)insert into emp1 values (2,'李四')insert into emp1 values (3,'')显示结果一条语句插入多条数据--oracle语法insert allinto dept(deptno,dname,loc) values(60,'CHEN

2020-08-07 11:59:52 191

原创 Vue.js学习与总结

简介 1. 当导入vue依赖包后,在浏览器的内存中,就会有一个Vue构造函数 //想深入了解vue构造函数的可以去看Vue源码 2. 每个 Vue 应用都是通过用 Vue 函数创建一个新的 Vue 实例开始的 3. MVVM架构 M--data:用来保存页面数据 VM--new出来的vue对象,就是MVVM中的调度者 V--vue实例所控制的元素的区域Vue常用属性 1. el:为当前vue实例提供挂载元素,该元素覆盖的范围都被vue操控 2. data:向el中被操控的属性

2020-07-23 10:43:54 417

原创 单向链表的定义以及基本操作

简介 单向链表的特点 1. 链表是一种在物理存储上非连续,非顺序的存储结构. 2. 连接方向是单向的. 3. 访问链表要从头部顺序读取. 4. 是由一个个节点组装而成的. 5. 每个节点都有类似指针的变量指向链表下一个节点.定义链表Java中我们需要自己定义一个链表的类来生成对象,这个类需要有一个存储数据的数据域和一个存储下一个节点地址的指针域,因此,我们至少定义两个属性。class ListNode { int id; int val; Lis

2020-07-13 03:33:39 582

原创 redis开发中常见问题以及解决方案

穿透生成原因缓存穿透是在指查询一定不不存在的数据时,由于当缓存不命中时需要从数据库中查询,查询不到数据则不写入缓存,这将导致每次请求这个不存在的数据时都要去数据库中查询解决方案 1. 在持久层查询不到数据就向redis中缓存空结果,查询时先判断是否exists(key),如果有直接返回空,如果没有则查询后返回 2. 当insert时需要清除查询的key,否则即便DB中有值也查询不到(也可以为空缓存设置过期时间) ---在传参的URL中进行加密雪崩缓存雪崩:缓存大量失效时,引发大量

2020-07-10 11:41:48 603

原创 redis缓存与数据库一致性

实时同步对强制性要求比较高的,应采用实时同步方案,先查询缓存若查询不到再去DB中查询,然后保存到缓存;更新缓存时,先更新数据库,再将缓存的设置过期(建议不要去更新缓存内容,直接设置缓存过期)。 1. @Cacheable:查询时使用,注意Long类型需要转化为String类型,否则会抛弃异常 2. @CachePut:更新时使用,一定回车从DB中查询数据 3. @CacheEvict:删除时使用 4. @Caching:组合用法异步队列(流量削峰)对于并发程度高的,可采用异步队列额方式

2020-07-10 10:44:42 134

原创 redis持久化策略

简介 1. redis持久化存储支持两种方式:RDB和AOF;RDB一定时间存储文件,AOF默认每秒去存储历史命令 2. redis需要经常将内存中的数据同步到银盘来保证持久化RDB 1. rdb:redis database 2. 核心函数:rdbSave(生成rdb文件),rdbLoad(从rdb文件中加载进内存) 3.redis 默认的持久化机制 3. 快照是默认的持久化方式,默认文件名为dump.rdb --快照保存数据快,还原数据快,适用于灾难备份 --小内存机器不适

2020-07-10 09:54:01 149

原创 redis事务及常用命令

简介redis事务可以一次执行多个命令(一组命令)--命令按串行化执行,执行中不会被其他命令插入,不许加塞) 1. 批量操作在发送exec命令前被放入队列缓存 2. 收到exec执行命令后进入事务执行,事务中任意命令执行失败,其余的命令依然被执行 3. 在事务执行过程中,其他客户端提交的命令请求不会插入到事务执行命令序列中 4. 不支持事务回滚常用命令 1. discard--取消事务,放弃执行事务快块内的所有命令 2. exec--执行所有事务块内的命令 3. multi--标记一

2020-07-10 09:16:12 1199

原创 redis发布与订阅

简介redis发布订阅(pub/sub)是一种消息通信模式:发送者(pub)发送消息,订阅者(sub)接收消息redis客户端可以订阅任意数量的频道常用命令订阅: 1. subscribe channel[channel1 channel2..]--订阅给定的一个或多个频道的信息 2. psubscribe pattern[pattern1 pattern2..]--订阅一个或多个符合给定模式的频道发布: 1. publish channel message--将消息发送到指定频道

2020-07-10 07:37:08 122

原创 查询字符串中数据递减的最长字符串

import java.util.*;/** * Description: * date: 2020/7/7 22:55 * * @author Crille-g * @version 1.0 */public class StrTest { public static void main(String[] args) { Scanner sc = new Scanner(System.in); StrTest strTest = new StrTe

2020-07-07 01:30:58 158

原创 redis的数据类型以及常用命令

redis的数据类型

2020-07-06 16:34:41 176

原创 Springboot整合lettuce并优化代码

优化前添加pom依赖<!-- 默认是lettuce客户端--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis</artifactId> </dependency><!-

2020-07-06 07:13:45 1872

原创 springboot整合jedis

添加依赖 <dependency> <groupId>redis.clients</groupId> <artifactId>jedis</artifactId> </dependency>修改yml文件(redis中没设置密码)server: port: 8080spring: redis: port: 6379# password: host: 192.168.214.12

2020-07-04 21:01:43 267

原创 redis客户端介绍与对比

Jedis Redission lettuce

2020-07-04 17:35:05 363

原创 redis中key命令以及应用场景

key命令keys * :返回满足的所有建,可以进行模糊匹配;exists key :判断是否存在指定的key,存在返回1,不存在返回0;expire key second:设置key的过期时间,单位为秒;---到时间redis会自动清除del key:删除指定的key;pexpire key milliseconds:修改key的过期时间;---时间单位为毫秒ttl key:返回key的剩余时间;当key没有设置生存时间时,返回-1;当key不存在时返回-2;persist key:取消过期

2020-07-04 00:04:14 173

原创 redis启动与关闭

一. 非正常关闭(断电。强制关闭)-----非正常关闭数据容易丢失kill强制关闭:kill -9 PID二. 正常关闭-----正常关闭数据将会保存在客户端使用shutdown命令关闭服务端

2020-07-03 22:50:35 342

原创 redis内存管理与维护

redis内存维护

2020-07-03 21:57:01 131

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除