自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

yiwuxia23的博客

努力奋斗,不负青春,目标阿里!

  • 博客(31)
  • 资源 (7)
  • 收藏
  • 关注

原创 阿里巴巴编码规范读后笔记

2019-09-25 17:11:04 175

原创 RocketMQ通过命令行创建Topic

updateTopic命令很多人都知道,也在博客上复制粘贴了官网的。但很多人没有给出具体的简单例子,对于初学者而言要的就是直观的例子,可以拷贝下来改个数字直接使用的例子。文档大家都知道看,但很多人看了还是不知道具体怎么去做。因为官网只是给一个介绍。具体命令怎么使用需要靠自己摸索。updateTopic命令主要是三个参数:-b broker_id:broker_port  ,ip都知道就...

2019-01-09 15:25:12 14101 2

原创 LinkedList 源码分析

数据结构基础之双向链表双向链表也叫双链表,是链表的一种,它的每个数据结点中都有两个指针,分别指向直接后继和直接前驱。所以,从双向链表中的任意一个结点开始,都可以很方便地访问它的前驱结点和后继结点。一般我们都构造双向循环链表,如下图所示,同时下图也是LinkedList 底层使用的是双向循环链表数据结构。现在我们来看下LinkedList的源码,集合类的作用就是存储数据然后取数据。所以我...

2019-01-07 15:39:05 194

原创 java动装箱与拆箱原理简单分析

java中本着一切皆对象的原则,Java为每种基本数据类型都提供了对应的包装器类型。装箱:将基本类型用他们对应的引用类型包装起来。拆箱:将包装类型转为基本数据类型。java提供了自动拆箱和自动装箱。下面我们通过代码来看下二者在java中的实现。看如下代码:public class App { public static void main(String[] args) { ...

2019-01-07 14:17:49 196

原创 多线程并发题收集

1,为什么要使用线程池?为每一个请求创建新线程开销很大,服务器在创建和销毁新线程上花费的时间和资源可能比实际处理用户请求的时间和资源更多。在一个jvm中创建太多线程易导致过度消耗内存和线程上下文切换过度,从而影响整个服务器的性能。2,线程池有什么作用?可以重用线程,避免创建和销毁带来的开销控制线程池的并发数,避免大量线程因抢占资源而阻塞能对线程进行统一管理3,说说几种常见的...

2019-01-04 15:32:16 151

原创 为什么选择Nginx

Nginx 是一个高性能的 Web 和反向代理服务器, 它具有有很多非常优越的特性:作为 Web 服务器:相比 Apache,Nginx 使用更少的资源,支持更多的并发连接,体现更高的效率,这点使 Nginx 尤其受到虚拟主机提供商的欢迎。能够支持高达 50,000 个并发连接数的响应,感谢 Nginx 为我们选择了 epoll and kqueue 作为开发模型.作为负载均衡服务器:Ng...

2018-12-26 15:14:34 110

原创 轻松五步教你学会自定义springboot start

   Spring Boot其设计目的是用来简化 Spring 应用的初始搭建以及开发过程。Spring Boot 充分利用了 JavaConfig 的配置模式以及“约定优于配置”的理念,能够极大的简化基于 Spring MVC 的 Web 应用和 REST 服务开发。对于已经熟悉 Spring 生态系统的开发人员来说,Spring Boot 是一个很理想的选择.   以前当自己想掌握或者学习...

2018-11-28 16:10:58 9239 4

原创 AQS源码分析之ReentrantLock (一)

ReentrantLock 的锁实现主要用到的AQS.AQS是很多并发实现的基本框架。基本上关于锁的都和它有关。ReentrantLock 两个内部类分别是公平锁和非公平锁 FairSync和NonFairSync(目前分析这个类)lock方法使用原子操作,将state从0设置为1,如果设置成功则获取锁,当前线程为锁拥有者如果设置失败,则有两种可能,一是别人已经获取锁。...

2018-11-22 11:39:46 196

原创 java虚拟机类加载器

 JDK默认提供了如下几种ClassLoader: 1,Bootstrap loader     Bootstrap 加载器是用c++语言写的,它是在java虚拟机启动后初始的,它主要负责加载%JAVA_HOME%/jre/lib,-Xbootclasspath参数指定的路径以及%JAVA_HOME/jre/classes中的类 1,ExtClassLoader       Bootstr...

2018-11-07 15:23:21 102

原创 Curator分布式锁源码分析

Curator是Apache ZooKeeper的Java / JVM客户端库,官网有个图很形象。curator对于zookeeper来说就像Guava之余java.我们知道Guava是谷歌开源的java类库,该库经过高度优化,运用得当可极大提高我们的代码效率和质量。所以,用Curator的前提是了解zookeeper,在现在分布式应用大行其道的时代,分布式锁一直是热点问题。现在我...

2018-08-24 15:21:01 664 2

原创 调用百度API实现人脸识别

人脸识别,听着很高级,但实际上它确实很高级。不过对于我们开发人员来说,我们大部分人都是拿来主义。这次展示的是调用百度人脸识别API进行人脸信息分析,笔者试了下,发现还是挺准确的,而且代码量很少才8行。(用的python,如果用java铁定不止)。下面来看步骤:第一步:用你的百度账号登陆百度云管理中心,找到人脸识别后,进去创建应用。这个就不细说啦。第二步:根据百度分配给你的API Key和Se...

2018-08-22 20:48:03 22620

原创 常见排序算法之选择排序

程序中常用的排序算法主要有十种,虽然我们在平时写业务代码中很少接触到要自己直接去写排序算法的,一般都是使用工具类,但平时多了解这些算法的思路对我们还是很有益,特别是在看一些源代码或者面试时,笔者之前面试就经常遇到要手写一些常用排序算法情况,今天我来讲下选择排序。选择排序的思路其实是比较好理解的。首先循环找到最小的元素,将其与第一个元素互换(这样第一个位置的元素就是最小的了),接着循环找到第二个...

2018-08-22 20:41:45 117

翻译 yield关键字在python中的作用

本文翻译自:stackoverflow ,原文链接想要理解yield 的作用,你必须先理解什么是生成器以及从生成器到迭代器的过程。Iterables当你创建一个list,你可以一个一个地读取他的元素,一个一个地读取元素就叫迭代。>>> mylist = [1, 2, 3]>>> for i in mylist:... print(i)...

2018-08-17 11:43:17 476

原创 小白看python一行代码打印九九乘法表

众所周知,python是一门非常强大的语言,很重要的一点就是简洁。之前刚学python时看到大神写的一行代码打印九九乘法表,膜拜不已,但又有点看不懂,最后学习了一阵基础后,基本可以看懂并拆分它了。先看大神代码:print('n'.join([' '.join(['%s*%s=%-2s' % (y, x, x*y) for y in range(1, x+1)]) for x in ran...

2018-08-15 15:42:28 6130 2

翻译 java值传递和引用传递分析

在stackoverflow上看到的文章,觉得很赞,翻译过来。原文地址 java一直都是按值传递而不是按引用传递 先来看个小例子:public class Main{ public static void main(String[] args){ Foo f = new Foo("f"); changeReference(f); //

2018-01-08 11:13:05 178

原创 子线程主线程循环交替执行

偶然看到一道面试题: */子线程循环 10 次,接着主线程循环 100 ,接着又回到子线程循环 10 次 接着再回到主线程又循环 100 ,如此循环 50 次,请写出程序。/* 刚好最近在学习并发知识就尝试去做了下。代码如下:(标红处为不明白的地方,希望能指导!)public class Service extends Thread { static volatile boolea

2017-12-14 11:47:41 1112

原创 log4j日志两种简单的使用方式

一直以来只知道用log4j这个日志工具包,对他的配置文件也从来没有去解读过,至于它的用法也一直都是复制粘贴,今天在参考了大牛的博客,发现它有两种使用方式第一种:先看log4j.properties文件的配置**log4j.logger.myTest1=debug,A** log4j.appender.A=org.apache.log4j.DailyRollingFileAppender lo

2017-07-21 15:16:08 318

原创 mybatis入门(结合日志输出)

之前就学习过mybatis,今天又结合官方文档重新来回顾下。前面都挺顺利的,后面碰到日志打印的问题。搞了好久才实现,百度别人的例子,但不是不完整就是在自己这里没实现,所以把自己这里的详细列出来,供大家参考。项目结构如下:![项目结构](http://img.blog.csdn.net/20170527152141423?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkb

2017-05-27 15:38:09 682

原创 spring的JdbcTemplate源码分析

JdbcTemplate是spring对jdbc的封装,提供了操作数据库的模板。以前只是知道怎么用,今天有时间就去看了源码,加深自己的理解和阅读源码的能力。首先JdbcTemplate 是org.springframework.jdbc.core的一个类,在spring-jdbc-4.1.3.RELEASE.jar包中。springAPI中介绍的第一句话就说**This is the centra

2017-05-26 17:44:47 1181

原创 springJdbcTemplate与原始jdbc执行时间比较

spring提供了封装jdbc代码操作数据库的模板方法,即JdbcTemplate对象,使用JdbcTemplate我们就可以专注于我们业务代码,而不必去管各种连接关闭与打开的问题。但我们也会好奇,spring的JdbcTemplate和原始的jdbc在执行效率上哪一个更加快呢?特意比较了下: 封装JdbcTemplate的代码在此就不贴出来了。直接上代码: JdbcTemplate: long

2017-05-26 16:25:44 3536

原创 MongoOperations删除内嵌数组元素

之前因为项目缓存数据改造的缘故,接触并学习mongodb。直接在项目中用的spring整合的mongodb,一般的增删查改操作都是在网上找的dmeo,并没有去看Mongodb的官方文档。也就没有学习mongodb基础的shell操作,渐渐地发现自己遇到各种麻烦了。所以又去mongodb官网将shell操作仔细看了,因为在后面会提到。官方文档地址:[官方文档地址](http://docs.mongo

2017-05-25 16:38:24 2124

原创 关于JDK动态代理的一点理解

最开始并没有接触过jdk动态的代理的概念,只是在学习spring AOP时知道AOP底层也是用的JDK的动态代理实现的,对于aop也只是知道怎么用,但具体怎么实现的,一直没去考究过。今天终于在看了一些参考资料后硬逼着自己把jdk的动态代理的来龙去脉理解研究了一番。并记载下来以求加深印象。对于动态代理可以理解为:在程序运行中,程序把我们对目标对象A的访问转移到对代理对象B的访问,因为代理对象B通过一

2017-05-23 18:59:50 501

原创 HashSet如何判断插入元素重复的研究

上次面试时被面试官被到这个问题,当时没有答对,后来自己研究了下,到今天总算是弄明白了。 先定义一个类,当然既然要放入到hashSet中当然要重写hashcode()方法和equal()方法。package com.map.test;/** * Created by 74039 on 2017-02-26. */public class Cat { private int a;

2017-02-26 16:44:25 552

转载 让自己更值钱的要诀(摘录)

我们经历了小学、初中、高中,习惯了死记硬背,习惯了凡事都去索要标准答案。这种习惯带到职场,就导致了我们缺乏思考能力和自主学习能力,凡事等待别人安排,遇到问题首先想到的是找别人索要现成解决方案。比如你使用Android的ListView,想让它默认选中某一项,你会怎么解决这个问题?可能首先想到的就是到Google、百度上去搜索一下,看看别人是否遇到过类似的需求,是否提供了解决方法。这样做可以使得你的问

2017-01-10 15:08:35 526

原创 Oracle 的关联子查询(correlated subquery) 简介.

这是一篇别人的博客摘录过来,供大家参考1. 什么是子查询这个很简单, 子查询就是嵌套在主查询里的查询了.例如, 在scott 模式下我想查找所有比Allen 工资高的员工我们可以写成这样:[sql] view plain copyselect a.* from emp a, emp b where a.sal > b.sal and b.ename = 'ALLEN' 当然上面

2017-01-09 20:15:09 422

原创 二叉树结构字符串转为数组控制台输出二叉树

之前了解过二叉树但是一直不怎么理解,前天接到一个任务,给我一个字符串15+(2+(3+6)*3),在控制台打印成一颗二叉树。网上有好些例子,但有些是C语言的,有些只有一些片段,做了两天终于弄出来拉。 先写要给工具类package com.jsm.test;import java.util.ArrayList;import java.util.Arrays;import java.util.Co

2017-01-09 14:30:42 426

转载 web.xml组件加载顺序

在配置项目组件的过程中, 了解Tomcat加载组件顺序很有必要。 例如某些框架如Quartz的集群功能需要数据库的支持, 数据库的加载肯定要在框架组件加载之前。经过查阅和Debug发现, web.xm组件加载顺序为:context-param -> listener -> filter -> servlet(同类则按编写顺序执行)。web.xml常用组件解析: <web-app><display-

2017-01-02 12:50:31 605

原创 20个有用的java程序

下面是20个非常有用的Java程序片段,希望能对你有用。字符串有整型的相互转换String a = String.valueOf(2); //integer to numeric string int i = Integer.parseInt(a); //numeric string to an int 2. 向文件末尾添加内容BufferedWriter out = null; tr

2016-12-30 13:46:08 232

原创 oracle常用基本知识

oracle通过表名和字段名查询字段类型select data_type from user_tab_columns where table_name ='表名' and column_name ='字段名' 数据库建立dblink-- Drop existing database link drop database link DFH;-- Create database link crea

2016-12-28 09:12:13 289

原创 spring简单AOP例子

1,先定义一个接口 aop是面向接口的编程。(如果不面向接口就达不到目的)public interface CustomerBo { void addCustomer();}2,定义一个类去实现该接口public class CustomerBoImpl implements CustomerBo{}3,定义切面的类(那个类去增加目标类)public class LoggingAspect

2016-12-17 10:27:43 332

原创 java中用Io流实现文本复制(按行读按行写)

不多说啦 直接上代码。有一个文本,我希望在它的每行前加上某个字符,如果就几行的话,手动添加就行啦,但如果文字太多就没法手动啦。这里写代码片try{ FileWriter fw=new FileWriter("d:"+ File.separator+"jin02.txt"); BufferedWriter bw=new BufferedWriter(f

2016-11-30 10:45:07 3225

jetty整合springmvc例子

参考的官网的jetty例子,项目用的maven整合springmvc例子。亲测通过!

2018-03-16

反编译工具jd-gui

java反编译工具,可以打开jar文件和class后缀的文件

2017-05-23

andriod通过http请求json数据项目例子

自己的亲身实践 公司项目代码分享给大家

2016-11-11

三大框架基本包(spring,hibernate,struts,logging)

三大框架基本包(spring,hibernate,struts)包含commons-beanutils,dom4j-1.6.1,hibernateOrJPA,spring2.5.6,struts-1.3.8-lib,struts2.0.14

2016-05-27

java API 中文版chm

java api 平时多看api 才能写出更多更好的代码

2016-04-05

pio的jar包

用java编写程序,向excel中写入或读写数据必须导入的jar包,收10个 大家支持下

2016-03-01

应用常用jar包

java中使用jsonobject和jsonArray必备的jar包

2016-01-24

空空如也

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

TA关注的人

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