学习笔记

mysql事务详解

 MySQL 事务主要用于处理操作量大,复杂度高的数据。比如开单,需要添加给订单表增加记录,还需要增加订单的各种相关明细,操作复杂度高,这些操作语句需要构成一个事务。在 MySQL 命令行的默认设置下,事务都是自动提交的,即执行 SQL 语句后就会马上执行 COMMIT 操作。因此要显式地开启一个事务务须使用命令 BEGIN 或 START TRANSACTION,或者执行命令 SET AUTOCOMMIT=0,用来禁止使用当前会话的自动提交。...

详细的漏洞复现:Shellshock CVE-2014-6271 CVE-2014-7169

目录 前言 漏洞原理 利用方式 复现过程 1. 环境准备 (1) 为容器配置固定IP地址 (2) 查看bash版本 2. 本地验证:测试镜像系统是否存在漏洞 3. 远程模拟验证(原理验证) (1) 查看容器apache服务配置 (2) 编辑测试文件 (3) 重启apache服务 (4) 远程测试 4. 遇到的问题 (1) Kali无法开启伪终端-->Ubuntu (2)远程访问需要容器的IP地址-->为容器配置固定IP地址 (3) 镜像未安装vim,且安装出错-->安装需更新源 (4) vim自动创建多层目录下的文件时出错-->需要手动创建好中间路径 ...

SpringCloud学习笔记(2):使用Ribbon负载均衡

简介 Spring Cloud Ribbon是基于Netflix Ribbon实现的一套客户端负载均衡工具,在注册中心对Ribbon客户端进行注册后,Ribbon可以基于某种负载均衡算法,如轮询(默认)、随机、加权轮询、加权随机等自动帮助服务消费者调用接口。 项目介绍 sc-parent,父模块(请参照SpringCloud学习笔记(1):Eureka注册中心) sc-eureka,注册中心(请参照SpringCloud学习笔记(1):Eureka注册中心) sc-provider-random,随机端口的提供者 ...

相同类中方法间调用时日志Aop失效处理

本篇分享的内容是在相同类中方法间调用时Aop失效处理方案,该问题我看有很多文章描述了,不过大多是从事务角度分享的,本篇打算从日志aop方面分享(当然都是aop,失效和处理方案都是一样),以下都是基于springboot演示; 快速定义个日志Appender 快速定义个拦截器和日志注解(aop) 模拟相同类中方法间调用时aop失效 Aop失效处理方案(就两种足够了) 快速定义个日志Appender 日志我还是喜欢log4j,大部分朋友也同样吧,这里lombok与log4j结合来完成我们的日志,如下maven包(最新mvn还是建议去官网找): ...

相同类中方法间调用时日志Aop失效处理

 本篇分享的内容是在相同类中方法间调用时Aop失效处理方案,该问题我看有很多文章描述了,不过大多是从事务角度分享的,本篇打算从日志aop方面分享(当然都是aop,失效和处理方案都是一样),以下都是基于springboot演示;...

线程实现模型

线程实现模型 线程实现模型主要分为:用户级线程模型,内核级线程模型和两级线程模型。他们的区别在于线程与内核线程之间的对应关系。 以下我们将分析这三种线程实现模型的特点: 用户级线程模型 (1)多对一关系 用户级线程模型为多对一关系。即,一个进程中的所有线程对应一个内核线程; (2)处理速度快、移植性强; 线程的创建、调度、同步等操作由应用程序来处理,不需要让CPU从用户态切换到内核态。所以用户级线程模型在速度快,且移植性强; (3)并非真正的并发运行 如果线程IO操作过程中被阻塞,那么用户空间的其他线程都会被阻塞,因为这些线程无法被内核调度。 ...

【MySQL】为什么SQL会这么慢

 建表CREATE TABLE `ts_ab` ( `id` int(11) NOT NULL, `a` int(11) DEFAULT NULL, `b` varchar(20) CHARACTER SET utf8 DEFAULT NULL, PRIMARY KEY (`id`), KEY `ind_b` (`b`) USING BTREE, KEY `ind_a` (`a`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin;...

谈谈这次试用期“被”离职和感悟

人生不如意之事,十之有八九。 在新公司的试用期是9月25号到期,前天中午饭时,部门领导找我谈话,说明了我要离开公司。 缘由 关于这次的试用期未过,我先做一下相对客观的陈述。 自我入职新公司,率属于部门领导管理,技术被大前端组约束,所以交谈中的领导有:大前端组领导、部门领导、部门前端小组组长。 刚入职公司的时候,我的理念和大前端组领导略显不同,他已经将全部的框架封装了一遍,不允许项目组的员工修改他的前端框架,除非确实需要跟他报备,他会修改。对我来说,这从技术自由来讲,完全限制了员工发挥,虽然理念不同,但我也在尽力去做一个堆码工的工作。 ...

网络编程之TCP/IP各层详解

我们将应用层,表示层,会话层并作应用层,从TCP/IP五层协议的角度来阐述每层的由来与功能,搞清楚了每层的主要协议,就理解了整个物联网通信的原理。 首先,用户感知到的只是最上面一层——应用层,自上而下每层都依赖于下一层,所以我们从最下层开始切入,比较好理解。 每层都运行特定的协议,越往上越靠近用户,越往下越靠近硬件。 一、物理层 由来:孤立的计算机之间要一起“玩耍”,就必须接入Internet,即计算机之间必须完成组网。 物理层功能:主要是基于电器特性发送高低电压(电信号),高电压对应数字1,低电压对应数字0。 ...

深入Go的错误处理机制使用

 开篇词程序运行过程中不可避免的发生各种错误,要想让自己的程序保持较高的健壮性,那么异常,错误处理是需要考虑周全的,每个编程语言提供了一套自己的异常错误处理机制,在Go中,你知道了吗?接下来我们一起看看Go的异常错误机制。...

Java中时间API使用详解

目录 Java中时间API使用详解 1. 时区概念 2. 几种常见的时间 3. 时间戳 4. Java中的时间API 5. Java8中新添加的时间API 6. 在东八区的机器上获得美国时间 Java中时间API使用详解 1. 时区概念 国际经度会议(又称国际子午线会议)上,规定将全球划分为24个时区(东、西各12个时区)。规定英国的格林尼治天文台旧址为中时区(零时区)、东1-12区,西1-12区。每个时区横跨经度15度,时间正好是1小时。最后的东、西第12区各跨经度7.5度,以东、西经180度为界。每个时区的中央经线上的时间就是这个时区内统一采用的时间,称为区时,相邻两个时区的时间相差1小时。英国(格林尼治天文台旧址)为本初子午线,即零度经线。 ...

nstanceof运算符与引用变量的强制类型转换

一、instanceof运算符 instanceof是Java语言中的一个二元运算符,它的作用是判断一个引用类型的变量所指向的对象是否是一个类(或接口、抽象类、父类)的实例,即它左边的对象是否是它右边的类的实例该运算符返回boolean类型的数据。 常见的用法为:result=object instanceof class。如果object是clas的一个实例,那么instanceof运算符返回true;如果object不是class的一个实例,或者object是null,那么instanceof运算符返回false。 ...
青岛软件培训

可能你正在寻找一家靠谱的IT培训机构,学习一些专业的软件开发技术,找一份得体的工作。恰巧我们就是一家踏踏实实做教育的IT人才培养机构,我们咨询电话是 0532-85025005,如果你确实对IT感兴趣,我们不妨交流一下。

申请免费试听课程