自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 java-String

1、下载jdeclipse_update_site.zip,解压,将plugins文件下的jd.ide.eclipse_0.1.3.jar和jd.ide.eclipse.win32.x86_0.1.3.jar复制到eclipse安装目录下的plugins里 2、在eclipse里安装,选择help下的安装插件install new soft 或者叫update ……版本不同不一样,自己看哈...

2017-09-26 15:38:52 217

原创 poi结合自定义注解导入导出Excel

poi结合自定义注解导出Excel自定义注解类package tech.tongyu.bct.common.poi;import java.lang.annotation.*;/** * @classname: Excel * @description: Excel注解 * @version: 1.0 **/@Target({ElementType.FIELD})@Retention(RetentionPolicy.RUNTIME)@Documentedpublic @int

2021-09-14 14:45:39 739

原创 mysql误删除数据恢复

检查binlog日志是否开启登录mysql./mysql -u root -p123456执行查询命令 show variables like 'log_bin%';log_bin 的value为ON 说明已开启开启binlog日志使用vi编辑器修改MySQL的my.cnf配置文件vim /etc/my.cnf在my.cnf配置文件中添加如下图的语句 并保存 退出即可重启MySQLservice mysqld restart通过mysq..

2021-05-28 17:13:43 275

原创 AOP切面实现

概念spring用代理类包裹切面,把他们织入到Spring管理的bean中。也就是说代理类伪装成目标类,它会截取对目标类中方法的调用,让调用者对目标类的调用都先变成调用伪装类,伪装类中就先执行了切面,再把调用转发给真正的目标bean。增强逻辑。使用案例package com.lagou.edu.config;import org.aspectj.lang.ProceedingJoinPoint;import org.aspectj.lang.annotation.Around;imp

2021-04-29 17:20:02 167

原创 CGLIB动态代理

概念CGLIB(Code Generation Library)是一个开源项目!是一个强大的,高性能,高质量的Code生成类库,它可以在运行期扩展Java类与实现Java接口。Hibernate用它来实现PO(Persistent Object 持久化对象)字节码的动态生成。CGLIB是一个强大的高性能的代码生成包。它广泛的被许多AOP的框架使用,例如Spring AOP为他们提供方法的interception(拦截)。CGLIB包的底层是通过使用一个小而快的字节码处理框架ASM,来转换字节

2021-04-29 17:07:11 101

原创 JDK动态代理

概念一种常用的涉及模式,为其他对象提供一个代理以控制对某个对象的访问。原方法可以不变,可加入自己的增强逻辑使用案例package service;/** * 动态代理的接口 */public interface ProxyService { public int testProxy();}package service.impl;import service.ProxyService;/** * 需要代理的实际对象 */public class Pr.

2021-04-29 16:53:17 57

原创 java-ThreadLocal

目录基本概念基本属性构造函数常用方法getsetremove常见问题ThreadLocal为什么会发生内存泄漏?实现原理ThreadLocal为什么会内存泄漏应用场景参考文章基本概念线程本地变量,读写线程隔离,操作可变数据互不影响ThreadLocal是多个线程互不影响,所以每个线程存一份变量,是一种空间换时间的思想基本属性ThreadLocalMap提供了一种为ThreadLocal定制的高效实现,并且自带一种基于弱引用的垃...

2021-04-14 16:42:10 70

原创 java-HashSet

基本概念public class HashSet<E> extends AbstractSet<E> implements Set<E>, Cloneable, java.io.Serializable基本属性 // 底层用HashMap存储数据 private transient HashMap<E,Object> map; // HashMap的value部分 在map操作时补一下value的位置

2021-04-13 14:08:46 78

原创 java-TreeMap

目录基本概念基本属性构造函数无参构造有参比较器有参map有参有序map常用方法putputAllget总结参考文章基本概念红黑树实现实现NavigableMap 接口 具有排序功能public class TreeMap<K,V> extends AbstractMap<K,V> implements NavigableMap<K,V>, Cloneable, java.io.S..

2021-04-13 11:22:06 88

原创 java-HashTable

目录基本概念基本属性构造函数无参构造有初始化长度构造有初始化长度以及负载因子构造常用方法put(K key, V value)addEntryremoveget总结基本概念底层是Mappublic class Hashtable<K,V> extends Dictionary<K,V> implements Map<K,V>, Cloneable, java.io.Serializable.

2021-04-13 10:38:02 93

原创 java-LinkedList

基本概念public class LinkedList<E> extends AbstractSequentialList<E> implements List<E>, Deque<E>, Cloneable, java.io.Serializable底层是个双向链表基本属性// 链表中的数据个数transient int size = 0;// 链表头部节点transient Node<E> first;

2021-04-13 09:21:53 58

原创 java-ArrayList

目录基本概念基本属性构造函数常用方法add(E e)add(int index, E element)remove(int index)remove(Object o)参考文章基本概念public class ArrayList<E> extends AbstractList<E> implements List<E>, RandomAccess, Cloneable, java.io.Serializ..

2021-04-12 18:05:10 62

原创 java-ConcurrentHashMap

基本概念table数组(Node<K,V>[])+单向链表(Node<K,V>[])+红黑树的结构(TreeNode<K,V> )基本属性// node数组最大容量:2^30=1073741824private static final int MAXIMUM_CAPACITY = 1 << 30;// 默认初始值,必须是2的幕数private static final int DEFAULT_CAPACITY = 16;//数组可能最大

2021-04-12 15:21:21 83

原创 java-AQS

目录AQS源码解析基本概念AQS支持的锁的类别存储节点Nodeacquire(int)tryAcquire(arg)addWaiter()acquireQueued独占式锁获取流程release(int):独占锁的释放acquireShared(int)releaseShared()AQS源码解析基本概念AQS是一个基于先进先出(FIFO)等待队列的实现阻塞锁和同步器的框架。AQS通过一个volatile int state变量来保存锁的状态。子.

2021-04-06 22:27:12 97

原创 java-synchronized

目录synchronized关键字基本概念三种使用方式特性原子性可见性有序性可重入性锁实现同步方法同步代码块原理对象实例组成对象头实例数据填充JDK1.6之后JVM对synchronized的优化锁升级偏向锁轻量锁重量级锁自旋锁自适应自旋锁synchronized关键字基本概念synchronized 属于独占式悲观锁,是通过 JVM 隐式实现的,synchronized 只允许同一时刻只有一个线程.

2021-04-05 22:59:03 103

转载 java-ThreadPoolExecutor

目录详解 ThreadPoolExecutor基本概念构造方法线程池任务执行的主要流程,如下图:知识扩展execute() VS submit()线程池的拒绝策略自定义拒绝策略ThreadPoolExecutor 扩展小结详解 ThreadPoolExecutor基本概念线程池是为了避免线程频繁的创建和销毁带来的性能消耗,而建立的一种池化技术,它是把已创建的线程放入“池”中,当有任务来临时就可以重用已有的线程,无需等待创建的过程,这样就可以有效提高程.

2021-04-04 20:21:46 97

转载 java-线程

目录线程的状态有哪些?它是如何工作的?基本概念线程的状态有哪些?它是如何工作的?知识扩展BLOCKED 和 WAITING 的区别start() 和 run() 的区别线程sleep和wait的区别线程优先级线程的常用方法小结线程的状态有哪些?它是如何工作的?基本概念线程(Thread)是并发编程的基础,也是程序执行的最小单元,它依托进程而存在。一个进程中可以包含多个线程,多线程可以共享一块内存空间和一组系统资源,因此线程之间的切换更加节省资源、更加.

2021-04-04 16:46:12 64

原创 java-HashMap

目录HashMap 底层实现原理是什么?JDK8 做了哪些优化?基本概念考点分析知识扩展HashMap 源码分析jdk1.8什么是加载因子?加载因子为什么是 0.75?查询方法新增方法扩容方法死循环分析小结HashMap 底层实现原理是什么?JDK8 做了哪些优化?基本概念在 JDK 1.7 中 HashMap 是以数组加链表的形式组成的,JDK 1.8 之后新增了红黑树的组成结构,当链表大于 8 并且容量大于 64 时,链表结构会转换成红黑树结.

2021-04-04 15:50:01 100

原创 搭建FastDFS图片服务器

1.安装fastdfs安装环境yum install git gcc gcc-c++ make automake vim wget libevent -y 安装gityum install git git clone 项目时出现类似如下错误:fatal: unable to access 'https://github.com/rancher/rancher.git/':Peer reports incompatible or unsupported protocol version.

2020-10-06 20:05:50 186

原创 Centos7搭建MongoDB分片集群

集群要求1.下载安装MongoDB官网下载压缩包https://www.mongodb.com/download-center?jmp=nav#community或者wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-4.1.3.tgz解压缩tar -xzvf mongodb-linux-x86_64-4.1.3.tgzmv mongodb-linux-x86_64-4.1.3.tgz /usr/local/mongo

2020-09-29 16:27:26 868

原创 centos7搭建MHA高可用架构

提示:由于perl-Log-Dispatch和perl-Parallel-ForkManager这两个被依赖包在yum仓库找不到,因此安装epel-release-latest-7.noarch.rpm。在使用时,可能会出现下面异常:Cannotretrieve metalink for repository: epel/x86_64。可以尝试使用/etc/yum.repos.d/epel.repo,然后注释掉mirrorlist,取消注释baseurl。

2020-09-26 17:10:10 934

原创 centos7搭建主从集群rpm方式

1.环境软件版本环境&软件版本虚拟机&VirtualBox6.1.8 r137981 (Qt5.6.2)服务器&CentOS7.1数据库&Mysql5.7.28远程连接&Xshell6远程文件传输&Xftp62.环境架构介绍机器名称IP角色权限master1192.168.33.4主库Master可读写slave1192.168.55.4从库Slave1可

2020-09-26 16:13:17 207

原创 Ehcache 配置文件详解

<diskStore path="java.io.tmpdir"/> <!-- 默认缓存 --> <defaultCache maxEntriesLocalHeap="10000" eternal="false" timeToIdleSeconds="120" timeToLiveSeconds="120" o...

2020-08-09 10:11:19 1009

原创 VirtualBox CentOS7 NAT+Host-Only 网络配置

宿主机 为 win7 64 位系统,虚拟机 为 VitualBox 下的 CentOS 7 系统。本文通过配置虚拟机以 网络地址转换(NAT) + Host-Only 网络连接方式实现和外部互联网及宿主机所在网段主机的通信,其中 网络地址转换(NAT) 网络连接方式是为了确保虚拟机可以连接到外部互联网,Host-Only 网络连接方式是为了确保虚拟机可以和宿主机所在网段主机通信。

2020-07-22 23:27:10 568

原创 zookeeper伪集群模式搭建

概念: 一台服务器运行多个zookeeper实例。注意事项:clientPort端口必须不同 如:server1>2181,server2>2182,server3>2183dataDir和dataLogDir:对应路径需要修改server.X和myid:server.X就是对应data/myid文件中的数字。环境准备下载稳定版本zookeeper:http://zookeeper.apache.org/releases.html上传将zookeeper压缩包zoo

2020-07-14 20:55:57 234

原创 zookeeper单机模式搭建

1.环境基于linux2.下载稳定版本zookeeper:http://zookeeper.apache.org/releases.html3.上传将zookeeper压缩包zookeeper-3.4.14.tar.gz上传到linux4.解压缩tar -zxvf zookeeper-3.4.14.tar.gz5.进入 zookeeper-3.4.14目录,创建data文件夹cd zookeeper-3.4.14mkdir data6.修改配置文件名称cd confmv zoo

2020-07-14 20:20:20 239

原创 mysql,oracle驱动加载

dataSource.setUrl("jdbc:mysql://localhost:3306/springboot");dataSource.setUsername("root");dataSource.setPassword("1111111");dataSource.setDriverClassName("com.mysql.jdbc.Driver");jdbc.drive...

2017-09-26 15:28:49 194

原创 oracle创建用户

oracle创建用户:CREATE USER obsframe IDENTIFIED BY obsframeobsframe default tablespace users temporary tablespace temp;GRANT UNLIMITED TABLESPACE TO obsframe;GRANT CONNECT TO obsframe;GRANT RESOURC...

2017-08-17 15:43:09 87

原创 jdbc直接查询后台

// /**// * 查询列表+总数-扩展// * // * @param// * @return// */// public ListRange query_Testperson_ext(Map map) throws Exception {// ListRange lr = new ListRange();// tr...

2017-08-17 15:41:14 113

原创 blob类型

1.BLOB BLOB全称为二进制大型对象(Binary Large Object)。它用于存储数据库中的大型二进制对象。可存储的最大大小为4G字节 2.CLOB CLOB全称为字符大型对象(Character Large Object)。它与LONG数据类型类似,只不过CLOB用于存储数据库中的大型单字节字符数据块,不支持宽度不等的字符集。可存储的最大...

2017-08-17 15:38:16 5245

原创 多线程概念

Thread和Runnable的区别如果一个类继承Thread,则不适合资源共享。但是如果实现了Runable接口的话,则很容易的实现资源共享。总结:实现Runnable接口比继承Thread类所具有的优势:1):适合多个相同的程序代码的线程去处理同一个资源2):可以避免java中的单继承的限制3):增加程序的健壮性,代码可以被多个线程共享,代码和数据独...

2017-08-17 15:36:11 64

原创 jvm概念

Java程序的跨平台特性主要是指字节码文件可以在任何具有Java虚拟机的计算机或者电子设备上运行,Java虚拟机中的Java解释器负责将字节码文件解释成为特定的机器码进行运行。因此在运行时,Java源程序需要通过编译器编译成为.class文件。众所周知java.exe是Java class文件的执行程序,但实际上java.exe程序只是一个执行的外壳,它会装载jvm.dll(windows下,下皆...

2017-08-17 15:35:24 123

原创 日常笔记

angular.js不能用hidden传值CellRangeAddress c=new CellRangeAddress(0,1,0,0);//(firstRow,lastRow,firstCol,lastCol) 合并单元格document.getElementById("k").value $("#k").val() js,jquery获取id属性的值$("in...

2017-03-12 20:19:56 79

原创 工厂模式

在设计模式中,Factory Method也是比较简单的一个,但应用非常广泛,EJB,RMI,COM,CORBA,Swing中都可以看到此模式的影子,它是最重要的模式之一.在很多地方都会看到xxxFactory这样命名的类 Factory Method是一种创建性模式,它定义了一个创建对象的接口,但是却让子类来决定具体实例化哪一个类.当一个类无法预料要创建哪种类的对象或是...

2016-12-12 13:22:04 79

原创 单例模式

单例模式(Singleton)也叫单态模式,是设计模式中最为简单的一种模式,甚至有些模式大师都不称其为模式,称其为一种实现技巧,因为设计模式讲究对象之间的关系的抽象,而单例模式只有自己一个对象,也因此有些设计大师并把把其称为设计模式之一。这里又不具体讲如何实现单例模式和介绍其原理(因为这方便的已经有太多的好文章介绍了),如果对单例模式不了解的可以先看下:http://terryle...

2016-12-12 13:11:43 64

原创 java面试题下

这部分主要是开源Java EE框架方面的内容,包括hibernate、MyBatis、spring、Spring MVC等,由于Struts 2已经是明日黄花,在这里就不讨论Struts 2的面试题,如果需要了解相关内容,可以参考我的另一篇文章《Java面试题集(86-115)》。此外,这篇文章还对企业应用架构、大型网站架构和应用服务器优化等内容进行了简单的探讨,这些内容相信对面试会很有帮助。...

2016-12-10 12:46:10 132

原创 java面试题中

这部分主要是与Java Web和Web Service相关的面试题。96、阐述Servlet和CGI的区别?答:Servlet与CGI的区别在于Servlet处于服务器进程中,它通过多线程方式运行其service()方法,一个实例可以服务于多个请求,并且其实例一般不会销毁,而CGI对每个请求都产生新的进程,服务完成后就销毁,所以效率上低于Servlet。 补充:Sun M...

2016-12-10 12:43:58 122

原创 java面试题上

1、面向对象的特征有哪些方面?答:面向对象的特征主要有以下几个方面:- 抽象:抽象是将一类对象的共同特征总结出来构造类的过程,包括数据抽象和行为抽象两方面。抽象只关注对象有哪些属性和行为,并不关注这些行为的细节是什么。- 继承:继承是从已有类得到继承信息创建新类的过程。提供继承信息的类被称为父类(超类、基类);得到继承信息的类被称为子类(派生类)。继承让变化中的软件系统有了一定的延续性...

2016-12-10 12:42:06 184

原创 mybatis与hibernate的区别

我是一名java开发人员,hibernate以及mybatis都有过学习,在java面试中也被提及问道过,在项目实践中也应用过,现在对hibernate和mybatis做一下对比,便于大家更好的理解和学习,使自己在做项目中更加得心应手。第一方面:开发速度的对比就开发速度而言,Hibernate的真正掌握要比Mybatis来得难些。Mybatis框架相对简单很容易上手,但也相对简陋些...

2016-12-06 15:55:38 67

原创 spring基本概念

1.由容器来管理对象之间的依赖关系(而不是对象本身来管理),就叫“控制反转”或“依赖注入”Spring框架的基本思想就是IOC/DISpring就是一个IOC容器2.spring的最大作用ioc/di,将类与类的依赖关系写在配置文件中,程序运行时根据配置文件动态加载依赖的类,降低的类与类之间的藕合度。spring让对象与对象之间的关系都通过配置类说明管理,Spring根据这些配置内...

2016-12-06 13:00:15 74

空空如也

空空如也

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

TA关注的人

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