排序:
默认
按更新时间
按访问量

同步、异步、阻塞、非阻塞的理解

同步/异步主要针对C端:同步: 所谓同步,就是在c端发出一个功能调用时,在没有得到结果之前,该调用就不返回。也就是必须一件一件事做,等前一件做完了才能做下一件事。 例如普通B/S模式(同步):提交请求->等待服务器处理->处理完毕返回 这个期间客户端浏览器不能干任何事异...

2016-12-06 20:02:51

阅读数:227

评论数:0

集合操作的ConcurrentModificationException异常分析,为什么有时候循环remove不会异常?Iterator方式也会异常吗?

在我们代码中,禁止在foreach遍历list的时候直接使用list.remove()方法来删除元素的,会ConcurrentModificationException。不同的集合使用不同的方式,ArrayList,Vector,CopyOnWriteArrayList* **单线程情况:如果实...

2016-10-11 14:52:16

阅读数:384

评论数:0

Linux 修改文件字符集解决乱码

Linux 修改文件字符集解决乱码 首先查看文件字符集file xxx.log,可以查看到当前文件的字符集,比如xxx.log的字符集是gbk 然后 iconv -f gbk -t utf-8 xxx.log,xxx.log的字符集即修改了

2016-08-26 10:55:02

阅读数:192

评论数:0

jenkins,Tomcat重启脚本,设置jvm参数之后遇到了一个坑。

如下是我的重启脚本 #/bin/sh source /etc/profile sh /opt/kms_jsoncach.sh pid=`ps -ef | grep "APPmanager" | grep -v 'grep\|tail\|more\|less'| awk '{...

2016-05-05 19:23:08

阅读数:2326

评论数:0

深入理解JVM : Java堆中对象创建、布局、访问全过程

一、对象的创建new Animal();1.类加载检查:检查这个指令的参数是否能在常量池中定位到一个类的符号引用,并且检查这个符号引用代表的类是否已被加载、解析和初始化过。如果没有,那必须先执行相应的类的加载过程。2.为对象分配内存对象所需内存的大小在类加载完成后便完全确定,为对象分配空间的任务等...

2016-03-07 15:32:08

阅读数:1505

评论数:0

nginx 反向代理和正向代理区别

一直对反射代理的反向不知道如何理解,经过百度知道,再结合下面这幅图,总算弄清楚一点了。简单的说从一个局域网出来到服务端为正向,从客户端要进入一个局域网为反向。 概念: 反向代理(Reverse Proxy)方式是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络...

2016-03-04 10:35:33

阅读数:392

评论数:0

Java中的Copy-On-Write容器,CopyOnWriteArrayList和CopyOnWriteArraySet

Copy-On-Write简称COW,是一种用于程序设计中的优化策略。其基本思路是,从一开始大家都在共享同一个内容,当某个人想要修改这个内容的时候,才会真正把内容Copy出去形成一个新的内容然后再改,这是一种延时懒惰策略。从JDK1.5开始Java并发包里提供了两个使用CopyOnWrite机制实...

2016-02-17 18:14:06

阅读数:843

评论数:0

HashMap,LinkedHashMap,TreeMap,HashTable,ConcurrentHashMap,ConcurrentSkipListMap 关于k,v是否为null,以及输出排序

Map的k,v是否为可为null,遍历输出顺序使用场景

2016-02-16 11:24:39

阅读数:449

评论数:0

tomcat的acess_log打印post请求参数,分析日志

有的时候服务器端接口允许请求的方式多样化且不过定,没有nginx的内网服务还需要统计分析post请求日志 1) 在项目中加入相应的包和类,加载那里无所谓,只要web.xml配置正确即可 package filters;  import java.io.IOException;  imp...

2016-01-12 14:14:54

阅读数:3732

评论数:0

Git push与pull的默认行为

git push 通常对于一个本地的新建分支,例如git checkout -b develop, 在develop分支commit了代码之后,如果直接执行git push命令,develop分支将不会被push到远程仓库(但此时git push操作有可能会推送一些代码到远程仓库,这取决...

2016-01-08 10:45:49

阅读数:1392

评论数:0

Maven解决多个jar包引入了不同版本jar包

通过 mvn dependency:tree 查看 多个包引入的依赖; 在eclipse中直接选中包,右->maven exclude maven artifact 即可

2015-12-09 17:17:25

阅读数:1338

评论数:0

linux通过grep kill掉tomcat进程脚本,百分百kill掉

#!/bin/sh source /etc/profile pid=`ps -ef | grep "testtomcat" | grep -v 'grep\|tail\|less\|more'| awk '{print $2}'` if [ "$pid" ...

2015-11-18 14:25:16

阅读数:843

评论数:0

jenkins发布项目到远程主机上,配置两台linux如何使用SSH免密码登录

一、首先要配置两台linux如何使用SSH免密码登录,这样脚本执行scp命令以及远程执行脚本都不需要输入密码: A为本地主机(即用于控制其他主机的机器,jenkins服务器) ; B为远程主机(即被控制的机器Server,jenkins运行之后发布项目的服务器), 假如ip为192.168.1...

2015-11-16 13:18:17

阅读数:4982

评论数:0

linux的/dev/null 2>&1 &含义

在学习Linux的过程中,常会看到一些终端命令或者程序中有”>/dev/null 2>&1 “出现,由于已经遇到了好几次了,为了理解清楚,不妨花点时间百度或者google一下相关的知识。0:表示键盘输入(stdin) 1:表示标准输出(stdout),系统默认是1 2:表...

2015-11-13 12:12:44

阅读数:321

评论数:0

Linux 1>/dev/null 2>&1的含义

Linux 1>/dev/null 2>&1的含义shell中可能经常能看到:>/dev/null 2>&1 命令的结果可以通过%>的形式来定义输出/dev/null 代表空设备文件 代表重定向到哪里,例如:echo “123” > /hom...

2015-11-13 12:09:04

阅读数:248

评论数:0

git stash 常用命令用法

当在一个分支的开发工作未完成,却又要切换到另外一个分支进行开发的时候,除了commit原分支的代码改动的方法外,我觉得git stash是一个更加便捷的选择。步骤如下:一、添加改动到stash。一般情况下git stash 就直接存储起来了。如果stash非常多,在原分支 git stash sa...

2015-10-29 16:01:20

阅读数:315

评论数:0

git rebase原理

git rebase,顾名思义,就是重新定义(re)起点(base)的作用,即重新定义分支的版本库状态。要搞清楚这个东西,要先看看版本库状态切换的两种情况:我们知道,在某个分支上,我们可以通过git reset,实现将当前分支切换到本分支以前的任何一个版本状态,即所谓的“回溯”。即实现了本分支的“...

2015-10-28 12:13:39

阅读数:874

评论数:0

接触git,初学git命令记录一下

git checkout branchName  ;切换到分支 git checkout –b  branchName ;创建新分支 git branch –d branchName ;删除本地分支  git status ;查看当前状态 git add/stage filename,gi...

2015-10-27 17:25:26

阅读数:287

评论数:0

jenkins中通过execute shell启动tocat无法启动问题

以前使用Jenkins直接使用tomcat::redeploy方式,偶尔会PermGen space (Permanent Generation space,是指内存的永久保存区域) OutOfMemoryError;而且发布时候需要更改pom文件中tomcat的url、端口、用户、密码等,最...

2015-10-12 16:44:01

阅读数:2692

评论数:0

Tomcat启动报Error listenerStart错误,如何定位问题呢

启动tomcat的时候查看 catalina.out时候只发现:SEVERE: Error listenerStart 。看不到其他原因,这个时候我们应如何做呢? 为了调试,我们要获得更详细的日志。可以在WEB-INF/classes目录下新建一个文件叫logging.properties,内容...

2015-08-14 18:41:26

阅读数:654

评论数:0

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