自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(28)
  • 收藏
  • 关注

原创 Nginx基础

nginx常用版本主要分为4大阵营开源版本是最小的版本,只有一些基本功能,好处是开源免费。后面的都加的有个自己的功能插件,但是收费。我们学习阶段使用开源版本就行。

2024-08-11 16:07:15 791

原创 MySQL基础

用户自定义变量通常以一个”@“开始,作用域只针对于当前会话有效。创建变量和更新变量SET @<变量名>=<值>;SET @<变量名>:=<值>;SELECT @<变量名>:=<值>;查看变量值SELECT @<变量名>;删除变量#删除变量只需要给变量设置为NULL值就行SET @<变量名>=NULL;CREATE FUNCTION <函数名>([<参数列表>]) RETURNS <返回值类型> [<characteristics>]BEGIN#其它计算或SQL操作...

2024-05-20 08:59:13 2403

原创 Spring-容器的扩展

BeanPostProcessor 是spring提供的一个用于扩展的接口,spring中的bean都会被应用到BeanPostProcessor 中,可以在实现BeanPostProcessor 来扩展需要的功能。

2024-03-27 08:58:30 719 2

原创 RabbitMQ基础

MQ(Message queue消息队列),从字面意思来看,MQ本质是个队列,遵循FIFO(先入先出),只不过这个队列中存放的内容是message而已,MQ还是一种跨进程的通信机制,用于上下游传递消息,在互联网架构中,MQ是一种非常常见的上下游“逻辑解耦+物理解耦”的消息通信服务。使用MQ之后,消息发送上游只需要依赖MQ,不用依赖其它服务。流量削峰举个例子,如果有个订单系统每秒最多能处理一万次订单请求,这个处理能力应付正常的时段时绰绰有余。但是在高峰期,可能每秒有两万多个请求同时发来,这个我们的订单系统

2024-03-18 23:07:02 1814 1

原创 Spring-bean的生命周期

需要注意的时,如果我们替换了默认的DefaultLifecycleProcessor,那么实现SmartLifecycle和Lifecycle的接口的bean可能不会被调用了,除非我们自定义的LifecycleProcessor实现类有类似DefaultLifecycleProcessor的逻辑。需要注意,start()和stop()方法要想被调用,必须手动调用容器的start()和close()方法,这是不智能的,大部分情况下我们希望这些方法能被自动调用。方法被正确的调用,并且执行顺序也正确。

2024-01-16 23:07:57 1424

原创 Spring-方法注入

这在BeanTwo为“singleton”时很好用,但是,当BeanTwo为“prototype”时,我们希望每次获取BeanTwo 时都是不同的对象。属性的依赖注入在bean初始化时就已经完成了,每次在BeanOne中获取的BeanTwo都是相同的,如何实现这种功能,可以使用Spring提供的方法注入。不再使用属性依赖的方式获取BeanTwo,而是通过方法获取BeanTwo类型,通过@Lookup注解让Spring代理这个方法,每次调用该方法,就会从容器中获取一次方法返回值类型的bean。

2023-08-25 14:50:00 69

原创 ApplicationContextAware接口

ApplicationContextAware 接口是 Spring 框架提供的一个接口,可以用于在自定义的 Bean 中获取对应的 ApplicationContext 对象。它是一个回调接口,当 Bean 被注入 ApplicationContext 时,Spring 容器会自动调用该接口的方法,将 ApplicationContext 对象传递给 Bean。

2023-08-02 20:23:44 128

原创 XXL-Job

XXL-Job是一个轻量级分布式任务调度平台,其核心设计目标是开发迅速、学习简单、轻量级、易扩展。调度中心和执行器。

2023-07-30 20:47:24 417

原创 JUC基础

JUC就是java.util.concurrent工具包的简称。这是一个处理线程的工具包,JDK1.5开始出现。用户线程和守护线程调用setDaemon(true)方法,在条用start()方法之前调用;System . out . println("用户线程开始------");i < 100;i ++) System . out . println("守护线程:" + i);} , "守护线程");//设置为守护线程 domean . setDaemon(true);

2023-06-15 23:23:50 101

原创 Java基础-多线程、Lambda表达式、Stream流

在了解线程之前,要先理解程序和进程的概念。程序:程序是一组指令的集合,是静态的,比如我们安装的软件,在没有运行时的状态。进程:进程是程序动态执行的过程,如运行中的软件。程序是静态的,而进程是动态的。进程也是资源分配的基本单位,系统在运行时会为每个进程分配不同的内存区域。线程:进程又可进一步细化为线程,一个进程至少有一个主线程。线程作为调度和执行的基本单位,每个线程拥有独立的运行栈和程序计数器,线程切换的开销小。

2023-06-06 11:18:11 497

原创 SpringBoot连接阿里云Redis集群遇到的问题

在redis集群中,每个redis-server会使用两个tcp端口,一个端口提供给客户端连接,另一个端口是集群中节点之间传送消息,两个端口之间相差10000。比如你开放了6379端口,还要再开放16379端口,两个端口都要开,否则无法构建集群。这个也是很坑的一个点,我是在一个服务器中开启多个redis-server进程来组成集群,不配置这个会在使用springboot连接redis集群时一直连接内网IP。配置文件中的bind要注释掉,不然bind默认绑定127.0.0.1,只能本机访问。

2023-05-09 14:01:11 301

原创 IDEA常用快捷键

文章目录通用型提高编写速度查看搜索和替换调整格式通用型快捷键说明ctrl+c复制ctrl+v粘贴ctrl+x剪切ctrl+z撤销上一步操作ctrl+shift+z反撤销ctrl+s保存ctrl+a全选提高编写速度快捷键说明alt+enter智能提示ctrl+alt+t使用XX块环绕alt+insert调出生成getter/setter/构造器等结构ctrl+alt+v自动生成返回值

2023-04-30 11:14:08 217

原创 Redis基础

什么是NoSQL数据库NoSQL(NoSQL = Not Only SQL),意即“不仅仅是SQL”,泛指非关系型数据库。NoSQL不依赖业务逻辑方式存储,而是以简单的Key-value模式存储。因此大大的增加了数据库的扩展能力。不遵循SQL标准。不支持ACID(事务的原子性、一致性、持久性、隔离性)远超SQL的性能。对数据高并发的读写海量数据的读写对数据高可扩展性需要事务支持基于SQL的结构化查询存储,处理复杂的关系,需要即时查询Redis介绍。

2023-04-30 09:14:41 1001

原创 Shiro学习笔记

Apache Shiro是一个功能强大且易于使用的Java安全(权限)框架。Shiro的主要功能有:认证登录、授权(权限管理)、加密、会话管理。除此之外,还支持缓存、Web等功能。支持移动应用程序、Web应用程序和企业应用程序在实际开发中,数据库存储的密码都是加密后的,而从前台传来的密码是未加密的,这时候,认证就会不成功,因为未加密的密码和加密的密码是不同的,默认的认证方式是直接比对,所以是不能成功认证的,这时就需要我们自定义认证的逻辑了(将前台传来的密码加密后再比对)。要自定义认证的逻辑。

2023-01-24 18:23:33 175

原创 Linux学习笔记

Linux学习笔记,简单、入门

2022-12-22 14:49:42 1288

原创 Git学习

git是一个免费的、开源的分布式版本控制系统,可以快速高效地处理从小型到大型的各种项目。git易于学习,占用空间小,性能极快。它具有廉价的本地库,方便的暂存区域和多个工作流分支等特性。(2)什么是版本控制版本控制是一种记录文件内容变化,以便将来查阅特定版本修订情况的系统。版本控制其实最重要的是可以记录文件修改历史记录,从而让用户能够查看历史版本,方便版本切换。(3)集中式和分布式的区别集中式:版本库是集中的存放于中央服务器的。

2022-12-17 18:04:24 1017

原创 SpringBoot学习笔记

学习过ssm我们都知道写配置文件的折磨,项目还没开始,就要写许多的配置文件,十分的麻烦,并且如果我们要整合别的框架也是要在配置文件写很多麻烦的配置。而springboot的出现就是解决这个问题,springboot基于spring和springmvc开发,使用“约定大于配置”的理念,简单来说就是,对于各种常见场景的配置springboot已经配置过了,不需要我们在配置各种什么解析器,bean之类的,创建springboot后就可以编写业务代码了。在学习ssm时,创建web程序需要先创建web.xml、sp

2022-11-27 16:46:04 365

原创 SSM整合

整合SSM框架使用一个简单的Web项目作为例子。项目结构如下所示:首先将所有需要的的jar包导入项目其中mybatis-spring包就是我们整合spring和mybatis的依赖包。这个项目只使用这一个表为数据库表创建一个对应的实体类在pojo包下创建如下类持久层持久层交给mybatis管理1创建mybatis核心配置文件mybatis.xml数据源具体配置信息放在了外部配置文件db.properties。2在mapper包下创建一个接口3.为接口创建mapper文件StudentMap

2022-10-17 20:46:50 214 1

原创 SpringMVC学习笔记下篇

restful是一种设计风格,它与我们平常web请求风格主要有如下两种区别:1.项目结构如下2.配置web.xml3.在resources目录下创建springmvc的配置文件springmvc.xml发送RESTFUL风格的请求GET请求1.在webapp/WEB-INF/templates创建一个test.html,在里边添加一个标签用来发送GET请求2.在springmvc配置文件中添加test.html的映射3.创建TestController,在里面添加一个方法映射GET请求

2022-10-16 22:20:54 197

原创 MyBatis学习笔记

mybatis入门

2022-10-01 21:02:17 399

原创 SpringMVC学习笔记上篇

导入spring-webmvc模块和thymeleaf与spring的整合包,thymeleaf是视图模板引擎,模板引擎可以使用户界面与业务数据分离,它可以生成特定格式的文档,用于网站的模板引擎就会生成一个标准的html文档,学过javaweb的可能知道jsp,jsp也是一种模板引擎,thymeleaf的功能和jsp类似。在上述例子中,web请求中携带的参数都很少,如果请求中携带大量参数我们就需要在处理请求的方法中也写上很多的参数,非常的不美观而且不方便管理,这时就可以创建一个类,

2022-09-10 11:03:20 353

原创 Spring学习笔记——事务篇

事务是数据库操作的最基本的单元,一个事务可以包含好几个操作,这些操作在逻辑上看做是一组操作,要么都成功要么都失败。例如最经典的转账事例,一次转账就是一个事务,包括两个操作,一个人少钱,另一个人增加钱,这两个操作,要么都成功要么都失败,不可以一个人少钱另一个人不增加,也不能一个人不少钱,另一个人凭空增加钱。原子性:事务中包含的各项操作在一次执行过程中,要么都成功,要么都失败。一致性:事务的执行不能破坏数据库数据的完整性和一致性,一个事务在执行之前和执行之后数据库都必须处于一致性。

2022-08-21 15:37:28 320 1

原创 Spring学习笔记——JdbcTemplate篇

JdbcTemplate是spring提供的一个用来操纵数据库的类,它对底层的JDBC操作进行了封装,简化了JDBC的操作。

2022-08-17 17:58:23 579

原创 Spring学习笔记——AOP篇

除了spring的几个基础包外还需要导入aspectjweaver,下面是maven导入的配置信息常用名词名词解释连接点可以被增强的方法切入点实际被增强的方法。切入点就是被增强的连接点通知增强的逻辑实现切面通知和切入点的组合常用的通知类型类型解释前置通知在被增强方法之前执行的逻辑部分后置通知在被增强方法之后执行的逻辑部分,如果被增强方法出现异常就不会执行了环绕通知在被增强方法之前和之后执行的逻辑部分异常通知

2022-08-12 16:03:23 1051

原创 Java动态代理

代理是一种常用的设计模式,它为其他对象提供一种代理以控制对这个对象的访问。通俗来讲就是我们通过代理类来调用委托类的方法,并且我们可以在代理类中加入新的功能。它们之间的关系如下:创建一个接口,用来约束委托类和代理类的方法。创建一个委托类(房东)创建一个代理类(中介)代理类引用了委托类,并且调用委托类的方法上可以增加新的功能。测试静态代理的缺点很明显,如果委托类很多并且委托类有很多方法的话,我们都需要手动的为每一个类每一个方法创建代理,是十分麻烦的,由此引出动态代理,可以很好地解决静态代理的弊端。动

2022-06-12 18:11:49 116

原创 Spring学习笔记——IOC篇

使用spring需要先将我们需要的包导入,需要导入如下包通过maven导入的话只需要导入webmvc包,maven会自动将其他的依赖包导进来创建bean首先需要先创建一个xml配置文件,我创建配置文件为mybean.xml,内容如下:接下来的配置都会在beans标签内配置。然后创建一个Person用来测试。最后在配置文件中就可以配置一个bean了。在beans标签内配置一个bean标签:其中bean标签表示我们要创建一个bean;id属性用来我们标记创建的bean,后面我们可以用id将bea

2022-06-10 19:08:04 572

原创 mysql学习笔记——char和varchar的区别

char和varchar的区别char和varchar是mysql中常用的字符类型,虽然都是存储字符的,但它们还是有许多区别。char:定长,字符串占用固定的长度,不够用空格补齐。varchar:可变长度,占用空间的随字符的长度而变化,但需要用1~2个字节来记录字符串的长度。例如:...

2022-05-17 15:46:02 302

原创 VC++2010express离线安装包

百度网盘分享链接

2022-05-08 23:51:09 1632 1

空空如也

空空如也

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

TA关注的人

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