自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(38)
  • 资源 (4)
  • 收藏
  • 关注

转载 MySQL:行转列、列转行

MySQL:行转列、列转行

2022-08-07 14:46:15 1633

转载 Java 8: 元空间(Metaspace)

前言    很多开发者都在其系统中见过“java.lang.OutOfMemoryError: PermGen space”这一问题。这往往是由类加载器相关的内存泄漏以及新类加载器的创建导致的,通常出现于代码热部署时。相对于正式产品,该问题在开发机上出现的 频率更高,在产品中最常见的“问题”是默认值太低了。常用的解决方法是将其设置为256MB或更高。   JDK8 HotSpot JVM 将移除永久区,使用本地内存来存储类元数据信息并称之为:元空间(Metaspace)。这意味着不会再有java.l

2020-12-27 16:05:16 734

转载 聊聊同步、异步、阻塞与非阻塞

近来遇到了一些常见的概念,尤其是网络编程方面的概念,如:阻塞、非阻塞、异步I/O等等,对于这些概念自己也没有太清晰的认识,只是很模糊的概念,说了解吧也了解,但是要让自己准确的描述概念方面的具体细节,却说的不那么准确,这也是自己在这几个方面也没有细细考究过的原因吧。经过看了些这几个概念的资料,发现同步、异步、阻塞、非阻塞的概念其实也并不难以理解,在此写下此文,欢迎拍砖,希望多多交流。1 同步与异步首先来解释同步和异步的概念,这两个概念与消息的通知机制有关。也就是同步与异步主要是从消息通知机制角度.

2020-07-09 14:07:28 253

原创 Java 并发-创建多少线程合适? 超出线程数的请求怎么办?

目录一、创建多少线程合适?二、ThreadPoolExecutor构造函数2.1 添加任务线程池调整流程2.2 拒绝任务handler有四个选择:策略1:ThreadPoolExecutor.AbortPolicy策略2:ThreadPoolExecutor.CallerRunsPolicy策略3:ThreadPoolExecutor.DiscardOldestPoli...

2020-06-07 12:17:13 3324

转载 Java线程池实现原理及其在美团业务中的实践

随着计算机行业的飞速发展,摩尔定律逐渐失效,多核CPU成为主流。使用多线程并行计算逐渐成为开发人员提升服务器性能的基本武器。J.U.C提供的线程池:ThreadPoolExecutor类,帮助开发人员管理线程并方便地执行并行任务。了解并合理使用线程池,是一个开发人员必修的基本功。本文开篇简述线程池概念和用途,接着结合线程池的源码,帮助读者领略线程池的设计思路,最后回归实践,通过案例讲述使用线程池遇到的问题,并给出了一种动态化线程池解决方案。一、写在前面1.1 线程池是什么线程池(Thread

2020-06-07 12:16:46 367

原创 订阅分发模式-EventBus 源码解析

目录一、EventBus使用EventBus 使用的是一个观察者模式,实现了一种事件发送订阅的服务模式。订阅者角色通过向指定的事件发送者注册自身的订阅请求,待后续事件发送者发送事件时,订阅者收到事件的通知对事件进行处理。 观察者对比 监听者管理 监听特定事件 把监听者注册到生产者 按事件超类监听 检测没有监听者的事件 分发事件 传统观察者模

2020-06-06 23:15:17 1137

转载 MYSQL中的删除语句

1. 背景介绍MySQL是一种开放源代码的关系型数据库管理系统(RDBMS),使用最常用的数据库管理语言--结构化查询语言(SQL)进行数据库管理。“SQL” ----是用于访问和处理数据库的标准的计算机语言,简称结构化查询语言SQL中的删除语句一共有四种,分别对应不同的功能2. 四种删除语句deletedelete from table_name where some_column=some_value用于删除表中的行delete from table_name/delet

2020-05-27 11:48:14 5867

原创 intellij-generateAllSetMethod, Intellij插件为类自动生成所有的setter方法值

源代码名称:intellij-generateAllSetMethod 源代码网址:http://www.github.com/gejun123456/intellij-generateAllSetMethod intellij-generateAllSetMethod源代码文档 intellij-generateAllSetMethod源代码下载安装方式使用IDE插件系统Preferences(Settings)> 插件> 浏览库。 > 查找"generateallset

2020-05-16 18:20:15 1165

原创 Java并发-线程协同工具类(CountDownLatch 、CyclicBarrier、CompletionService)

目录ReentrantLock、synchronized 大家经常使用也基本了解的比较多,今天介绍一下其他几个很棒的并发工具类一、CountDownLatch 和 CyclicBarrier例子背景:4个工作,开发工作1、开发工作2、测试、上线。单线程执行所有的工作,整个执行顺序为串行,占用的资源少但是完成时长就会更长。 ...

2020-05-10 13:41:31 542

转载 从ReentrantLock的实现看AQS的原理及应用

转载自美团技术博客:https://mp.weixin.qq.com/s/sA01gxC4EbgypCsQt5pVog前言Java中的大部分同步类(Lock、Semaphore、ReentrantLock等)都是基于AbstractQueuedSynchronizer(简称为AQS)实现的。AQS是一种提供了原子式管理同步状态、阻塞和唤醒线程功能以及队列模型的简单框架。本文会从应用层逐渐深...

2020-05-03 21:58:31 393

转载 不可不说的Java“锁”事

转载自美团技术博客:https://tech.meituan.com/2018/11/15/java-lock.html不可不说的Java“锁”事前言Java提供了种类丰富的锁,每种锁因其特性的不同,在适当的场景下能够展现出非常高的效率。本文旨在对锁相关源码(本文中的源码来自JDK 8和Netty 3.10.6)、使用场景进行举例,为读者介绍主流锁的知识点,以及不同的锁的适用场景。...

2020-05-03 18:22:36 174

转载 EL表达式

EL表达式 1、EL简介1)语法结构 ${expression}2)[]与.运算符 EL 提供.和[]两种运算符来存取数据。 当要存取的属性名称中包含一些特殊字符,如.或?等并非字母或数字的符号,就一定要使用 []。例如: ${user.My-Name}应当改为${user["My-Name"] ...

2020-01-07 15:01:52 330

原创 Thrift学习

Thrift官方网站:http://thrift.apache.org。目前对Thrift的学习和理解都是HelloWorld级别的,所以就贴一个HelloWorld吧,作为学习的第一步。首先看一下需要建立的文件目录结构。pom.xml<?xml version="1.0" encoding="UTF-8"?> <project x...

2018-04-26 18:44:38 170

原创 Manacher算法。最大回文子串。

import java.util.Scanner;public class Manacher { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub Scanner in = new Scanner(System.in); St

2017-03-26 22:42:13 337

转载 Java内存的认识

转载请注明出处:http://blog.sina.com.cn/s/blog_68158ebf0100wp83.html一、Java内存的构成    先上一个官方java document里的图:    由上图可知,整块区域分为Young Generation、Tenured Generation、Permanent Generation。详细解释一下Y

2017-03-20 13:45:38 316

原创 单向链表每k个元素翻转一次。

有一个单链表,请设计一个算法,使得每K个节点之间逆序,如果最后不够K个节点一组,则不调整最后几个节点。例如链表1->2->3->4->5->6->7->8->null,K=3这个例子。调整后为,3->2->1->6->5->4->7->8->null。因为K==3,所以每三个节点之间逆序,但其中的7,8不调整,因为只有两个节点不够一组。给定一个单链表的头指针head,同时给定K值,返回逆序

2017-03-12 14:03:34 1723

原创 Manacher算法(最大回文子串),JAVA实现

推荐大家一个视频。http://www.bilibili.com/video/av4829276/index_1.html。讲manacher算法的。看了好几个博文都不太理解,最后搜了一下视频。很有帮助。package study.lei.string;import java.util.Scanner;public class Manacher { /** * @par

2017-03-11 16:53:38 2328

原创 JAVA == 和 equals 。以及值的传递和地址传递。(简单代码说明)

简单的说明了一下。讲解博文请参考:http://blog.csdn.net/zzp_403184692/article/details/8184751

2016-12-12 15:21:15 345

原创 VMware NAT配置

图片可以另存为。然后放大。

2016-12-04 17:48:30 409

转载 Hadoop集群安装配置教程_Hadoop2.6.0_Ubuntu/CentOS

来源:http://www.powerxing.com/install-hadoop-cluster/本教程讲述如何配置 Hadoop 集群,默认读者已经掌握了 Hadoop 的单机伪分布式配置,否则请先查看Hadoop安装教程_单机/伪分布式配置 或CentOS安装Hadoop_单机/伪分布式配置。本教程适合于原生 Hadoop 2,包括 Hadoop 2.6.0, Hadoop

2016-12-04 16:02:49 522

转载 Hadoop安装教程_单机/伪分布式配置_CentOS6.4/Hadoop2.6.0

来源:http://www.powerxing.com/install-hadoop-in-centos/本教程适合于在 CentOS 6.x 系统中安装原生 Hadoop 2,适用于Hadoop 2.7.1, Hadoop 2.6.0 等版本,主要参考了官方安装教程,步骤详细,辅以适当说明,相信按照步骤来,都能顺利在 CentOS 中安装并运行 Hadoop。本 Hadoop 教程由给力

2016-12-04 15:52:02 1320

原创 Linux 下安装JDK.设置环境变量

1. 安装JDK1.1. 切换到root用户:su – root1.2. 查看以前是不是安装了openjdk:命令:rpm -qa | grep java显示如下:(有则卸载,没有就不用)tzdata-java-2013g-1.el6.noarchjava-1.7.0-openjdk-1.7.0.45-2.4.3.3.el6.x86_64java-1.6.0-ope

2016-11-25 22:35:06 449

原创 CentOS+eclipse+hadoop2.5.1 运行wordcount

之前上课做过一次Hadoop实验。之后很久都没有再使用。这次又历时两天+看之前的比较+百度才把环境搭好。把之前的截图存起来吧。有点像小孩的简笔画。自己可能比较好理解。 环境搭好之后。准备一个Wordcount代码和一个 Hadoop-eclipse插件。 找到自己eclipse安装目录。将插件拷贝进去。 如果拷贝至plugins文件夹下在eclips

2016-11-25 13:09:44 1551

转载 父类 子类 动态代码块 静态代码块 构造函数 执行顺序

执行顺序:对于静态变量、静态初始化块、变量、初始化块、构造器,它们的初始化顺序以此是(静态变量、静态初始化块)>(变量、初始化块)>构造器第一种情形父类和子类 都有动态代码块和静态快时父类和子类 都有动态代码块和静态快时class Father {{System.out.println("父类构造块");// 3}static {System.out.printl

2016-11-18 11:58:22 536

原创 快速排序、堆排序、归并排序

快速排序(带输入)package com.lei.sort;import java.util.Scanner;public class quick_sort { public static void main(String[] args) { Scanner input = new Scanner(System.in); String[] ss = null; while

2016-10-21 13:21:33 294

原创 java 生成四位验证码

package com.lei.common;public class VerificationCode { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub String sum = ""; for (int i = 0;

2016-10-21 12:41:02 2696

原创 Scaner 相关。常用输入输出

java 常用输入输出 。方法

2016-10-21 12:36:37 639

转载 计算时间复杂度

一、概念时间复杂度是总运算次数表达式中受n的变化影响最大的那一项(不含系数)比如:一般总运算次数表达式类似于这样:a*2^n+b*n^3+c*n^2+d*n*lg(n)+e*n+fa ! =0时,时间复杂度就是O(2^n);a=0,bO(n^3);a,b=0,cO(n^2)依此类推eg:(1) for(i=1;i //循环了n*n次,当然是O(n^2)

2016-10-06 16:08:00 676

原创 常用算法和数据结构的复杂度介绍

常见的数据结构相应的时间复杂度和空间复杂度

2016-10-06 15:31:13 697

原创 数据结构基本排序算法

冒泡排序package com.lei.go;public class BubbleSort { public static void main(String [] args) { int [] a ={1,3,5,12,4,6,1}; a=bubbleSort(a, 7); for (int i = 0; i < a.length; i++) { System

2016-10-04 13:45:42 365

原创 Android APP更新——service后台下载、进度提示、自动安装

检测应用的当前版本号。与服务端最新版本号进行比较。 /** * 获取版本号 需要在Activity 中使用 * @return 当前应用的版本号 */ public String getVersion() { try { PackageManager manager = this.getPackageMa

2016-07-07 20:06:07 14658 2

转载 图片的占用内存压缩处理和传送流量压缩处理

转的其他人的博客。 加了一点自己的代码。  一.图片的存在形式1.文件形式(即以二进制形式存在于硬盘上)2.流的形式(即以二进制形式存在于内存中)3.Bitmap形式这三种形式的区别: 文件形式和流的形式对图片体积大小并没有影响,也就是说,如果你手机SD卡上的如果是100K,那么通过流的形式读到内存中,也一定是占100K的内存,注意是流的形式,不是Bitmap的形式

2016-06-22 20:50:51 1160

原创 JAVA 接口

Java不支持多继承性,即一个类只能有一个父类。单继承性使得Java简单,易于管理程序。为了克服单继承的缺点,Java使用了接口,一个类可以实现多个接口。使用关键字interface来定义一个接口。分为接口的声明和接口体。(1)接口声明:接口通过使用关键字interface来声明,格式:       interface  接口的名字 (2)接口体: 接口体中包含常量定义和方法定义两

2016-04-08 15:14:55 473

原创 对象的上转型对象

假设,B是A的子类或间接子类,当我们用子类B创建一个对象,并把这个对象的引用放到类A声明的对象中时,如   A a;   B b=new B();   a=b;那么,就称对象a是子类对象b的上转型对象.上转型对象不能操作子类声明定义的成员变量(失掉了这部分属性),不能使用子类声明定义的方法(失掉了一些功能)。◆上转型对象可以代替子类对象去调用子类重写的实例方法。

2016-04-08 15:03:46 16952 1

原创 Android_setTextColor无效解决办法

设置字体颜色时总是无效,找了一些网友的指导。终于找到了好用的办法。  [java] view plain copy print?textView.setTextColor(R.color.news_have_read);  如上,代码无论如何都不能正常显示颜色。只好换成如下代码:[html] view

2016-04-04 18:21:38 8016 1

转载 Android layout布局属性、标签属性总结

RelativeLayout第一类:属性值为true可falseandroid:layout_centerHrizontal        水平居中android:layout_centerVertical         垂直居中android:layout_centerInparent         相对于父元素完全居中android:layout_a

2016-03-26 16:12:20 1155

原创 极光推送Demo学习(博客中的图片可能因为CSDN升级的原因无法显示,有时间我会重新更新一下文章)

主要功能保持与服务器的⻓连接,以便消息能够即时推送到达客户端接收通知与⾃定义消息,并向开发者App传递相关信息主要特点客户端维持连接占⽤资源少、耗电低SDK丰富的接⼝,可定制通知栏提⽰样式服务器⼤容量、稳定jpush-sdk_v2.x.y.zip 集成压缩包内容AndroidManifest_AS_Example.xml / AndroidManifest_

2016-03-26 15:37:31 2215 2

原创 JSON与XML比较

1.定义介绍(1).XML定义扩展标记语言 (Extensible Markup Language, XML) ,用于标记电子文件使其具有结构性的标记语言,可以用来标记数据、定义数据类型,是一种允许用户对自己的标记语言进行定义的源语言。 XML使用DTD(document type definition)文档类型定义来组织数据;格式统一,跨平台和语言,早已成为业界公认的标准。XML

2016-03-03 20:40:57 338

VanDyke SecureCRT v7.2.6 with Keygen

SecureCRT 和keygen

2016-12-04

极光推送Demo

极光推送的Demo。

2016-03-26

微信6.0主界面

可以实现微信6.0主界面的侧滑效果。导航按钮滑动时展现渐变效果。

2016-03-26

viewPaper的简单介绍

viewPaper的小demo。集中展示了四中viewPaper的使用方式。demo都很简单。但缺可以实现很好的界面框架。希望对大家有用,分享一下共同学习。

2016-03-15

空空如也

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

TA关注的人

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