自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

关于IDEA的debug阻塞模式的一个坑

-----------------------20180504更新-------------------------------------今天用idea的maven compile时,发现虽然idea的设置已经将Java compile设置成1.8(我本机的jdk版本),且maven项目的project settings也是1.8,但一直是出现如下情况:[ERROR] Failed ...

2018-05-03 17:28:42 5291

Java面试知识点手工笔记

个人手工笔记,因为怕丢掉,所以以照片的形式传上来保存在网络里。。 1、线程有关:    2、Spring Cloud分布式:   3、HashMap原理: 4、JVM内存模型:   5、锁: 6、MySQL索引: 7、内存溢出: 8、其他:  ...

2018-05-03 09:50:17 407

多线程:如何确定所有任务都执行完成了?

--------------------20180502更新-----------------------------今天学习到了一个比较强大的类:ExecutorCompletionService,它是将 Executor和BlockQueue结合的jdk类,其实现的主要目的是:提交任务线程,每一个线程任务直线完成后,将返回值放在阻塞队列中,然后可以通过阻塞队列的take()方法返回 对...

2018-04-02 15:30:27 7776 1

Linux环境安装MySQL Server 5.7.21

 资料参考:一般是网络查询,但需要注意在MySQL官网上下载的版本,google的时候最好精确到版本,因为不同版本的安装方式可能有所不同,而这些“不同”就会造成一些“坑”!本文的版本是最新版本:mysql-5.7.21-linux-glibc2.12-x86_64.tar.gz。故在网络上google的时候查找5.7.21版本的安装资料,不要随便一篇文章就拿来参考!  先搭建一个虚...

2018-03-29 14:33:13 252

多线程写同一个excel文件(导出)

今天是2018.03.22,已经很久没有更新博客了。。这段时间一直挺忙的,也收获很多。最近一个excel导出的任务让我搞了好久,想想踩过的坑,就想上来小结一番。------------------------------------------------------分割线------------------------------------------------------ ...

2018-03-22 15:14:17 10723 2

Java常见知识(持续更新

其实今年面试发现,对于底层的东西还是得多看,之前虽然整理过一些Java面试的东西,但还是不够,下面就回顾下比较需要掌握的知识点。1、JVM的内存结构收藏一篇比较好的文章:JVM内存模型及垃圾回收算法 :http://blog.csdn.net/kingofworld/article/details/17718587 2、HashMap原理1)HashMap: http:...

2017-11-29 16:06:41 153

使用swagger管理接口

简介:Swagger是一种Rest API的 简单但强大的表示方式,标准的,语言无关,这种 表示方式不但人可读,而且机器可读。 可以作为Rest API的交互式文档,也可以作为Rest API的形式化的接口描述,生成客户端和服务端的代码。 下面结合比较常见的场景,大概说下在Springboot下如何使用swagger来管理接口,以便前后端开发人员能够很好的做接口的对接,同时也利于接口的...

2017-11-29 15:32:30 1054 1

【Lintcode刷题】算法(持续更新)

Lintcode刷题地址:http://www.lintcode.com/zh-cn/problem/#_=_一些大厂面试时喜欢考查的,对于锻炼自己的逻辑思维也大有裨益~发现对链表的考察较多。。 0.经典的二分查找法(前提为有序序列)/** * 非递归二分查找 * * @param num * @param numb...

2017-11-22 16:16:30 525

面试系列(七):Spring(框架)

终于到最后一个比较常问的点了。基本上问你对于Spring的理解。把它的核心概念:IOC和AOP答好,以及Spring的工作原理,Spring里用到的一些设计模式答好就差不多了…… ===================================20170727更新================================下面摘抄了对于Spring理解比较形象的好文章~...

2017-06-14 16:51:00 193

原创 面试系列(六):多线程

差点把多线程给忘了。。。。  多线程基本上去每个公司面试都会问到……  1、谈谈你对多线程的理解线程:表示程序的执行流程,是CPU调度执行的基本单位多线程:指的是一个程序(一个进程)运行时产生了不止一个线程,使用多线程的好处,在于并行的执行多任务,彼此独立,可以提高执行效率。 2、实现多线程的方式在java中实现多线程有多种途径:继承Thread类,实现Runn...

2017-06-14 16:19:44 346

面试系列(五):数据库和前端

前言:数据库和前端也是Java面试比较常见的两部分,这里就写在一篇文章里了。。本篇文章可能并不详尽,但也基本涵盖了面试中可能会问到的点。。 第一部分:数据库部分 1.数据三大范式第一范式(1NF):字段具有原子性,不可再分。所有关系型数据库系统都满足第一范式)数据库表中的字段都是单一属性的,不可再分。例如,姓名字段,其中的姓和名必须作为一个整体,无法区分哪部分是姓,哪部分是...

2017-06-13 15:27:50 433

原创 面试系列(四):Java基础知识

基础也是Java面试里最基本的考查~ 下面就以我遇到的较为常见的点来整理,比较零散,仅供参考。 1、switch……case要注意case之间要用break来分隔,否则将会一直执行下去直到有break的地方:public static void switchTest(int i) { switch(i) { case 1: System.out.prin...

2017-06-07 18:30:51 187

原创 面试系列(三):Java反射机制

Java的反射机制也会是面试中较常问到的点。建议可以从基本定义,语法和实际应用3方面作答。 1、基本定义反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法和属性;这种动态获取的信息以及动态调用对象的方法的功能称为java语言的反射机制。 2、基本语法1)获取Class对象一般有3种形式:...

2017-06-05 00:02:01 922 1

面试系列(二):JVM工作原理

【阅读模式答题】答题:对于JVM的理解,在我看来有两个重要部分: 第一是Java代码编译和执行的整个过程:开发人员编写Java代码(.java文件),然后将之编译成字节码(.class文件),再然后字节码被装入内存,一旦字节码进入虚拟机,它就会被解释器解释执行,或者是被即时代码发生器有选择的转换成机器码执行。Java代码编译和执行的整个过程包含了以下三个重要的机制:1)...

2017-06-04 18:42:43 2429

面试系列(一):代码的执行顺序

开始这个系列是因为想总结一下面试中比较常见的考点。。不喜勿喷~~~~~~ 1、静态代码块、构造代码块、普通代码块和构造函数的执行顺序静态代码块:在java中使用static关键字声明的代码块。静态块用于初始化类,为类的属性初始化。每个静态代码块只会执行一次。由于JVM在加载类时会执行静态代码块,所以静态代码块先于主方法执行。构造代码块:直接在类中定义且没有加static关键字的...

2017-06-04 17:42:25 281

【前端】近期前端开发小结

近期一直在做前端开发。。。感觉自己的知识点被不断刷新。。秉持着好记性不如烂笔头的念头,就此记录下吧,以供参考~1、js的闭包当把js函数写在$(document).ready(function(){...}里面,就相当于闭包的效果。被包围起来的js函数内部可以互相调用,但是外部无法直接调用,闭包可以避免前端内存泄漏(?)如: $(document).ready(function...

2017-04-26 17:33:58 160

【前端狂虐系列】近期前端开发小结

作为一个写后台Java比较多的人,最近有开发前端的需求:切换聊天对象,聊天界面的内容也要随之切换。。目前初具成效,然而也是心酸。。。。。。。。用这个小笔记来记录下一些印象比较深刻的点吧,以供参考~ 1. top.或parent.如果一个页面B是被A页面所包围,并且B页面有自己的js,如果A页面的js想获取B页面的dom元素,需要使用top.$("你的选择器")或parent.$...

2017-03-31 10:46:14 192

原创 本地环境可以,生产环境不行(持续补充)

“我本地是可以的啊,为什么生产上就不行了???”上面那句话相信大家都有说过,现在似乎已经被戏称为“程序员最大的谎言”,呵呵……我就来以我个人的遭遇来总结下教训。 场景一:单独把自己在本地编译无误,测试无误的类编译成class文件放到生产环境。大部分情况下我们都是这么做的,本来在本地跑得好好的代码,上了生产死活跑不起来,而且还不报错……       我碰到这种情况的时候,是因...

2017-03-09 14:27:05 1413

当for循环遇上return

先看下以下方法的打印结果以及返回值:public static void main(String[] args) { System.out.println("返回值:" + testResult()); } public static boolean testResult() { for(int i=1; i<=5; i++) { System.o...

2017-03-09 14:17:01 4221

【20170221】近期小结

好久不见的近期小结,这个系列我觉得还是得坚持更新啊… 1)windows mysql中文入库乱码问题。在确定服务端的中文编码是UTF-8无误后,就需要考虑mysql的编码设置问题了。用sql语句查看下:SHOW VARIABLES LIKE '%char%'要确保character_set_server/system/server/results等都为utf8,默认情况下,...

2017-02-21 15:20:49 153

【Ext】EditorGrid绑定后台数据

很久没有更新了…… 在使用Ext JS作为前端开发框架时,避免了写原生态table之类的元素。现在有一需求是写可编辑单元格的表格,并且需要和后台数据动态绑定起来。下面就简单记录下过程,以便日后供自己和需要的同行参考~ 前端部分(核心):1)先写一个div容器 <div id="grid"></div> 2)js部分:  Ext....

2017-02-19 16:54:27 199

原创 【2016-12-30】工作笔记

时光飞逝,大概是2016年最后一篇博~ 1. net.sf.json如何传递集合? List<Map<String, String>> list2 = new ArrayList<Map<String,String>>(); Map<String, String> map4 = new HashMap<St...

2016-12-30 10:54:53 88

一种按权重分配的Java算法

现有一需求,就是假设有若干任务执行者执行一定数目的任务,并且任务的分配需按一定的权重比来进行。任务的分配是随机的,分配完毕后需要为每条任务打上执行者的标签(即被谁执行。)分配算法不难,但是用java写起来还是蛮巧妙的~ 觉得很有意思,遂记之。算法设计:1)总的任务数能被权重和整除,则每个人分配的数量就是:总任务数/权重和*权重2)总的任务数不能被权重和整除,则先按整除的数按1)的方式...

2016-12-30 10:28:22 2507

学习搭建maven风格的springmvc项目(一)——入门

话不多说,开始。。 step1:首先在eclispe中新建一个maven项目:new->project->Maven Project,artifact选择webapp: step2:填写项目的group id、artifact id、version、package等信息: step3:打开pom.xml文件,切换至Dependencies标签页,选择左侧部分...

2016-12-05 18:51:00 867

原创 ScheduledExecutorService的scheduleAtFixedRate和scheduleWithFixedDelay方法的区别

ScheduledExecutorService是java.util.concurrent并发包下的一个接口,表示调度服务~,它定义了以下几个方法: public ScheduledFuture<?> schedule(Runnable command, long delay, TimeUnit unit); public <V>...

2016-11-18 19:20:33 564

进一步理解get和set

做CRUD的功能时,我们常常会定义一个和表对应的实体类信息,然后这个实体类信息的属性和表中的字段一一对应,然后加上每个属性的get和set方法;更规范的做法是,在此基础上再加一个DTO类,它与实体类长得几乎一样,但是这个类不直接和表关联。 之前一直不明白为何要再定义一个dto类,也觉得get和set方法不外乎是:public String getEmail() { ret...

2016-11-17 17:23:31 270

【2016-11-09】近期小结

真是久违的近期小结系列。。。。 1.distinct的分组作用一般来说,大家都知道distinct是用来去重的,却忽视了他也有分组的作用~下面就来测试一下。假设有一张aaa的表数据如下: 其中,date和name字段是一一对应的,而date和name2字段并不是一一对应的。 1)下面就来测试distinct和group by在date和name字段上的作用效果:...

2016-11-09 13:45:29 99

使用Hessian来进行远程调用

Hessian是一个轻量级的remoting onhttp工具,使用简单的方法提供了RMI的功能. Spring也对Hessian进行了支持,以下就用一个简单的例子来说明下如何在Spring中使用Hessian吧。 Hessian的服务端配置:在服务端的某个applicationContext-*.xml(命名不限)创建HessianServiceExporter来暴露你的服务接口(...

2016-11-03 09:39:07 269

原创 maven的认识和简单使用

maven的简单使用 1、maven的使用背景maven是一个成熟的项目管理工具,它的核心理念是POM(Project Object Model)项目对象模型,把一整个项目当做对象,类似Java的OOP(面向对象)。是可以通过描述信息来完成项目的构建。 maven有一个很重要的概念叫做“仓库”(repository),在传统保守的开发模式中,以下情形很常见:我们会在...

2016-10-21 21:02:59 130

git学习笔记(二):分支和远程仓库

   前一篇文章介绍了了git的一些基本概念和常用命令,本篇就更深入地聊一下git的分支。   1、分支git每次提交时,都会把它们串成一条时间线,这条时间线就是一个分支。截止到目前,只有一条时间线,在Git里,这个分支叫主分支,即master分支。HEAD严格来说不是指向提交,而是指向master,master才是指向提交的,所以,HEAD指向的就是当前分支。每次提交,m...

2016-10-20 21:36:55 360

git学习笔记(一):初识

楼主以前一直使用的是SVN,没接触过git,但最近项目有用到,还是整理下吧~ 1、什么是git?Git是一款免费、开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。Git是一个开源的分布式版本控制系统,可以有效、高速的处理从很小到非常大的项目版本管理。比较常见的版本管理工具比如SVN,比较不同的是SVN属于集中式的版本控制系统,而git则属于分布式版本控制系统。集...

2016-10-20 18:21:17 131

treetable的后台算法

treetable是jquery的树表控件,如: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html> <head> <meta http-equiv="Content-Type" content="text/html; charset=gbk&quot

2016-09-16 14:38:42 248

No projects are available for deployment to this server!

如题,今天在尝试部署从SVN上down下来的项目时,发现不能被tomcat识别成web项目!原因是SVN上down下来的项目的结构并非典型的web项目。 解决办法,右键项目->properties->project faces: 将Dynamic Web Module和Java两个选项都勾上即可,注意他们的版本要求。之后就会发现MyEclipse就能识别到可部署的项...

2016-08-15 10:45:32 614

Mongodb 的CRUD操作(Java API 3.0+)

最近在学习使用Mongodb,众所周知:Mongodb是一种最接近传统关系型数据库的Nosql产品,利用它可以实现最基本的CRUD(增删改查)操作。下面是我小结的关于Mongodb的Java版的增删改查的操作,用到的mongodb版本是3.0+。首先,引入mongo-java-driver-3.2.2.jar包,新建一个测试类如下:package test;import jav...

2016-08-15 09:10:49 179

Mongodb的简单操作

Mongodb的简单操作 【简介】MongoDB是一个基于分布式文件存储的数据库。由C++语言编写。旨在为WEB应用提供可扩展的高性能数据存储解决方案。MongoDB是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。他支持的数据结构非常松散,是类似json的bson格式,因此可以存储比较复杂的数据类型。Mongo最大的特点是他支持...

2016-08-15 09:04:10 120

Oracle11g For Win7安装过程的痛苦总结

入行以来,最害怕之一就是Oracle了。。前段时间在Linux上静默安装它,现在又在Windows下安装它,而且过程也是充满艰辛。。整个人就是被折磨过无数遍濒临崩溃状态,我觉得能成功安装它是一个讲究幸运的事情,好了,下面开始记录一些东西。或许以后还是可以参考一下! ==============================以上是抱怨的分割线======================...

2016-07-19 17:47:14 232

测试redis+keepalived实现简单的主备切换

keepalived是一个是集群管理中保证集群高可用的一个服务软件,它具备心跳检测的功能。运用在redis上,则是具备主备切换的控制功能。keepalived的主备切换方案的设计思想如下:当 Master 与 Slave 均运作正常时, Master负责服务,Slave负责Standby; 当 Master 挂掉,Slave 正常时, Slave接管服务,同时关闭主从复制功能;...

2016-07-17 18:23:45 358

分布式部署的一些小概念(持续补充中……)

====================个人小结,持续补充中。。。。=====================1)先从用户入口,即每台机器需要创建哪几个用户,创建用户的命令如下:useradd -md/home/test -s/bin/csh -g test test           #创建test用户,并指定根目录/home/test(没有的话自动创建),和组test(若grou...

2016-07-07 15:28:42 151

Oracle11g For Linux的静默安装笔记

 已经整了一天多,已被恶心坏了。遂记录下! -----------------------------------------正式开始-----------------------------------------Oracle11g For Linux的静默安装笔记 已经整了一天多,已被恶心坏了。遂记录下!静默安装是无图形化的,能够最大程度减少出错。(实际安装过程...

2016-07-07 15:26:53 216

关于log4j错误日志的保存

因为最近着手了项目里面日志的规范化工作,之前开发的时候都是System.out.println("xxxxx")这种打印语句一了百了,十分常见和简便~~但是一旦项目进行到了后期,开发工作基本完成,日志的规范化就该提上日程啦。日志存在的意义就是记录用户在使用的过程中的操作和问题,尤其是问题,因为错误日志是更有价值的。打印到控制台的System.out.println("xxxxx")语句...

2016-05-06 18:33:26 649

空空如也

空空如也

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

TA关注的人

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