自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(24)
  • 资源 (1)
  • 问答 (3)
  • 收藏
  • 关注

转载 深入理解Java中的迭代器

迭代器模式:就是提供一种方法对一个容器对象中的各个元素进行访问,而又不暴露该对象容器的内部细节。概述  Java集合框架的集合类,我们有时候称之为容器。容器的种类有很多种,比如ArrayList、LinkedList、HashSet...,每种容器都有自己的特点,ArrayList底层维护的是一个数组;LinkedList是链表结构的;HashSet依赖的是哈希表,每种容器都有自己特有的数...

2019-03-21 10:11:24 115

转载 Java总结篇系列:Java泛型

一. 泛型概念的提出(为什么需要泛型)?首先,我们看下下面这段简短的代码: 1 public class GenericTest { 2 3 public static void main(String[] args) { 4 List list = new ArrayList(); 5 list.add("qqyumidi"); ...

2019-03-20 15:42:07 83

转载 解决spring boot redis序列化key-value乱码\xac\xed\x00\x05t\x00

本文转自:https://blog.csdn.net/ljj_9/article/details/79370027最近使用spring-data-redis RedisTemplate 操作redis时发现存储在redis中的key不是设置的string值,前面还多出了许多类似\xac\xed\x00\x05t\x00这种字符串,如下图第二个keyspring-data-redis的Red...

2018-10-16 15:24:01 1586 1

转载 Hibernate事务与并发问题处理(乐观锁与悲观锁)

 Hibernate事务与并发问题处理(乐观锁与悲观锁)一、数据库事务的定义  数据库事务(Database Transaction) ,是指作为单个逻辑工作单元执行的一系列操作。事务处理可以确保除非事务性单元内的所有操作都成功完成,否则不会永久更新面向数据的资源。通过将一组相关操作组合为一个要么全部成功要么全部失败的单元,可以简化错误恢复并使应用程序更加可靠。一个逻辑工作单元要成为事务,必须满足...

2018-05-03 17:30:25 108

转载 乐观锁与悲观锁

乐观锁  乐观锁(Optimistic Lock), 顾名思义,就是很乐观,每次去拿数据的时候都认为别人不会修改,所以不会上锁,但是在更新的时候会判断一下在此期间别人有没有去更新这个数据,可以使用版本号等机制。乐观锁适用于多读的应用类型,这样可以提高吞吐量,像数据库如果提供类似于write_condition机制的其实都是提供的乐观锁。  CAS便是乐观锁技术,当多个线程尝试使用CAS同时更新同一...

2018-04-25 14:04:35 112

转载 hashcode()和equals()的作用、区别、联系

介绍一、  hashCode()方法和equal()方法的作用其实一样,在Java里都是用来对比两个对象是否相等一致,那么equal()既然已经能实现对比的功能了,为什么还要hashCode()呢?      因为重写的equal()里一般比较的比较全面比较复杂,这样效率就比较低,而利用hashCode()进行对比,则只要生成一个hash值进行比较就可以了,效率很高

2018-04-24 11:32:53 114

转载 Sql优化

看到一篇非常全面的SQL优化文章,在开发的工作中往往不考虑性能上的缺失(在一开始的时候数据量不大也看不出速度上的区别)。但写的越多越应该规范一下写法。原文链接:http://www.jfox.info/SQL-you-hua.htmlBy Lee - Last updated: 星期五, 五月 17, 2013数据库的优化问题一、问题的提出 在应用系统开发初期,由于

2018-04-03 23:31:49 145

转载 JDK自带工具keytool生成ssl证书

前言:因为公司项目客户要求使用HTTPS的方式来保证数据的安全,所以木有办法研究了下怎么生成ssl证书来使用https以保证数据安全。百度了不少资料,看到JAVA的JDK自带生成SSL证书的工具:keytool,外加看了同事的心得体会,自己总结了一下具体的使用方法和使用过程中发现的问题及解决办法。 1:什么是HTTPS?HTTPS其实是有两部分组成:HTTP

2018-03-30 16:20:14 163

转载 CXF+Spring+Tomcat开发webservice接口,并添加SSL双向认证

环境信息:CXF2.7 Spring3.1 tomcat6.0一、创建webservice接口    web.xml    xmlns="http://java.sun.com/xml/ns/javaee"     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"     xsi:schemaLoca

2018-03-30 15:34:32 588

转载 js面试题

该题难度系数: ★★★ 考查的技术点:  1). 变量提升 2). 函数提升  3). 预处理  4). 调用顺序[php] view plain copyvar c = 1;  function c(c) {      console.log(c);      var c = 3;  }  c(2);  

2018-03-22 16:36:27 114

转载 Java的三种代理模式(Spring动态代理对象)

Java的三种代理模式1.代理模式代理(Proxy)是一种设计模式,提供了对目标对象另外的访问方式;即通过代理对象访问目标对象.这样做的好处是:可以在目标对象实现的基础上,增强额外的功能操作,即扩展目标对象的功能.这里使用到编程中的一个思想:不要随意去修改别人已经写好的代码或者方法,如果需改修改,可以通过代理的方式来扩展该方法举个例子来说明代理的作用:假设我们想邀请一位

2018-03-21 19:06:50 622

转载 数据库隔离级别 及 其实现原理

4种隔离级别的相应原理总结如下:READ_UNCOMMITED 的原理:事务对当前被读取的数据不加锁;事务在更新某数据的瞬间(就是发生更新的瞬间),必须先对其加 行级共享锁,直到事务结束才释放。表现:事务1读取某行记录时,事务2也能对这行记录进行读取、更新;当事务2对该记录进行更新时,事务1再次读取该记录,能读到事务2对该记录的修改版本,即使该修改尚未被提交。事

2018-03-20 11:33:47 237

转载 数据库事务的四大特性以及事务的隔离级别

本篇讲诉数据库中事务的四大特性(ACID),并且将会详细地说明事务的隔离级别。  如果一个数据库声称支持事务的操作,那么该数据库必须要具备以下四个特性:⑴ 原子性(Atomicity)  原子性是指事务包含的所有操作要么全部成功,要么全部失败回滚,这和前面两篇博客介绍事务的功能是一样的概念,因此事务的操作如果成功就必须要完全应用到数据库,如果操作失败则不能对数据库有任何影响

2018-03-20 11:24:07 76

转载 如何充分利用多核CPU,计算很大的List中所有整数的和

引用前几天在网上看到一个淘宝的面试题:有一个很大的整数list,需要求这个list中所有整数的和,写一个可以充分利用多核CPU的代码,来计算结果。一:分析题目 从题中可以看到“很大的List”以及“充分利用多核CPU”,这就已经充分告诉我们要采用多线程(任务)进行编写。具体怎么做呢?大概的思路就是分割List,每一小块的List采用一个线程(任务)进行计算其和,最后等待所有的线

2018-03-19 15:20:11 364

转载 详解tomcat线程池原理及参数释义

tomcat线程池有如下参数:   maxThreads, 最大线程数,tomcat能创建来处理请求的最大线程数   maxSpareTHreads, 最大空闲线程数,在最大空闲时间内活跃过,但现在处于空闲,若空闲时间大于最大空闲时   间,则回收,小于则继续存活,等待被调度。   minSpareTHreads,最小空闲线程数,无论如何都会存活的最小线程数

2018-03-16 19:30:40 149

转载 理解线程池的原理

2016年09月18日 17:45:31104391.关于线程池线程池的技术背景在面向对象编程中,创建和销毁对象是很费时间的,因为创建一个对象要获取内存资源或者其它更多资源。在Java中更是如此,虚拟机将试图跟踪每一个对象,以便能够在对象销毁后进行垃圾回收。所以提高服务程序效率的一个手段就是尽可能减少创建和销毁

2018-03-16 17:54:44 81

转载 Java 值传递和对象传递详解

1、需要明白的概念: 堆和栈:Java中基本数据类型的值和对象的引用保存在栈中,具体对象值保存在堆中。传递原理: 一个方法传递的参数如果是基本数据类型,则是对具体值的拷贝;如果是对象数据类型,则是对对象引用地址值的拷贝,而非具体值拷贝。下面分析三种情况:①一个方法不能改变传入基本类型的参数值。 示例代码:public class Test2 { publi

2018-02-08 18:59:44 177

转载 Set检查是否为重复对象的策略

反思:为什么要先通过先检索hashcode是否相等呢?查看Hashset的底层源代码:它其实是调用HashMap,而HashMap底层是通过数组维护数据,你想想,如果你的数据是1000万条,每次添加了的时候,你都和所有的元素进行比较,那为了维护不重复,你插入的成本得有多高!!!!太可怕了,!!所以通过引入Hashcode,转换一下,把它作为下标,然后在检查一下这里面存的元素是否想等,用eq

2018-02-08 18:24:06 153

转载 Java常量池理解和经典总结

Java常量池理解和经典总结一.相关知识1. 什么是常量。第一种:是一个值,这个值本身,我们就叫做常量。整型常量:1024实型常量:1.024字符常量:'g' 'c' 'w'字符串常量:"gcw"逻辑常量:true false这只是我们平时我们的一个说法而已,比如数字1024,我们说它是一个int类型的常量。

2018-02-07 19:18:58 133

转载 Oracle中用一个表的数据更新另一个表的数据

有下面两个表:将表tab1中id值与和表tab2中id值相同的行的val更新为tab2中val的值. select * from tab1;  select * from tab2 最容易犯的错误是:update tab1 set val=(select val from tab2 where tab1.id=tab2.id); 更新完后的结果是:select * fr

2018-02-07 15:20:01 10058

转载 java 常用集合list与Set、Map区别及适用场景总结

出自于:http://blog.csdn.net/qq_22118507/article/details/51576319               list与Set、Map区别及适用场景1、List,Set都是继承自Collection接口,Map则不是2、List特点:元素有放入顺序,元素可重复 ,Set特点:元素无放入顺序,元素不可重复,

2017-09-11 20:23:21 184

原创 序列化form表单元素为对象

/***序列化form表单元素为对象  * @param target form对应的jquery对象/jquery选择器* @param isPostEmpty 设置空值字段是否序列化  * @author jdh  */serializeObject: function(target,isPostEmpty){var tempPostData = {}, attrA

2017-08-18 18:14:43 288

转载 JS中的“!!”

var o={flag:true}; var test=!!o.flag;//等效于var test=o.flag||false; alert(test);由于对null与undefined用!操作符时都会产生true的结果,所以用两个感叹号的作用就在于,如果明确设置了o中flag的值(非 null/undefined/0""/等值),自然test就会取跟o.flag一样的值;如果没

2017-08-18 17:57:48 121

转载 java的守护线程与非守护线程(转)

最近重新研究Java基础知识,发现以前太多知识知识略略带过了,比较说Java的线程机制,在Java中有两类线程:User Thread(用户线程)、Daemon Thread(守护线程) ,(PS:以前忽略了)。       估计学过Unix开发但是没有细致学习Java的同学们会疑惑了,操作系统里面是没有所谓的守护线程的概念,只有守护进程一说,但是Java语言机制是构建在JVM的基础之上的

2017-01-05 10:25:21 116

深入JAVA虚拟机第二版

深入JAVA虚拟机第二版深入JAVA虚拟机第二版深入JAVA虚拟机第二版深入JAVA虚拟机第二版

2017-12-21

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

TA关注的人

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