自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Visant Blog

我的个人网站 :www.irunker.com

  • 博客(63)
  • 资源 (2)

原创 HashMap原理深入理解

hashing(散列法或哈希法)的概念散列法(Hashing)是一种将字符组成的字符串转换为固定长度(一般是更短长度)的数值或索引值的方法,称为散列法,也叫哈希法。由于通过更短的哈希值比用原始值进行数据库搜索更快,这种方法一般用来在数据库中建立索引并进行搜索,同时还用在各种解密算法中。HashMap概念和底层结构HashMap是基于哈希表的Map接口的非同步实现。此实现提供所有可选的映...

2018-04-23 00:35:41 57606 26

原创 Oracle数据泵、exp/imp工具导入导出数据

一、最常用的方法是使用exp、imp命令工具1、ssh工具连接服务器主机,exp命令导出1.1将数据库全部数据导出 exp system/password@TestDB file=bak.dmp log=exp.log full=y1.2 将数据库中system用户与sys用户的表导出exp system/password@TestDB file=bak.dmp log=exp.lo...

2019-10-24 19:08:41 173

原创 RSA加解密简单的处理方法

一、项目引入下面的jar包bcprov-jdk15-133.jarcommons-codec-1.4.jar二、前台生成密文的js工具类,命名为jsencrypt.min.jsvar JSEncryptExports = {};(function(exports) {function BigInteger(a,b,c){null!=a&&("number"==typeo...

2019-10-24 17:40:37 186

原创 VBA程序 在Word文档中将表格中空白单元格填充为“无”

打开宏编辑器功能,输入以下代码,然后编译执行。Sub 填充文档中所有空白单元格() Dim oCell As Cell For i=1 To ActiveDocument.Tables.Count For Each oCell In ActiveDocument.Tables(i).Range.Cells If oCell.Range.Text = Chr(13) & Chr(...

2019-10-24 17:19:46 419

原创 VBA程序 在PPT中使用宏命令删除空白的文本框

打开PPT,切换到视图菜单下,点击宏,输入宏的名词,点击创建。进入命令窗口,复制以下命令编译执行即可。Sub clear()Dim found As BooleanDim textflag As BooleanDim trng As TextRangeDofound = FalseFor Each Sld In ActivePresentation.Slides For Ea...

2019-09-27 00:29:02 608

原创 LinkedList一定比ArrayList的插入和删除效率高吗

ArrayList是实现了基于动态数组的数据结构,LinkedList基于链表的数据结构。

2019-09-27 00:19:31 1150 4

转载 Oracle存储过程详解

1、定义 所谓存储过程(Stored Procedure),就是一组用于完成特定数据库功能的SQL语句集,该SQL语句集经过 编译后存储在数据库系统中。在使用时候,用户通过指定已经定义的存储过程名字并给出相应的存储过程参数 来调用并执行它,从而完成一个或一系列的数据库操作。2、存储过程的创建Oracle存储过程包含三部分:过程声明,执行过程部分,存储过程异常。 (1)无参存储过程语...

2018-04-24 20:42:51 453

原创 数据库表设计和优化

一 、数据库表设计原则1,数据库命名原则:英文字母,多个单词间用下划线’_’,单词尽量简洁、见名知意 2,数据库表命名原则:英文字母,多个单词间用下划线’_’,单词尽量简洁、见名知意3,数据库表字段类型:尽量用int型,固定长度用char,使用varchar的范围尽量贴合实际,能用tinyint就不要用int和smallint,最好给字段设置默认值,默认值不为null;4,数据库表字...

2018-04-23 10:28:08 1140

原创 MySQL存储过程详解

SQL语句:先编译后执行存储过程(Stored Procedure):  一组可编程的函数,是为了完成特定功能的SQL语句集,经编译创建并保存在数据库中,用户可通过指定存储过程的名字并给定参数(需要时)来调用执行。优点(为什么要用存储过程?):  ①将重复性很高的一些操作,封装到一个存储过程中,简化了对这些SQL的调用  ②批量处理:SQL+循环,减少流量,也就是“跑批” ...

2018-04-18 20:51:06 183

原创 WebService接口开发和调用

一、Web Service基本概念WebService是一种可以接收从Internet上的其它系统中传递过来的请求,轻量级的独立的通讯技术。依据Web Service规范实施的应用之间, 无论它们所使用的语言、 平台或内部协议是什么, 都可以相互交换数据。通过SOAP在Web上提供的软件服务,使用WSDL文件进行说明,并通过UDDI进行注册。XML:(Extensible Markup L...

2018-04-18 20:45:39 8315

原创 TCP/IP、HTTP协议、Socket网络编程

一、OIS开放式系统互联 - 七层模型 1.硬件(物理层)TCP/IP的最底层是负责数据传输的硬件。这种硬件相当于是以太网或电话线路等物理层的设备。2.网络接口层(数据链路层)网络接口层利用以太网中的数据链路层进行通信,因此属于接口层。也可以认为是网卡驱动。驱动程序是在操作系统和硬件之间起桥梁作用的软件。3.互联网层(网络层)互联网层使用IP协议,它相当于是OSI模型...

2018-04-18 20:37:53 1455

原创 深入理解多线程编程

一、多线程三大特性 1、原子性:一个操作或者多个操作要么全部执行,要么都不执行。 2、可见性:当多个线程访问同一个变量时,一个线程修改了这个变量的值,其他线程能够立即看到修改的值。 3、有序性:程序执行的顺序是按照代码的先后顺序执行的,在单线程中,可以保证程序最终的执行结果和代码的顺序执行结果一致。但在多线程中,不一定保证其有序性。二、Java内存模型 java内存模型简称jmm,定义...

2018-04-17 18:21:38 1739

原创 CAS单点登录原理及CAS v5.2.4环境搭建

SSO 单点登录:单点登录(Single Sign On),简称为 SSO,是目前比较流行的企业业务整合的解决方案之一。SSO的定义是在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统。我们目前的系统存在诸多子系统,而这些子系统是分别部署在不同的服务器中,那么使用传统方式的session是无法解决的,我们需要使用相关的单点登录技术来解决。CAS 认证服务中心 CAS...

2018-04-17 18:19:59 733

原创 OAuth 2.0 协议原理和认证流程

OAuth 2.0 的定义OAuth 2.0 的规范可以参考 : RFC 6749OAuth 是一个开放标准,允许用户让第三方应用访问该用户在某一网站上存储的私密的资源(如照片,视频,联系人列表),而无需将用户名和密码提供给第三方应用。目前,OAuth 的最新版本为 2.0OAuth 允许用户提供一个令牌,而不是用户名和密码来访问他们存放在特定服务提供者的数据。每一个令牌授权一个特定的...

2018-04-17 13:54:34 414

原创 查询Oracle数据库的表名及列名注释

废话不多说,直接在PLSQL控制台 运行SQL即可 SELECT t.table_name table_name, t.comments table_comments, t1.column_name column_name, t2.DATA_TYPE || '(' || t2.DATA_LENGTH || ')' date_type, ...

2018-04-16 11:55:40 2712

转载 Java IO 与 NIO工作机制

I/O和NIO的本质区别NIO将填充和提取缓冲区的I/O操作转移到了操作系统I/O 以流的方式处理数据,而 NIO 以缓冲区的方式处理数据;IO是阻塞的,NIO是非阻塞的,直到有数据被读取或者数据完全写入时,IO线程才开始执行操作,而NIO在如何情况都是非阻塞的。通道(Channel)和缓冲区(Buffer)NIO三个核心对象:通道(Channel)、缓冲区(Buffer)和选择器...

2018-04-15 14:05:40 152

原创 Java常用开源框架

1、Java中间件,分布式系统、分布式缓存、消息队列  JAVA中间件:包括服务框架中间件:解决集群间的访问通信问题。消息中间件:解决应用之间的消息传递、解耦、异步的问题。数据访问中间件:解决应用访问数据库的共性问题。   分布式系统:一定是有多个节点组成的系统,一般一个节点就是一台服务器,节点之间是相互连通协作的,这些连通的节点上部署了我们的组件,共同服务于一个大型系统。比如淘宝网,在对浏...

2018-04-15 12:28:12 483

转载 分布式系统的CAP和BASE理论

网络分区:俗称“脑裂”。当网络发生异常情况,导致分布式系统中部分节点之间的网络延时不断变大,最终导致组成分布式系统的所有节点中,只有部分节点之间能够进行正常通信,而另一些节点则不能。当网络分区出现时,分布式系统会出现局部小集群。三态:分布式系统的每一次请求和响应包含:成功,失败,超时三种状态。CAPCAP理论,指的是在一个分布式系统中,不可能同时满足Consistency(一致性)、 ...

2018-04-12 13:41:04 298

转载 RPC、REST API、Netty深入理解

一:RPC RPC 即远程过程调用(Remote Procedure Call Protocol,简称RPC),像调用本地服务(方法)一样调用服务器的服务(方法)。通常的实现有 XML-RPC , JSON-RPC , 通信方式基本相同, 所不同的只是传输数据的格式. RPC是分布式架构的核心,按响应方式分如下两种:同步调用:客户端调用服务方方法,等待直到服务方返回结果或者超时,再继续...

2018-04-12 10:34:09 3758 1

转载 Spring和SpringMVC相关面试题

1.Spring中AOP的应用场景、优点? 答:AOP–面向切面编程;是通过动态代理的方式将代码切入到类的指定方法、指定位置上的编程思想,或者说是一种通过预编译方式和运行期动态代理实现在不修改源代码的情况下给程序动态添加功能的技术。具体可以在下面的场景中使用:Authentication 权限、Caching 缓存、Context passing 内容传递、Error handling 错误...

2018-04-03 22:55:58 2528 2

转载 ThreadLocal类深入理解

ThreadLocal是什么早在JDK 1.2的版本中就提供java.lang.ThreadLocal,ThreadLocal为解决多线程程序的并发问题提供了一种新的思路。使用这个工具类可以很简洁地编写出优美的多线程程序。ThreadLocal很容易让人望文生义,想当然地认为是一个“本地线程”。其实,ThreadLocal并不是一个Thread,而是Thread的局部变量,也许把它命名为T...

2018-04-01 16:48:19 229

原创 从JAVA5到JAVA10新特性总结

要了解一门语言,最好的方式就是要能从基础的版本进行了解,升级的过程,以及升级的新特性,这样才能循序渐进的学好一门语言。JDK5新特性1:自动装箱与拆箱: 自动装箱的过程:每当需要一种类型的对象时,这种基本类型就自动地封装到与它相同类型的包装类中。自动拆箱的过程:每当需要一个值时,被包装对象中的值就被自动地提取出来,没必要再去调用intValue()和doubleValue()...

2018-04-01 16:08:08 7398 2

转载 Java单元测试—Junit+Mock

单元测试是编写测试代码,用来检测特定的、明确的、细颗粒的功能。单元测试并不一定保证程序功能是正确的,更不保证整体业务是准备的。单元测试不仅仅用来保证当前代码的正确性,更重要的是用来保证代码修复、改进或重构之后的正确性。参考文章:综合教程:https://yq.aliyun.com/articles/44685Junit教程:https://blog.csdn.net/u014294...

2018-03-28 11:39:52 1129

转载 JavaScript单元测试—Qunit+mocha

首先要弄清楚什么是单元。单元就是一个相对独立的功能模块,可以是一个类,或是一个模块,或是一个方法。单元测试的目的,就是首先保证一个系统的基本组成单元(类、模块或方法)能正常工作。打个比方,你想一台机器能正常工作,首先要保证它的每一个零件和组件能正常工作。而单元测试就是对这些零件和组件进行的测试。所谓”测试框架”,就是运行测试的工具。通过它,可以为JavaScript应用添加测试,从而保证代...

2018-03-28 11:28:22 220

原创 Java多线程、同步异步及阻塞和非阻塞

1、进程和线程的概念进程:运行中的应用程序称为进程,拥有系统资源(cpu、内存)线程:进程中的一段代码,一个进程中可以有多段代码。本身不拥有资源(共享所在进程的资源);在java中,程序入口被自动创建为主线程,在主线程中可以创建多个子线程。多进程: 在操作系统中能同时运行多个任务(程序)多线程: 在同一应用程序中有多个功能流同时执行已经有了进程,为什么还会需要线程呢?主要原...

2018-03-28 01:42:30 4091

原创 Java中静态、非静态代码块, 无参、有参构造方法执行顺序

基本概念1、静态代码块和非静态代码块:相同点:都是JVM加载类时且在构造函数执行之前执行,在类中都可以定义多个,一般在代码块中对一些static变量进行赋值。 不同点:静态代码块在非静态代码块之前执行。静态代码块只在第一次new时执行一次,之后不再执行。而非静态代码块每new一次就执行一次。2、构造方法: 构造方法的方法名和类名相同;无返回值类型;可以指定参数;完成对象的初始化。...

2018-03-28 01:11:09 328

转载 数据库的锁机制理解和运用

【为什么要锁】   数据库是一个多用户使用的共享资源,比如一个用户表t_user,两个浏览器前面的人登录了同个一个账号,把电话号码改了。当多个用户并发地存取数据时,在数据库中就会产生多个事务同时存取同一数据的情况。若对并发操作不加控制就可能会读取和存储不正确的数据,破坏数据库的一致性(脏读,不可重复读,幻读等),可能产生死锁。为了解决这个问题,加锁是一个非常重要的技术,对实现数据库并发控制是一个...

2018-03-27 22:04:14 1363

转载 Linux系统常用命令总结

一、linux CPU大小 cat /proc/cpuinfo |grep “model name” && cat /proc/cpuinfo |grep “physical id” 二、内存大小cat /proc/meminfo |grep MemTotal 三、硬盘大小 fdisk -l |grep Disk四、 uname -a # 查看内核/操作系统/CPU...

2018-03-27 21:59:15 620

原创 数据库的几种去重方法总结

数据库中的去重操作(删除数据库中重复记录的SQL语句)主要有三种方法(1)rowid方法(2)group by 方法(3)distinct方法1、rowid方法根据Oracle带的rowid属性,可以进行判断是否存在重复语句;--对a,b字段都重复的记录,只保留最新的一条select a,b,max(rowid) from test group by a,b;-...

2018-03-27 21:56:16 7476

原创 Java中23种设计模式入门教程

设计模式分类:   behavioural 行为型, structural 结构型, creational 创建型  behavioural Patterns:策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式、中介者模式、解释器模式 -11  structural Patterns: 适配器模式、装饰器模式、代理模式、外观模式、...

2018-03-22 01:12:17 2949

原创 Tomcat性能优化详细教程

首先,是客户端访问tomcat的一个过程,如图所示: 图中间虚线框部分是 Apache基金下的服务器来做静态资源处理的,而这部分需要花费大量时间,当用nginx和tomcat做企业级集群的时候,需要禁用掉AJP协议。 一、准备工作: 1、配置管理员帐户: 进入conf目录下,打开tomcat-users.xml,在首尾元素中间加入: <role rolename="man...

2018-03-21 14:55:49 543

转载 Weblogic服务器性能优化详细教程

大家可以参考一下文档,希望对大家有所帮助!weblogic调优1、检查频繁的标准输出或日志,减少日志操作关闭Log4j,关闭System.out.println语句。 2、根据Bea官方建议,基于x86系列的32位操作系统,建议采用Bea JRockit JVM,以获得最佳的执行性能。 3、内存一般建议正式的域(Domain)设置为-Xms1024m -Xmx1024m,表示堆的初始大...

2018-03-20 17:50:07 5853

原创 JVM调优方法

JVM调优工具Jconsole,jProfile,VisualVMJconsole : jdk自带,功能简单,但是可以在系统有一定负荷的情况下使用。对垃圾回收算法有很详细的跟踪。详细说明参考这里JProfiler:商业软件,需要付费。功能强大。详细说明参考这里VisualVM:JDK自带,功能强大,与JProfiler类似。推荐。如何调优观察内存释放情况、集合类检查、对象树...

2018-03-20 17:29:49 307

原创 常见的HTTP请求错误码

2xx 成功 200 正常;请求已完成。 201 正常;紧接 POST 命令。 202 正常;已接受用于处理,但处理尚未完成。 203 正常;部分信息 — 返回的信息只是一部分。 204 正常;无响应 — 已接收请求,但不存在要回送的信息。 3xx 重定向 301 已移动 — 请求的数据具有新的位置且更改是永久的。 302 已找到 — 请求的数据临时具有不同 ...

2018-03-20 14:19:41 3557

转载 SpringBoot全局异常处理设置

需求1、现在习惯使用ajax的方式发起请求,所以经常需要服务端返回一个json或者字符串。 2、控制全局的异常处理。 3、如果在单个方法中使用try,catch把方法包裹起来,工作量大,而且会异常的抛出而导致@Transactional注解的方法事务不会回滚。说明1、使用@ControllerAdvice注解 2、使用@ExceptionHandler注解@Controlle...

2018-03-20 01:22:48 845

原创 MySQL,Oracle索引介绍和优化

Oracle索引分类B树(b-tree)索引:最常用的索引,其树结构与二叉树比较类似,根据ROWID快速定位所访问的行。一般创建索引,默认就是在创建b-tree索引。位图(bitmap)索引:使用位图来管理与数据行的对应关系,适用于该列只有几个枚举值的情况,比如性别字段,标示字段比如只有0和1的情况。函数索引:针对频繁的对列使用函数的索引,只有当查询语句包含该函数或者表达式时,基于函数...

2018-03-20 01:11:31 1644

原创 Oracle、MySQL查询数据库中所有表的记录数

Oracle语句:select t.table_name,t.num_rows from user_tables tMysql语句:USE information_schema;SELECT table_name,table_rows FROM TABLESWHERE TABLE_SCHEMA = '数据库名'ORDER BY table_rows DESC;Orac...

2018-03-19 23:49:41 1601

原创 oracle复制表数据,复制表结构

在oracle中复制表结构和表数据:   1、复制表结构及数据:   create table new_table as select * from old_table   2、只复制表结构:   create table new_table 

2018-03-19 23:47:32 2115

转载 2018年一线互联网名企JAVA面试题

Java基础和高级特性 1、hashcode相等两个类一定相等吗?equals呢?相反呢? 2、介绍一下集合框架? 3、hashmap hastable 底层实现什么区别?hashtable和concurrenthashtable呢? 4、hashmap和treemap什么区别?低层数据结构是什么? 5、线程池用过吗都有什么参数?底层如何实现的? 6、sychnized和Lock什么区...

2018-03-19 23:27:02 1841

转载 WebLogic报ClassCastException、OutOfMemoryError问题处理

WebLogic启动后常见的两种报错 一、jar包冲突   如果启动的时候报java.lang.ClassCastException类型转换错误,并且错误出现在依赖的第三方jar包,而非自身应用的话,那很有可能是出现了自带jar包与weblogic带的jar包有重复,建议删除自己工程中的此类jar包,我的项目中冲突的jar包是javax.xml和w3c相关的包,删掉含有此内容的包再启动就没问题...

2018-03-19 17:48:38 446

书籍:Oracle与MySQL数据库索引设计与优化

Oracle与MySQL数据库索引设计与优化 一书,书本有详细介绍

2018-03-20

myeclipse反编译和svn插件

压缩包包含svn插件svn-site-1.8.22版本,反编译插件org.sf.feeling.decompiler_1.0.3版本

2017-11-30

空空如也

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