怪盗基德007
码龄13年
关注
提问 私信
  • 博客:118,220
    118,220
    总访问量
  • 124
    原创
  • 2,283,441
    排名
  • 148
    粉丝
  • 0
    铁粉
IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:北京市
  • 加入CSDN时间: 2012-03-27
博客简介:

BruceBupt的博客

查看详细资料
个人成就
  • 获得20次点赞
  • 内容获得12次评论
  • 获得113次收藏
  • 代码片获得164次分享
创作历程
  • 1篇
    2023年
  • 15篇
    2021年
  • 16篇
    2020年
  • 31篇
    2019年
  • 41篇
    2018年
  • 21篇
    2017年
成就勋章
TA的专栏
  • 中间件
    7篇
  • 消息队列
    1篇
  • 权限
    2篇
  • 性能测试
    1篇
  • 设计模式
    3篇
  • 缓存
    2篇
  • Java
    18篇
  • 算法
    24篇
  • 数据结构
    5篇
  • linux
    21篇
  • maven
    3篇
  • 数据库
    8篇
  • git
    6篇
  • 工具
    22篇
  • shell
    2篇
  • 代码笔记
    6篇
  • spring
    8篇
  • 单元测试
    1篇
  • 编程思想
    3篇
  • rpc
    1篇
  • 工作笔记
    1篇
兴趣领域 设置
  • 大数据
    mysqlredis
  • 后端
    spring架构
  • 服务器
    linux
创作活动更多

AI大模型如何赋能电商行业,引领变革?

如何使用AI技术实现购物推荐、会员分类、商品定价等方面的创新应用?如何运用AI技术提高电商平台的销售效率和用户体验呢?欢迎分享您的看法

186人参与 去创作
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

Java编程中一些奇怪的问题及其解决方案

服务端开发遇到一个奇怪问题,使用swagger和前端进行交互时,发现接口的入参对象,在swagger上变成了另一个对象,两个类中的成员变量使用了@ApiModelProperty修饰。原因是@ApiModel修饰这两个类是,取得名字一样,或者都没有使用@ApiModel注解修饰,默认给它们一样的名字。解决方法:使用@ApiModel修饰这2个类,value设置不同值或不设置,或者只用@ApiModel修饰其中一个类。
原创
发布博客 2023.02.16 ·
512 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Java并发——多线程

创建线程的方法一、继承Thread自定义线程类继承Thread,并重写run方法创建自定义线程类的对象调用对象的start方法二、实现Runnable自定义类实现Runnable接口,并重写run方法创建自定义类对象创建Thread类对象,并传入自定义类对象调用线程类对象的start方法自定义类实现Callable接口,并重写call方法创建实现类对象创建线程池,并传入实现类对象获取执行结果ExecutorService es = Executors.newFixedTh
原创
发布博客 2021.08.19 ·
219 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

rocketMQ的消息介绍、发送方式和消费方式

rocketMQ中消息有以下几种普通消息 顺序消息 延时(定时)消息 事务消息一、普通消息普通消息的发送方式有三种同步发送 异步发送 单向发送1.1 同步发送原理:同步发送是指消息发送方发出一条消息后,会在收到服务端同步响应之后才发下一条消息的通讯方式。应用场景:此种方式应用场景非常广泛,例如重要通知邮件、报名短信通知、营销短信系统等。1.2 异步发送原理异步发送是指发送方发出一条消息后,不等服务端返回响应,接着发送下一条消息的通讯方式。发送消息时需要实现异步发送回
原创
发布博客 2021.08.18 ·
5704 阅读 ·
0 点赞 ·
0 评论 ·
2 收藏

spring事务传播级别

spring有7种事务传播级别(传播行为),分别是public enum Propagation { REQUIRED(0), SUPPORTS(1), MANDATORY(2), REQUIRES_NEW(3), NOT_SUPPORTED(4), NEVER(5), NESTED(6);}下面3篇文章讲解了7种传播级别的含义,并通过代码演示了在外部方法有无事务时,调用不同传播级别修饰的方法,遇到异常时事务的回滚情况。还部分讲述了不同传播
原创
发布博客 2021.08.14 ·
223 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

ElasticSearch学习笔记

es vs solrSolr利用zookeeper进行分布式管理,而es自身带有分布式协调管理功能solr支持多个格式的数据,比如json、xml、csv等,而es只支持json格式solr查询快,但是更新索引慢(即插入删除慢),用于电商等查询多的应用;es建索引快,即实时性查询快ELK: ElasticSearch, LogStash, Kibanaes默认端口:9200kibana默认端口:5601核心概念索引(index):相当于关系型数据库中的数据库类型(type):相当于
原创
发布博客 2021.07.25 ·
166 阅读 ·
1 点赞 ·
1 评论 ·
0 收藏

MyBatis基础

事务管理器jdbc:使用jdbc的提交和回滚managed数据源类型pooledunpooledjdnixml配置文件中的元素,必须按照以下顺序书写,否则报错properties先读取properties中的属性,然后读取resource文件中的属性,遇到同名属性,后读取的属性会覆盖前面读取的属性。所以当properties和resource文件中有同名属性时,resource文件中属性起作用。settingstypeAliases使用typeAlias自定义类型的别名
原创
发布博客 2021.06.26 ·
120 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

redis——主从复制和哨兵模式

redis集群,配置至少一主二从,或是一主多重。每个server默认是主节点(master/leader),从节点(slave/follower)需要专门配置。数据复制是单向的,只能从主节点复制到从节点。一般每个server,不论机器本身内存多少,redis内存不要超过20G。通过下述命令可以查看主从信息>info replication单机多配置文件模拟集群时,需要修改下述信息端口号(port) pid文件(pidfile) rdb文件名(dbfilename) 日志文件
原创
发布博客 2021.05.06 ·
158 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

redis——配置参数、持久化、订阅

redis配置文件中的参数config get requirepass #查看配置文件中的密码属性,默认密码是空,即不需要密码config set requirepass abc123 #设置配置文件中的密码属性,设置为abc123。设置密码后必须先认证才能执行命令,否则任何命令都没有权限auth xxx #输入密码登录config get dir #查看redis的目录save #保存配置文件maxmemory-policy noeviction #内存达到上限后的处理策略,一共有6种1
原创
发布博客 2021.05.06 ·
189 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

redis——事务、监视、模版

一、redis事务multi:开启事务exec:提交执行事务discard:取消事务redis的事务不具有原子性,即一个事务中的多个命令,可能部分成功、部分失败。编译异常:命令都不会执行运行异常:正确命令会执行,错误命令不执行二、redis监视redis使用watch key命令监视一个key,实现乐观锁。监视时获取key的版本号,提交事务时,如果发现key的被其他线程修改,那么当前事务执行失败。#A客户端的线程watch key #监视一个keymulti…… #...
原创
发布博客 2021.04.18 ·
192 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

redis-特殊数据类型及其命令

redis除了五种基本数据类型,还有三种特殊数据类型,分别是geospatial:存储、查询地理位置信息 hyperloglog bitmaps一、geospatialgeoadd china:city 116 39 beijing 137 32 shanghai #在指定key中添加经度、纬度及其对应的位置,可以同时添加多个geopos china:city beijng #返回指定位置的经纬度geodist china:city beijiing shanghai km #返回两个位
原创
发布博客 2021.04.11 ·
152 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

redis——基本数据类型及其命令

一、stringappend key "hello" #追加字符串到key末尾,不存在则相当于setstrlen key #返回key内容的长度incr key #key中数值增1decr key #key中数值减1incrby key 10 #key中数值增加10,相当于设置步长decrby key 5 #key中数值减5,相当于设置步长getrange key 0 3 #返回[0,3]字符串,长度是4getrange key 0 -1 #返回全部,相当于get keyset...
原创
发布博客 2021.04.04 ·
119 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

NoSql基础

NoSql是not noly sql的缩写,泛指非关系型数据库。包括四大类,分别是key-value类型的数据库,比如redis、memcache 列数据库,比如hbase 图形数据库,比如neo4j 文档型数据库,比如oss以上
原创
发布博客 2021.02.21 ·
182 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

redis基础

redis是remote dictionary server的缩写,是一种key-value类型的NOSql数据库。redis官方数据显示,redis可以实现11万/秒的读取和8万/秒的写入。redis-benchmark:redis自带的性能测试工具。redis默认有16个数据库,序号分别是0-15。默认使用0号数据库。每个数据库中的数据是相互隔离的。select 1: 切换到1号数据库。 dbsize:查看当前数据库中已经存储数据的数量 keys *: 查看当前数据库中所有的key
原创
发布博客 2021.02.21 ·
128 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

设计模式

设计模式常见的七大原则单一职责原则 接口隔离原则 依赖倒转(倒置)原则 里氏替换原则 开闭原则(ocp) 迪米特法则 合成复用原则以上
原创
发布博客 2021.02.13 ·
107 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Java中使用注解校验参数

一、参数校验的注解Java中参数校验的注解来自三方面,分别是javax.validation:validation-api,对应包javax.validation.constraints org.springframework:spring-context,对应包org.springframework.validation org.hibernate:hibernate-validator,对应包org.hibernate.validator.constraints1.啊validatio
原创
发布博客 2021.02.09 ·
10038 阅读 ·
5 点赞 ·
0 评论 ·
40 收藏

工具篇:mysql(六)——索引

使用explain查看sql的执行计划,包括使用到的索引explain sql的结果包括以下几列,id:select选择标志符,这是select的查询序号。表示sql执行顺序,按照序号从大到小的顺序执行;序号相同时,按照展示顺序从上往下执行。 select_type:表示select查询的类型, (1) SIMPLE(简单SELECT,不使用UNION或子查询等) (2) PRIMARY(子查询中最外层查询,查询中若包含任何复杂的子部分,最外层的select被标记为PRIMARY) (...
原创
发布博客 2021.06.25 ·
165 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

工具篇:mysql(五)——查询中的and和or

在sql查询中and与or混合使用时,or的优先级低于and,即or前面的多个and条件相当于带有括号,or后面的多个and条件也相当于带有括号,or前后的条件是并列关系。如果需要单个条件的或,那么需要使用括号改变优先级。比如对于如下表create table test(id bigint not null auto_increment primary key,name varchar(30) not null default '',gender tinyint not null def
原创
发布博客 2020.12.26 ·
1057 阅读 ·
1 点赞 ·
0 评论 ·
1 收藏

数据结构——红黑树

红黑树是一种含有红黑结点并能自平衡的二叉查找树。具有如下性质每个节点要么是黑色,要么是红色。 根节点是黑色。 每个叶子节点(NIL)是黑色。 每个红色结点的两个子结点一定都是黑色。 任意一结点到每个叶子结点的路径都包含数量相同的黑结点。根据性质5,可以推导出:如果一个结点存在黑子结点,那么该结点肯定有两个子结点。红黑树并不是一个完美平衡二叉查找树,根结点的左子树和右子树可以高度不同,但左子树和右子树的黑结点的层数是相等的,也即任意一个结点到到每个叶子结点的路径都包含数量相同的黑结点(性质5
原创
发布博客 2020.10.07 ·
294 阅读 ·
0 点赞 ·
1 评论 ·
0 收藏

Java虚拟机——运行时数据区域

根据《Java虚拟机规范》的规定,Java虚拟机管理的内存区域,包括以下五个运行时数据区域:程序计数器 Java虚拟机栈 本地方法栈 Java堆 方法区其中,线程隔离(线程私有)的区域包括程序计数器、Java虚拟机栈和本地方法栈,它们的生命周期与线程相同;线程共享的区域包括Java堆和方法区。程序计数器一块较小的内存区域,可以看作是当前线程执行字节码的行号指示器。如果线程执行Java方法,那么计数器记录正在执行的虚拟机字节码指令的地址;如果执行本地方法,计数器值是空。唯一一个在《J
原创
发布博客 2020.10.06 ·
144 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

CPU缓存

缓存又叫高速缓冲存储器,其作用在于缓解主存速度慢、跟不上CPU读写速度要求的矛盾。缓存的实现原理,是把CPU最近最可能用到的少量信息(数据或指令)从主存复制到CACHE中,当CPU下次再用这些信息时,它就不必访问慢速的主存,而直接从快速的CACHE中得到,从而提高了得到这些信息的速度,使CPU有更高的运行效率。缓存的工作原理:是当CPU要读取一个数据时,首先从缓存中查找,如果找到就立即读取并送给CPU处理;如果没有找到,就用相对慢的速度从内存中读取并送给CPU处理,同时把这个数据所在的数据块调入缓存
原创
发布博客 2020.10.04 ·
307 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏
加载更多