自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

  • 博客(254)
  • 资源 (8)
  • 收藏
  • 关注

转载 volatile解析

Java并发编程:volatile关键字解析   volatile这个关键字可能很多朋友都听说过,或许也都用过。在Java 5之前,它是一个备受争议的关键字,因为在程序中使用它往往会导致出人意料的结果。在Java 5之后,volatile关键字才得以重获生机。  volatile关键字虽然从字面上理解起来比较简单,但是要用好不是一件容易的事情。由于volatile关键字是与Java的内存模

2015-09-25 19:43:52 1381

转载 浏览器缓存详细原理

为什么使用浏览器缓存缓存存在的内容缓存协商缓存协商的简单演示缓存相关的header缓存相关header之间的关系用户的不同操作用户不同操作对应浏览器的不同处理方式测试环境与线上环境取js方式不同导致的问题  为什么使用本地缓存对于一些比较少变化的文件,如js、css等,可以在第一次请求之后将这些文件先放在本地,在下次再去请求这些文件的时候就可以不用再去请求,直接使用本地的就可以了,

2015-05-12 17:41:33 1616

转载 JUnit4详细使用及进阶

JUnit4是JUnit框架有史以来的最大改进,其主要目标便是利用Java5的Annotation特性简化测试用例的编写。先简单解释一下什么是Annotation,这个单词一般是翻译成元数据。元数据是什么?元数据就是描述数据的数据。也就是说,这个东西在Java里面可以用来和public、static等关键字一样来修饰类名、方法名、变量名。修饰的作用描述这个数据是做什么用的,差不多和publ

2015-04-15 16:33:49 678

转载 Java单元测试Junit

相关代码下载链接:                                                                                  http://download.csdn.net/detail/stevenhu_223/4884357   在有些时候,我们需要对我们自己编写的代码进行单元测试(好处是,减少后期维护的精力和费用),这是一

2015-04-15 15:40:10 407

转载 linux查看系统连接数、并发数

tomcat 6的Connector配置如下 Xml代码  Connector port="8080" protocol="HTTP/1.1"                 connectionTimeout="20000"                 redirectPort="8443"                 maxThreads="80

2015-03-31 16:09:12 2999

转载 memcached介绍及安装

一. memcached 是什么?memcached is a high-performance, distributed memory object caching system, generic in nature, but intended for use in speeding up dynamic web applications by alleviating database lo

2015-03-30 17:10:11 456

转载 安装和使用memcached

如何将 memcached 融入到您的环境中?在开始安装和使用 using memcached 之前,我们需要了解如何将 memcached 融入到您的环境中。虽然在任何地方都可以使用 memcached,但我发现需要在数据库层中执行几个经常性查询时,memcached 往往能发挥最大的效用。我经常会在数据库和应用服务器之间设置一系列 memcached 实例,并采用一种简单的模式来读取和

2015-03-26 17:34:54 299

转载 foobar

代码例子中常见的foo bar到底是什么意思? 这个问题,在维基百科上有很好的回答。译文:术语foobar, foo, bar, baz 和qux经常在计算机编程或计算机相关的文档中被用作占位符的名字。当变量,函数,或命令本身不太重要的时候,foobar, foo,bar, baz 和qux就被用来充当这些实体的名字,这样做的目的仅仅是阐述一个概念,说明一个想法。这些术语本

2015-03-26 17:02:49 1302

转载 代码质量检查

代码质量概述    怎样辨别一个项目代码写得好还是坏?优秀的代码和腐化的代码区别在哪里?怎么让自己写的代码既漂亮又有生命力?接下来将对代码质量的问题进行一些粗略的介绍。也请有过代码质量相关经验的朋友提出宝贵的意见。    代码质量所涉及的5个方面,编码标准、代码重复、代码覆盖率、依赖项分析、复杂度分析。这5方面很大程序上决定了一份代码的质量高低。我们分别来看一下这5方面:

2014-09-26 19:25:32 3096 1

转载 大型网站架构演化

前言    一个成熟的大型网站(如淘宝、京东等)的系统架构并不是开始设计就具备完整的高性能、高可用、安全等特性,它总是随着用户量的增加,业务功能的扩展逐渐演变完善的,在这个过程中,开发模式、技术架构、设计思想也发生了很大的变化,就连技术人员也从几个人发展到一个部门甚至一条产品线。所以成熟的系统架构是随业务扩展而完善出来的,并不是一蹴而就;不同业务特征的系统,会有各自的侧重点,例如淘宝,要解

2014-09-26 19:02:52 630

转载 web安全之CSRF

一.CSRF是什么?  CSRF(Cross-site request forgery),中文名称:跨站请求伪造,也被称为:one click attack/session riding,缩写为:CSRF/XSRF。二.CSRF可以做什么?  你这可以这么理解CSRF攻击:攻击者盗用了你的身份,以你的名义发送恶意请求。CSRF能够做的事情包括:以你名义发送邮件,发消息,盗取

2014-09-26 14:34:02 354

转载 web安全测试之XSS

XSS 全称(Cross Site Scripting) 跨站脚本攻击, 是Web程序中最常见的漏洞。指攻击者在网页中嵌入客户端脚本(例如JavaScript), 当用户浏览此网页时,脚本就会在用户的浏览器上执行,从而达到攻击者的目的.  比如获取用户的Cookie,导航到恶意网站,携带木马等。作为测试人员,需要了解XSS的原理,攻击场景,如何修复。 才能有效的防止XSS的发生。

2014-09-26 10:42:01 402

转载 事务隔离级别&悲观锁乐观锁

悲观锁和乐观锁——《POJOs in Action》读书笔记(一)1        事务隔离事务隔离是数据库提供的功能。SQL Server通过SET TRANSACTION ISOLATION LEVEL语句设置事务隔离级别:SET TRANSACTION ISOLATION LEVEL    { READ UNCOMMITTED    | READ COMMITTE

2014-08-22 11:23:18 1827

转载 Java的Log系统介绍和切换

Java的log系统比较繁杂。在这里梳理一下。本文只涉及log系统介绍和处理log系统之间的切换。不涉及如何配置和使用。 具体的log系统Log4j:准确的说是log4j 1.x版。是之前使用最广泛的log系统。Logback:Log4j的作者另立炉灶写的新版log,比起log4j性能更好。具体的对比可以参考http://www.oschina.net/transl

2014-08-19 17:45:32 682

转载 awk使用说明

Awk是一种处理结构数据并输出格式化结果的编程语言, Awk 是其作者 "Aho,Weinberger,Kernighan" 的简称。Awk通常被用来进行格式扫描和处理。通过扫描一个或多个文件中的行,查看是否匹配指定的正则表达式,并执行相关的操作。Awk的主要特性包含:1. Awk以记录和字段的方式来查看文本文件2. 和其他编程语言一样,Awk 包含变量、条件和循环

2014-08-18 16:47:58 445

转载 Linux中重定向及管道

Linux中重定向及管道1重定向1.1      重定向符号>               输出重定向到一个文件或设备 覆盖原来的文件>!              输出重定向到一个文件或设备 强制覆盖原来的文件>>             输出重定向到一个文件或设备 追加原来的文件1.2标准错误重定向符号2>             将一个标准

2014-08-08 15:25:29 383

转载 grep命令

1.作用Linux系统中grep命令是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹 配的行打印出来。grep全称是Global Regular Expression Print,表示全局正则表达式版本,它的使用权限是所有用户。2.格式grep [options]3.主要参数[options]主要参数:-c:只输出匹配行的计数。-I:不区分大 小写(

2014-08-06 16:29:32 1282

转载 servlet中文乱码问题

一、常识了解 1.GBK包含GB2312,即如果通过GB2312编码后可以通过GBK解码,反之可能不成立;2.java.nio.charset.Charset.defaultCharset() 获得平台默认字符编码;3.getBytes() 是通过平台默认字符集进行编码; 二、中文乱码出现 在学习任何一门技术时,经常会有初学者遇到中文

2014-07-31 16:56:17 474

转载 Servlet 3.0 详解

Servlet 3.0 新特性概览 1.Servlet、Filter、Listener无需在web.xml中进行配置,可以通过Annotation进行配置;2.模块化编程,即将各个Servlet模块化,将配置文件也分开配置。3.Servlet异步处理,应对复杂业务处理;4.异步Listener,对于异步处理的创建、完成等进行监听;5. 文件上传API

2014-07-31 15:43:15 559

转载 serialVersionUID详解

Java的序列化机制是通过在运行时判断类的serialVersionUID来验证版本一致性的。在进行反序列化时,JVM会把传来的字节流中的serialVersionUID与本地相应实体(类)的serialVersionUID进行比较,如果相同就认为是一致的,可以进行反序列化,否则就会出现序列化版本不一致的异常。 Eclipse中The serializable class XXXXXX d

2014-07-30 10:34:56 546

转载 win7小技巧

平常在使用系统中,我们经常会通过一些快捷键来切换窗口1 Ait+Tab这个是大家都知道的切换的快捷方式,按照你使用的顺序切换。   2 Win+Tab效果更佳,有3D效果的切换。在不知道那个窗口是你想要的,用这个查找效果很好。   3 先按住Ctrl键,在你想要切换的程序上点下,然后再按Ait+Tab键切换。效果是比如你要在几个QQ窗口里面切换,这个效果很好。试用于你打

2014-07-28 10:55:25 392

转载 ClassLoader详解

ClassLoader主要对类的请求提供服务,当JVM需要某类时,它根据名称向ClassLoader要求这个类,然后由ClassLoader返回这个类的class对象。 1.1 几个相关概念ClassLoader负责载入系统的所有Resources(Class,文件,来自网络的字节流等),通过ClassLoader从而将资源载入JVM  每个class都有一个reference,指向自己的Cl

2014-07-23 17:13:27 784

转载 拦截器实现原理

拦截器(interceptor)是Struts2最强大的特性之一,也可以说是struts2的核心,拦截器可以让你在Action和result被执行之前或之后进行一些处理。同时,拦截器也可以让你将通用的代码模块化并作为可重用的类。Struts2中的很多特性都是由拦截器来完成的。拦截是AOP(Aspect Objected Programing:面向切面编程)的一种实现策略。在Webwork的中文

2014-07-01 13:50:54 1404

转载 AOP和IoC实现原理

用过spring的朋友都知道spring的强大和高深,都觉得深不可测,其实当你真正花些时间读一读源码就知道它的一些技术实现其实是建立在一些最基本的技术之上而已;例如AOP(面向方面编程)的实现是建立在CGLib提供的类代理和jdk提供的接口代理,IOC(控制反转)的实现建立在工厂模式、java反射机制和jdk的操作XML的DOM解析方式.       下面来对spring源码中的基本技术进

2014-07-01 09:39:53 11306 1

转载 java静态代理和动态代理(JDK&cglib)

java静态代理 动态代理(JDK和cglib)JAVA的动态代理 代理模式 代理模式是常用的java设计模式,他的特征是代理类与委托类有同样的接口,代理类主要负责为委托类预处理消息、过滤消息、把消息转发给委托类,以及事后处理消息等。代理类与委托类之间通常会存在关联关系,一个代理类的对象与一个委托类的对象关联,代理类的对象本身并不真正实现服务,而是通过调用委托类的对象的相关方法

2014-07-01 09:35:35 720

转载 Annotation入门

一. 最常见的annotation@Override:用在方法之上,用来告诉别人这一个方法是改写父类的@Deprecated:建议别人不要使用旧的API的时候用的,编译的时候会用产生警告信息,可以设定在程序里的所有的元素上.@SuppressWarnings:暂时把一些警告信息消息关闭@Entity:表示该类是可持久化的类 二. 设计一个自己的Annotation 

2014-06-29 23:20:53 440

转载 Java回调机制详解

java回调机制:软件模块之间总是存在着一定的接口,从调用方式上,可以把他们分为三类:同步调用、回调和异步调用。 同步调用:一种阻塞式调用,调用方要等待对方执行完毕才返回,它是一种单向调用;回      调:一种双向调用模式,也就是说,被调用方在接口被调用时也会调用对方的接口;异步调用:一种类似消息或事件的机制,不过它的调用方向刚好相反,接口的服务在收到某种

2014-06-27 11:46:32 672

转载 Eclipse+Maven创建webapp项目

Eclipse+Maven创建webapp项目1、开启eclipse,右键new——》other,如下图找到maven project2、选择maven project,显示创建maven项目的窗口,勾选如图所示,Create a simple project3、输入maven项目的基本信息,如下图所示:4、完成maven项目的创建,生成相应

2014-06-27 10:34:01 453

转载 jQuery获取input值

jQuery获取Select选择的Text和Value:语法解释:1. $("#select_id").change(function(){//code...});   //为Select添加事件,当选择其中一项时触发2. var checkText=$("#select_id").find("option:selected").text();  //获取Select选择的Text

2014-06-19 20:53:16 6500

转载 全国性网站如何自动定位城市

1、全国性的网站如何自动定位城市,并网友访问网站先检查cookie,如果cookie有记录,则转向cookie对应的分站;如果第一次访问网站则检查访问者的ip所对应的城市,如果查询到自动转向对应的分站并将网址写入到cookie;如果没有查到,则转到城市选择的页面。比如 访问者是北京,则自动跳转到 bj.abc.com

2014-06-19 10:46:38 1385

转载 url编码问题详解escape,encodeURI,encodeURIComponent

1、后台处理方式String str = java.net.URLDecoder.decode(str, "UTF-8");2、前台处理方式如下:JavaScript中有三个可以对字符串编码的函数,分别是: escape,encodeURI,encodeURIComponent,相应3个解码函数:unescape,decodeURI,decodeURICom

2014-06-19 09:45:03 703

转载 escape()、encodeURI()、encodeURIComponent()区别详解

JavaScript中有三个可以对字符串编码的函数,分别是: escape,encodeURI,encodeURIComponent,相应3个解码函数:unescape,decodeURI,decodeURIComponent 。下面简单介绍一下它们的区别1 escape()函数定义和用法 escape() 函数可对字符串进行编码,这样就可以在所有的计算机上读取该字符串

2014-06-18 10:44:17 230

转载 ConcurrentHashMap原理分析

集合是编程中最常用的数据结构。而谈到并发,几乎总是离不开集合这类高级数据结构的支持。比如两个线程需要同时访问一个中间临界区(Queue),比如常会用缓存作为外部文件的副本(HashMap)。这篇文章主要分析jdk1.5的3种并发集合类型(concurrent,copyonright,queue)中的ConcurrentHashMap,让我们从原理上细致的了解它们,能够让我们在深度项目开发中获益非浅

2014-05-05 15:41:49 676

转载 JAVA监听器原理

Java 最新的事件处理方法是基于授权事件模型事件源生成事件并将其发送至一个或多个监听器监听器简单地等待,直到它收到一个事件。一旦事件被接受,监听器将处理这些事件,然后返回。事件:在授权事件模型中,事件是一个描述事件源状态改变的对象 。 通过鼠标、键盘与 GUI 界面直接或间接交互都会生成事件。 如:按下一个按钮、通过键盘输入一个字符、选择列表框中的一项、点击一

2014-05-05 15:40:00 15225 1

转载 80端口被占用

要解决这个问题,您可以进行以下任一项操作: (见下图演示)在IIS管理器中更改网站绑定端口为除80端口外的其它端口。停止正在使用80端口的应用程序,然后从IIS管理器中启动网站。故障排除:要想知道某个端口被哪个应用程序占用了,有两种方法:1.Netstat命令1)“运行”中输

2014-03-18 17:05:01 80

转载 html乱码问题

在网页中,中文乱码的问题时常出现。以前我遇到乱码问题时,就是不停的尝试不同的编码方式,直到成功。昨天项目又遇到了这个问题,我于是做了简单的测试。    html文件是有编码方式的,比如"UTF-8"、"GBK"等等。这些在记事本中或许看不出来,但是在eclipse中,可以设置html文件的编码方式,以下的图片中会有说明。    测试一:    以"UTF-8"方式保存htm

2014-03-17 15:01:35 2650

转载 Cookie/Session机制详解

会话(Session)跟踪是Web程序中常用的技术,用来跟踪用户的整个会话。常用的会话跟踪技术是Cookie与Session。Cookie通过在客户端记录信息确定用户身份,Session通过在服务器端记录信息确定用户身份。本章将系统地讲述Cookie与Session机制,并比较说明什么时候不能用Cookie,什么时候不能用Session。1.1  Cookie机制

2014-02-11 10:25:31 426

原创 Java中函数参数不固定的问题

如何声明一个函数,既能接收单个参数,又可以接收多个参数呢?多个参数的个数是不固定的。需要使用int ... params的方式,java会自动把他转化为数组的方式,反编译可以看出来。如果有单个参数的方法,又有不定参数的方法,现在传递单个参数,那么系统会自动调用单个参数的方法。如果有数组参数的方法,又有不定参数的方法,那么编译将发生错误。package com.lu.

2013-12-25 16:48:01 3787

转载 Job单线程运行的方案

防止job并行运行的几种解决方案 一、JOB State 在通过MethodInvokingJobDetailFactoryBean在运行中动态生成的Job,配置的xml文件有个concurrent属性,表示job是否可以并行运行:如果一个job的业务处理发费的时间超过了job的启动的间隔时间(repeatInterval),这个属性非常有用。如果为false,那么,在这种情况下,当前jo

2013-12-20 17:09:25 495

转载 当try和finally都包含return时

在Java中当try、finally语句中包含return语句时,执行情况到底是怎样的,finally中的代码是否执行,大家众说纷纭,有的说会执行,有的说不会执行,到底哪种说法正确,现在通过下面的例子加以说明:     第一种情况:try中包含return语句,finally中不包含     Java代码  public class TestTry {   

2013-12-09 12:06:19 575

PHP5中文手册

PHP, PHP, 即“PHP: Hypertext Preprocessor”,是一种被广泛应用的开源通用脚本语言,尤其适用于 Web 开发并可嵌入 HTML 中去。 它的语法利用了C、Java 和 Perl,易于学习。该语言的主要目标是允许 Web 开发人员快速编写动态生成的 Web 页面,但 PHP 的用途远不只于此。

2012-01-10

JVM详解及调优

+UseParallelGC 选择垃圾收集器为并行收集器。此配置仅对年轻代有效。即上述配置下,年轻代使用并发收集,而年老代仍旧使用串行收集 。可提高系统的吞吐量。 -XX:ParallelGCThreads 年轻代并行垃圾收集的前提下(对并发也有效果)的线程数,增加并行度,即:同时多少个线程一起进行垃圾回收。此值最好配置与处理器数目相等。

2011-10-17

Java虚拟机详解

Java虚拟机(JVM) 处在核心的位置,是程序与底层操作系统和硬件无关的关键。它的下方是移植接口,移植接口由两部分组成:适配器和Java操作系统, 其中依赖于平台的部分称为适配器;JVM 通过移植接口在具体的平台和操作系统上实现;在JVM 的上方是Java的基本类库和扩展类库以及它们的API, 利用Java API编写的应用程序(application) 和小程序(Java applet) 可以在任何Java平台上运行而无需考虑底层平台, 就是因为有Java虚拟机(JVM)实现了程序与操作系统的分离,从而实现了Java 的平台无关性。

2011-10-17

Struts-Spring-JDK-MySql-的API

StrutsAPI SpringAPI JDKAPI MySqlAPI Struts2 API Spring API JDK1.6 API MySql5API

2011-10-14

Java编程思想第四版高清中文版

Java编程思想第四版高清中文版 以JDK5.0为基础,在第3版的基础上,添加了最新的语言特性,并且对第3版的结构进行了调整,使得所有章节的安排更加遵照循序渐进的特点,同时每一章的内容在分量上也都更加均衡,这使读者能够更加容易地阅读本书并充分了解每章所讲述的内容。

2011-10-13

Java虚拟机简介

Java虚拟机简介 介绍了java虚拟机的体系结构组成,已经java虚拟机的执行过程

2011-10-13

Thinking in Java 中文版

Thinking in Java 中文版 java 编程思想

2011-09-15

空空如也

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

TA关注的人

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