- 浏览: 459852 次
- 性别:
- 来自: 杭州
最新评论
-
syw19901001:
30多条mysql数据库优化方法,千万级数据库记录查询轻松解决 ...
MYSQL的全表扫描,主键索引(聚集索引、第一索引),非主键索引(非聚集索引、第二索引),覆盖索引四种不同查询的分析 -
gaoyuanyuan121:
直接改成root.war,根路径能访问,项目路径也能访问,赞 ...
jetty 中如何设置root app -
freezingsky:
翻出来,再看一次!
AOP 的简单入门 -
Shen.Yiyang:
inter12 写道Shen.Yiyang 写道我说的不是NI ...
ReentrantLock、sync、ReentrantReadWriteLock性能比较 -
inter12:
Shen.Yiyang 写道我说的不是NIO和BIO的区别,而 ...
ReentrantLock、sync、ReentrantReadWriteLock性能比较
文章列表
erLang学些笔记3--module
- 博客分类:
- erlang
10. modules
终于要进入模块了。。。。。
所谓的模块就是将一些命令集合组织在一个模块中 。 其实在之前我们也已经接触到了一些modules .例如 head ,tail
1.核心模块的使用语法:Module:Function(Arguments).
1> erlang:element(2,{2,3,4}). //取数组的第二个值
3
2> element(2,{a,b,c}).
b
3> lists:seq(1,5).
[1,2,3,4,5]
4> seq(1,5).
** exception error: u ...
erLang学些笔记2---基本类型2
- 博客分类:
- erlang
7.Lists 集合
1.可以包含任何类型数据,最常用的数据结构之一
1> Li = [1,3,{tt,22},5.3,kj].
[1,3,{tt,22},5.3,kj]
2.在List中erlang会将连续可组成字符创的集合输出为字符创,除非一个字符不能转化为字母
2> [97,98,99].
...
erLang学习笔记1--安装及基本类型1
- 博客分类:
- erlang
erlang学习笔记
1.erlang的安装
ubantu下直接使用 sudo apt-get erlang . 该命令会下载erlang及相关的包。
还有种方式是:
wget http://www.erlang.org/download/otp_src_R14B03.tar.gz
cd otp_src_R14B03
./configure --prefix=/usr/xxx/erlang
make
make install
这种方式 ...
1.背景
在某些情况下,我们经常需要发挥一个空的集合对象,比如说在数据查询时,并不需要发挥一个NULL或是异常,那么就可以返回一个空的集合对象。
JDK提供了两个方式来返回集合对象,那么两者有何区别呢?那就看代码吧 ...
命令版拉分支
svn cp 主干路径 分支路径 -m '注释'
1.svn cp http://svn.test-inc.com/repos//trunk/ http://svn.test-inc.com/repos//branches/20100827_11963_1 -m "create a branch"
..... //其他需要拉的分支路径
2.进入自己建立的工作workspace
cd $HOME/workspace/mergebranch;
3.checkout拉出的分支
svn co http://svn.t ...
顾名思义就是观察者从被观察者身上拉取自己需要的数据!
类结构图同拉的方式,不过具体代码上会有点区别!本案中被观察者接口和观察者接口我们采用的是JDK自带的API来写!里面已经考虑了多并发的情况。但是他的观察者是一个类,又因为java是单继承的,所以在这点稍微有点不好!但是想把一些基础的功能搞定的话,必须使用类来操作。矛盾啊!
被观察者的实现
package com.alibaba.test.observer.api;
import java.util.Observable;
public class WeatherData2 extends Observable {
...
需要几个关键角色
1.被观察对象(可观察对象)2.观察者
观察者想要观察被观察对象,就需要两者之间建立一种一对多的关系。
建立关系后,需要关注的一点就是如果将被观察者更新的消息传递给观察者。一种是推的方式,即被观察更新信息后,立刻把数据推给观察者。另一种是拉的方式,即观察者从被观察者那拉取数据。
先看推的方式吧类图 : 一个可以被观察的接口 Obserable ,一个观察者 Observer
被观察者的实现,本文就是期望一个天气预报的更新 气象站 -- weatherData(被观察者) ---- Temperature(观察者)
代码实例:
被观察者;
package ...
现在又这么一个场景 一家饭店经营多年后,终于开出了第100家房间,但是现在面临一个问题!就是菜单的更新,如果菜单中一个菜的更改的话,那么就需要更改所有的菜单。 简单的说家店有10本菜谱,那么100家就需要更新10*100,那是一个很恐怖的数据! 那怎么办呢,这个时候就需要设计一套电子菜单了!他们雇佣
了BigSoft公司的精英来开发这套系统! 好,项目就紧张的开始了,前期的需求调研,评估,UC的形成,架构的设计,详细设计。。。。 本来认为是一个很简单的系统,设计时碰到了一个问题!因为这家店有一道招牌菜---鸡。 这个鸡的性别可以分为 公鸡,母鸡。它们的价格是不一样的 但是这个鸡的来源又可 ...
单例三要素
1.私有的构造函数
2.静态的对象实例
3.静态的获取对象的 方法
为了保证多线程安全,有三种解决方法
第一种:同步获取实例的方法
package com.test.single;
public class Single {
private static Single instance;
private Single() { }
public static synchronized Single getInstacne() {
if (null == instance) {
...
之前装过,但是忘记了。这次再次安装顺便也把操作步骤记录下来。免的又忘记了
1. 在自己的一个安装目录中 本案在 /usr/soft/install
s1:wget http://archive.apache.org/dist/httpd/httpd-2.0.63.tar.gz
s2:tar -zxvf httpd-2.0.63.tar.gz
s3:cd httpd-2.0.63(解压出来的目录)
s4:./configure --prefix=/home/inter12/install/tools/apache-2.2.15 -enable-lib64 -libdir=/usr/ ...
[b]因为工作需要写一个小的shell脚本,很多年前写过,但是后来又把语法全都忘记了,趁这次机会重新学了一遍,找了些资料。先记下来,免的以后又忘记了
1.name="" ;变量的赋值在=两边不能存在空格
2.可以使用的变量 $1 ...
dig 命令用于查看DNS解析的过程
我们可以查看 DNS的别名 MX 及 URL
命令分别是
dig cname alibaba.com +trace
dig mx alibaba.com +trace --查看MX的解析记录
dig alibaba.com +trace
一般的DNS解析过程是:
在浏览器中输入 www.alibaba.com
step1. 首先会到一个DNS总站 ns(nameservice)。该ns会解析到这URL。
step2. 到二级的ns中,根据一个根节点的NS解析器。 . 点结尾进行解析。
step3. 查看是何种结尾,乳若是.com结尾,那么就到 ...
JMockit 使用
1.使用介绍
传统mock方法的限制:
JDK Proxy必须实现接口
Cglib Proxy的class和方法不能是final限定的
对于静态方法无能为力
对非public方法无能为力,或者需要花比较大的代价进行反射处理
比较依赖于Ioc机制,对于new或工厂类管理的bean无法进行有效的测试
JMockit优点
JMockit项目基于 Java 5 SE 的 java.lang.instrument 机制,内部使用 ASM 库来修改Java的Bytecode,是一个能帮我们解决以上问题的轻量级框架,它允许你动态的改变已有的方法,这主要基于java 1.5的Instrum ...
linux 下 Eclipse仿MyEclipse在 windows下打开文件
java sax 解析
JAVA 解析 XML 通常有两种方式:DOM 和SAX。DOM(文档对象模型)是W3C标准,提供了标准的解析方式,但其解析效率一直不尽如人意,这是因为DOM解析XML文档时,把所有内容一次性的装载入内存,并构建一个驻留在内存中的树状结构(节点数)。如果需要解析的XML文档过大,或者我们只对该文档中的一部分感兴趣,这样就会引起性能问题。
SAX(simple API for XML)是一种XML解析的替代方法。相比于DOM,SAX是一种速度更快,更有效的方法。它逐行扫描文档,一边扫描一边解析。而且相比于DOM,SAX可以在解析文档的任意时刻停止解析,但任何事物都有其 ...