- 博客(27)
- 资源 (8)
- 收藏
- 关注
原创 Spring基础-二
spring 依赖注入的方式set方式单例可以解决循环依赖问题<bean class="com.Car" id="car" > <property name="name" value="byd"></property></bean>构造器方式无需写大量的set, get方法<bean class="com.Car" id="car" > <constructor-arg value="byd"></c
2022-02-08 11:21:18 608
原创 MySQL的复制原理以及流程
MySQL的复制原理以及流程主从复制:将主数据库中的DDL和DML操作通过二进制日志(BINLOG)传输到从数据库上,然后将这些日志重新执行(重做);从而使得从数据库的数据与主数据库保持一致。主从复制的作用:主数据库出现问题,可以切换到从数据库。可以进行数据库层面的读写分离。可以在从数据库上进行日常备份。MySQL主从复制解决的问题数据分布:随意开始或停止复制,并在不同地理位置分布数据备份负载均衡:降低单个服务器的压力高可用和故障切换:帮助应用程序避免单点失败升级测试:可以用更高
2022-02-08 11:07:30 361
原创 Redis最全资料
Redis的单线程和高性能 Redis是单线程吗?Redis 的单线程主要是指 Redis 的网络 IO 和键值对读写是由一个线程来完成的,这也是 Redis 对外 提供键值存储服务的主要流程。但 Redis 的其他功能,比如持久化、异步删除、集群数据同步等,其实是由额外的线程执行的。Redis 单线程为什么还能这么快?因为它所有的数据都在内存中,所有的运算都是内存级别的运算,而且单线程避免了多线程的切换性 能损耗问题。正因为 Redis 是单线程,所以要小心使用 Redis 指令,对于那些耗时的.
2022-01-03 14:34:35 705
原创 YYYY引发的惨案
public class DateTest {public static void main(String[] args) {Calendar calendar = Calendar.getInstance();calendar.set(2019, Calendar.AUGUST, 31);Date strDate = calendar.getTime();DateFormat formatUpperCase = new SimpleDateFormat(“yyyy-MM-dd”);System
2021-12-31 10:33:37 189
原创 远程桌面复制粘贴异常解决方案--rdpclip.exe
远程桌面复制粘贴异常解决方案打开资源管理器,在进程列关闭rdpclip.exe进程:2. win + R 调出命令窗口,执行rdpclip.exe即可。3.如何还解决不了?大概是服务端ClipBook服务没启动导致的;2、找到ClipBook服务,双击点击,启动即可...
2021-12-30 16:13:48 3171
原创 spring基础
一、配置Bean的作用域对象二、往IOC容器中添加Bean的方式通过@CompentScan +@Controller @Service @Respository @compent( 针对我们自己写的组件可以通过该方式来进行加载到容器中)通过@Bean的方式来导入组件(适用于导入第三方组件的类)通过@Import来导入组件 (导入组件的id为全类名路径)//3.1通过@Import基本用法来导入组件 (导入组件的id为全类名路径)@Configuration@Import(value =
2021-11-15 17:52:36 392
原创 Innodb引擎SQL执行的BufferPool缓存机制
Innodb引擎SQL执行的BufferPool缓存机制问题1:为什么Mysql不能直接更新磁盘上的数据而且设置这么一套复杂的机制来执行SQL了?每来一个请求就直接对磁盘文件进行随机读写,然后更新磁盘文件里的数据性能可能相当差。因为磁盘随机读写的性能是非常差的,所以直接更新磁盘文件是不能让数据库抗住很高并发的。Mysql这套机制看起来复杂,但它可以保证每个更新请求都是更新内存BufferPool,然后顺序写日志文件,同时还能保证各种异常情况下的数据一致性。更新内存的性能是极高的,然后顺序写磁盘上
2021-10-24 11:39:57 127
原创 Mysql事务及MVCC机制
事务概念及其ACID属性事务:由一组SQL语句组成的逻辑处理单元属性:原子性(Atomicity) :事务是一个原子操作单元,其对数据的修改,要么全都执行,要么全都不执行。一致性(Consistent) :在事务开始和完成时,数据都必须保持一则都必须应用于事务的修改,以保持数据的完整性。隔离性(Isolation) :数据库系统提供一定的隔离机制,保证事务在独立环境执行。这意味着事务处理过程中的中间状态对外部是不可见持久性(Durable) :事务完成之后,它对于数据的修改是永久性的并发事
2021-10-24 11:35:01 150
原创 mysql优化
MYSQL 优化1.count(*)查询比较1.1 字段有索引效率:count(*)≈count(1)>count(字段)>count(主键 id)//字段有索引,count(字段)统计走二级索引,二级索引存储数据比主键索引少,所以count(字段)>count(主键 id)1.2 字段无索引效率:count(*)≈count(1)>count(主键 id)>count(字段)//字段没有索引count(字段)统计走不了索引,count(主键 id)还可以走主键
2021-10-21 17:15:10 161
原创 Explain工具介绍
Explain工具介绍使用EXPLAIN关键字可以模拟优化器执行SQL语句,分析你的查询语句或是结构的性能瓶颈在 select 语句之前增加 explain 关键字,MySQL 会在查询上设置一个标记,执行查询会返回执行计划的信息,而不是执行这条SQL注意:如果 from 中包含子查询,仍会执行该子查询,将结果放入临时表中explain中的列接下来我们将展示 explain 中每个列的信息。1. id列id列的编号是 select 的序列号,有几个 select 就有几个id,并且id的顺序
2021-10-21 14:25:55 203
原创 深入理解MYSQL索引数据结构
深入理解MYSQL索引数据结构索引是帮助MYSQL高效获取数据的*排好序*的数据结构一、索引的数据结构1.1 二叉树1.2 Hash1.3 红黑树1.4 B-Tree1.5 B+Tree二、MYSQL 存储引擎2.1 MyISAM 存储引擎索引实现2.2 InnoDB 存储引擎索引实现2.2.1 InnoDB的主键索引2.2.2 InnoDB 的非主键索引3 联合索引4.索引下推(Index Condition Pushdown,ICP), like KK%其实就是用到了索引下推优化4.1 什么是索引下推?
2021-09-28 16:42:16 106
原创 mysql drop delete truncate区别
drop:删除表结构和数据truncate:清空表全部数据,且自增数重新开始delete:清理表部分数据,且自增数保持当前值速度:drop>truncate>delete
2020-06-11 15:19:56 109
原创 mysql innodb引擎的特性
1.支持事务对于InnoDB每一条SQL语言都默认封装成事务,自动提交,这样会影响速度,所以最好把多条SQL语言放在开启事务和提交事务(commit)之间,组成一个事务;2.支持行级别锁在使用更新(for update)的时候,在明确使用主键或者索引的时候才会是行锁,否则就是表锁。3.支持外键4.聚集索引1.如果声明了主键(primary key),则这个列会被做为聚集索引。2.如果没有声明主键,则会用一个唯一且不为空的索引列做为主键,成为此表的聚集索引。3.上面二个条件都不满足,InnoD
2020-06-11 14:39:05 342
转载 Java常用非对称加密算法-RSA
Java常用非对称加密算法-RSApackage com.example.demo;import javax.crypto.Cipher;import java.security.*;import java.security.spec.PKCS8EncodedKeySpec;import java.security.spec.X509EncodedKeySpec;import java.util.Base64;/** * RSA非对称加密算法工具类 */public class R
2020-06-10 15:03:48 226 2
原创 git 撤销已经push的记录
git 撤销已经push的记录git loggit reset id 本地仓库回退成功git push -f 强行推到远程仓库
2020-06-08 15:03:50 2138
原创 git 撤销commit 未push的记录
我们使用git常常会出现提交错误信息的情况,这样push到远程仓库会有很大隐患,所以此次提供将commit到本地仓库且未push到远程仓库的记录的撤销,还原为指定版本1.首先查看日志,当前为远程仓库最新版本 第一次提交已经push 到远程仓库了 , 第二次提交,未push到远程仓库2.将第二次提交记录撤销,即执行 git reset id id是上图第一次提交commit后面的那一串字符3.再次查看 git log ,已经回退到上一个版本了4.git reset id 可以回退到任意指
2020-05-21 10:03:53 753
原创 SpringMVC与Struts2区别
一、框架机制1、Struts2采用Filter(StrutsPrepareAndExecuteFilter)实现,SpringMVC(DispatcherServlet)则采用Servlet实现。2、Filter在容器启动之后即初始化;服务停止以后坠毁,晚于Servlet。Servlet在是在调用时初始化,先于Filter调用,服务停止后销毁。二、拦截机制1、Struts2a、...
2018-10-24 15:31:29 102
原创 ssh整合问题
Exception sending context initialized event to listener instance of class org.springframework.web.context.ContextLoaderListener org.springframework.beans.factory.BeanCreationException: Error creating
2016-11-08 16:01:01 164
原创 ssh整合问题
关于The absolute uri: http://java.sun.com/jstl/core_rt cannot be resolved in either web.xml or the jar files deployed with this application解决!将jstl.jar和standard.jar包导入工程后,运行页面依然存在以上错误,后来将这两个jar包直接拷贝到工程的l
2016-11-08 15:58:01 161
原创 struts2拦截器
1.使用拦截器的顺序1.确保引入xwork-core-2.3.24.1.jar 2.定义拦截器,自己创建的.java文件 3.注册拦截器和引用拦截器,在struts.xml中2.默认拦截器栈*.在没有自定义拦截器时,默认拦截自动拦截,无需手动显示的引用<interceptor-stack name="defaultStack"><interceptor-ref name="exception"/
2016-08-25 10:34:14 194
原创 Java Web中的Action、Dao、Service、Model学习笔记
SSH整合1.Action层1.Action是一个控制器2.引用对应的Service层,在这里结合Struts的配置文件,跳转到指定的页面,当然也能接受页面传递的请求数据,也可以做些计算处理2.Service层1.做相应的业务逻辑处理2.引用对应的Dao数据库操作,在这里可以编写自己需要的代码(比如简单的判断)3.model层 1. modle层就是对应的数据库表的实体类。 2. 实体对象作用
2016-08-23 22:17:53 1941
原创 struts2的手动上传详细讲解
1. jar包的引入:在lib文件夹下引入commons.io-2.2.jar和commons-fileupload-1.3.1.jar两个JAR包,版本可以根据自己的需要自行选择 2.上传的JSP页面form表单上传必需的两个属性method=”post”,enctype=”multipart/form-data”, enctype=”multipart/form-data”:以二进制的数据格
2016-08-23 10:02:58 244
原创 struts下载文件时的编码错误,及解决方案
struts下载文件时的编码错误,及解决方案小编初学者,谢谢typeException reportmessageException occurred during processing request: Can not find a java.io.InputStream with the name [downloadFile] in the invocation stack. Check the
2016-08-22 10:24:27 299
jd-gui-win-1.6.3.zip
2019-08-16
Git - Coding 更改更改同文件,push时出现版本冲突演示及解决办法复件.enex
2016-12-24
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人