自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(16)
  • 资源 (1)
  • 收藏
  • 关注

原创 向数据库的所有表插入一个相同的属性

下面一段是向数据库中所有用户表种插入一个相同的属性的SQL语句,在SQL Server数据库下实测运行成功USE 数据库名GO-- 表名变量declare @tablename varchar(50)-- 要执行的sql语句declare @sql varchar(1000)-- !!!!!! -- 定义游标遍历用户表的name列declare cu_adcolumn cursor for select name from sys.tablesopen cu_adcolum

2021-03-22 16:54:36 404

原创 SpringBoot 外部配置方式的优先级

SpringBoot 外部配置优先级根据Externalized Configuration手册,可以得出大致上有这么几种方案可以将配置文件外置命令行指定SpringApplication会默认将命令行选项参数转换为配置信息,命令行指定配置项的优先级最高。例如,启动时命令参数指定:java -jar myproject.jar --server.port = 9000另外、你可以通过setAddCommandLineProperties来禁用SpringApplication.

2021-03-03 15:40:20 441 1

原创 Nginx核心模块与实践配置

Nginx服务搭建与基础演示 nginx官方安装与配置//安装先决条件sudo yum install yum-utils//安装nginxsudo yum install nginx配置nginx默认配置文件路径:# upstream模块upstream starcold {#starcold upstream的名字 hash $remote_addr consistent;#负载均衡算法 # ip地址/域名(采用域名的话使用DNS又可以做一层负载

2020-12-24 17:50:37 237 1

原创 myBatis配置

myBatis配置先上一下demo的结构图1、属性配置构建sessionFactory时传递(优先级高)Properties pro = new Properties();pro.setProperty("jdbc.username", "root");基于resource属性加载或url加载(优先级中)<properties resource="app.properties">基于<property>属性设置(优先级低) <data

2020-08-13 14:25:17 168

原创 Spring MVC原理

SpringMVC运行流程如下图所示:request请求过程:1、调用doDispatch();2、遍历handlerMappings根据request获取一个执行链getHandler();3、遍历handleAdapter 根据handle获取一个handle适配器;4、通过执行链,调用拦截器中的preHandle()方法,进行预处理;5、基于handle适配器去调用handle方法,进行预处理;6、通过执行链,调用拦截器中的postHandle()方法,进行拦截处理

2020-08-09 19:58:06 133

原创 Redis数据库数据结构

Redis核心数据结构一、什么是Redis1、Rdies是一种非关系型的键值对数据库,取出或者插入关联值的时间复杂度为O(1);2、Redis的数据存放在内存中;3、键(key)的类型可以是字符串、整型、浮点型等,且键是唯一的;4、值(val)的类型可以是string、hash、list、set、sorted set等;5、Redis内置了复制,磁盘持久化,LUA脚本,事务,SSL,客户端代理等功能。6、通过Redis烧饼和自动分区提高可用性。二、应用场景1、缓存.

2020-08-03 23:59:49 1134

原创 Spring bean 生命周期

上来先砸一张图!Bean的生命周期只有四个实例化Instantiation、属性赋值Populate、初始化Initialization、销毁Destruction都在doCreate()方法中分别调用createBeanInstatiation()、populateBean()、initializationBean()。源码如下:// 忽略了无关代码protected Object doCreateBean(final String beanName, final RootBe

2020-07-29 16:08:13 113

原创 Java实现一个简单的HashMap

Java实现一个简单的HashMapHash表是一个数组+链表的结构。数组具有遍历快,增删慢的特点。数组在堆中是一块连续的存储空间,遍历时数组的首地址是知道的(首地址=首地址+元素字节数 * 下标),所以遍历快;链表具有增删快,遍历慢的特点。链表中各元素的内存空间是不连续的,一个节点至少包含节点数据与后继节点的引用,所以在插入删除时,只需修改该位置的前驱节点与后继节点即可,所以增删快。Hash表利用数组与链表的特性相结合能够保证在遍历与增删的过程中,如果不产生hash碰撞,仅需一次定位就可完

2020-07-14 16:39:23 705 1

原创 Spring IOC容器的简单实现

IOC:Inverse of Control(控制反转) 将原本在程序中手动创建对象的控制权,交由Spring框架来管理 若要使用某个对象,只需要从 Spring 容器中获取需要使用的对象,不关心对象的创建过程,也就是把创建对象的控制权反转给了Spring框架。Github:https://github.com/starcold/StarColdIOCgithub只有src下的文件和pom.xml文件,代码带有详细的注释,请自取;项目结构目录如下:annotation实现一些需.

2020-07-14 16:12:30 161

原创 简谈缓存穿透、缓存击穿、缓存雪崩及解决方案

缓存穿透描述:用户不断发起请求访问缓存和数据库中都没有的数据,如发起为id为负的数据或id不存在的数据。导致每一次请求都查询数据库。这时的用户很可能是攻击者,攻击会导致数据库压力过大。解决方案:1、接口层增加校验,如用户鉴权校验,并对id做基础校验,如id<=0的直接拦截;2、从缓存取不到的数据,在数据库中也没有取到,可以给攻击请求所访问的key设置一个null值,并设置一个较短的有效时间,(设置太长会导致正常情况也没法使用)。这样可以防止攻击用户反复用同一个id暴力攻击。.

2020-06-08 11:01:16 120

转载 Spring源码--IOC容器实现(6)--Bean依赖注入

前言Github:https://github.com/yihonglei/thinking-in-spring在前面文章中分析了容器初始化过程,建立一个可以使用的容器以及Bean对象的创建过程。1)BeanDefinition的Resource定位2)BeanDefinition的载入和解析...

2020-05-18 20:36:36 125

转载 Spring源码--IOC容器实现(5)--Bean对象的创建

前言Github:https://github.com/yihonglei/thinking-in-spring在前面文章中分析了容器初始化过程,已经建立了一个可以使用的容器。1)BeanDefinition的Resource定位2)BeanDefinition的载入和解析3)BeanDefi...

2020-05-18 20:35:26 177

转载 Spring源码--IOC容器实现(4)--BeanDefinition的注册

前言Github:https://github.com/yihonglei/thinking-in-spring在上一篇文章中,分析了BeanDefinition在IOC容器中载入和解析的过程。BeanDefinition载入和解析在这些动作完成之后,用户定义的BeanDefinition信息已...

2020-05-18 20:31:38 153

转载 Spring源码--IOC容器实现(3)--BeanDefinition的载入和解析

前言Github:https://github.com/yihonglei/thinking-in-springBeanDefinition的载入和解析上文分析了BeanDefiniton的Resource定位过程:Spring源码--IOC容器实现(2)--BeanDefinition的Res...

2020-05-18 20:30:36 96

转载 Spring源码--IOC容器实现(2)--BeanDefinition的Resource定位

前言Github:https://github.com/yihonglei/thinking-in-spring一 IOC容器初始化过程概述    IOC容器初始化是由上文提到的refresh()方法来启动的,这个方法标志着IOC容器正式启动。IOC容器初...

2020-05-18 20:29:04 125

转载 Spring源码--IOC容器实现(1)--IOC容器结构体系

前言Github:https://github.com/yihonglei/thinking-in-spring一 什么是IOC/DI    依赖反转表示的是依赖对象的获得被反转了,也叫做依赖注入(DI)。    如果合作对象...

2020-05-18 20:25:41 126

简单IOC容器demo

参考别人博文,边看边学(基本照着敲)的一个简单IOC容器demo,通过注解的方式实现注入。就0积分吧哈哈哈

2020-07-14

空空如也

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

TA关注的人

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