- 浏览: 115039 次
- 性别:
- 来自: 上海
最新评论
-
张延龙地盘:
天下文章一大抄
zookeeper学习笔记-zkclient,curator使用 -
xuehanxin:
笨猪会费 写道你是看书学习的还是学校学习?自学的
maven学习笔记第一节一-maven install 模块之间相互引用 -
笨猪会费:
你是看书学习的还是学校学习?
maven学习笔记第一节一-maven install 模块之间相互引用 -
lianglong2000:
非常感谢!
Netty笔记一(可以运行看到结果的简单例子) -
beijishiqidu:
终于知道为什么了,端口冲突了。
Ubuntu中最重要的命令
文章列表
1.垃圾回收算法种类
引用计数法
很难处理垃圾对象的循环引用,java中没有使用这种算法
标记-清除
标记-清除算法是现代垃圾回收算法的思想基础。标记-清除算法将垃圾回收分为两个阶段:标记阶段和清除阶段。一种可行的实现是,在标记阶段,首先通过根节点,标记所有从根节点开始的可达对象。因此,未被标记的对象就是未被引用的垃圾对象。然后,在清除阶段,清除所有未被标记的对象。
标记压缩法
标记-压缩算法适合用于存活对象较多的场合,如老年代。它在标记-清除算法的基础上做了一些优化。和标记-清除算法一样,标记-压缩算法也首先需要从跟节点开始,对所有可达对象 ...
1.jvm跟踪设置
打印GC信息
-verbose:gc
-XX:+PrintGC
-XX:+PrintGCDetails 打印详细GC信息
-XX:+PrintGCTimeStamp打印GC发生的时间戳
Xloggc:log/gc.log 记录gc日志
-XX:+PrintHeapAtGC打印GC前后堆使用情况
-XX:+TraceClassLoading 监控类加载
-XX:+PrintClassHistogram 按下Ctrl+Break后打印所有类的使用情况
2.堆的分配参数设置
-Xmx20m -Xms5m ,意思是最大堆内存和分 ...
jmv第一节-jvm基础
- 博客分类:
- java基础
1.jvm的启动,先看一副图
这个是jvm的启动流程,从加载jvm的配置到找到JVM.dll找到我们的程序的主入口main方法的过程。
2.JVM的整体架构
这个是jvm的基本结构,jvm有的功能这里都展现出来的,加载class文件到方法区,生 ...
maven第二节-maven基础-依赖管理
- 博客分类:
- 配置管理
1.maven常用命令mvn archetype:create :创建 Maven 项目mvn compile :编译源代码mvn test-compile :编译测试代码mvn test : 运行应用程序中的单元测试mvn site : 生成项目相关信息的网站mvn clean :清除目标目录中的生成结果mvn package : 依据 ...
记性逐渐不好,有的东西忘记,本文复习备忘用,先从最基本的java基础集合开始,集合分为Collection接口和Map接口,这两个接口又衍生出了很多子接口,下面对着2个接口分别作介绍。
一,collection接口
直接实现Collection的类和继承他的接口下图
可以看到有4个接口4个类,下面主要对AbstractCollection类和List,Queue,Set接口进行逐一研究
Collection接口中定义的方法如下图
实现他的类和继承他的接口都这些方法,这些方法的具体功能就不多介绍,其中很多方法的实现都由AbstractCollection来完成,Abstract ...
Java enum的用法详解
用法一:常量
在JDK1.5 之前,我们定义常量都是: public static fianl.... 。现在好了,有了枚举,可以把相关的常量分组到一个枚举类型里,而且枚举提供了比常量更多的方法。
public enum Color {
RED, GREEN, BLANK, YELLOW
}
往数据库里插入大量的数据,当然是批量插入最高效,我们设定一个题目,每次把数据放入队列,当数据大于1000条或者时间大于5分钟后把数据批量入库
队列处理代码:
package bathQueue;
import java.util.ArrayList;
import java.util.List;
import java.util.concurrent.ArrayBlockingQueue;
/**
* <p>Title: BatchQueue.java</p>
* <p>Description: </p>
* & ...
例子用java多线程模拟生产者消费者的例子,上代码,代码有注释说的清楚:
仓库
package day5;
/**
* <p>Title: Warehouse.java</p>
* <p>Description: </p>
* <p>Copyright: Copyright (c) 2014</p>
* @author 雪含心
* @date 2014年2月7日
*/
public class Warehouse {
private int MAXNUM = 100;
pr ...
redis基本命令官网上介绍的很齐全,而且可以模拟redis命令,这里的命令都我试验过的,备忘用的
1.redis事务
命令:
> MULTI
OK
> INCR foo
QUEUED
> INCR bar
QUEUED
> EXEC
1) (integer) 1
2) (integer) 1
这几个命令解释下,multi表示事务的开始,像hibernate一样,中间可以执行若干个操作,然后exec表示提交事务,
中间有一步出错所有的执行
都会回滚
java代码如下:
@Test
public void testTran ...
Redis作者谈Redis应用场景
- 博客分类:
- 点点数据库
Redis作者谈Redis应用场景
毫无疑问,Redis开创了一种新的数据存储思路,使用Redis,我们不用在面对功能单调的数据库时,把精力放在如何把大象放进冰箱这样的问题上,而是利用Redis灵活多变的数据结构和数据操作,为不同的大象构建不同的冰箱。希望你喜欢这个比喻。
下面是一篇新鲜出炉的文章,其作者是Redis作者@antirez,他描述了Redis比较适合的一些应用场景,NoSQLFan简单列举在这里,供大家一览:
我们再做项目的时候,有很多模块是可以重复使用的,maven提供了很好的解决模块之间相互引用的方法,具体流程如下:
1.建立共用模块
2.把共用模块安装到本地maven仓库中(mvn install)
3.再引用项目中确定安装公共模块的坐标
4.完成,可以调用公共模块的方法和功能了
先说一下maven的基本命令
创建一个简单的Java工程:mvn archetype:create -DgroupId=com.mycompany.example -DartifactId=Example创 建一个java的web工程:mvn archetype:create -Darchetyp ...
最近做一个关于附近的人查询,参考了很多资料:现在市面上主流的做法
1.用数据库
2.用类存
3.用lucene
我选用的是用mongodb自带的查附近的人的方法,代码如下:
DBObject db = new BasicDBObject("cityId", JSON.parse("{$orderby:{cityId: -1}}"));
DBObject near = new BasicDBObject( "loc",JSON.parse("{$near : [ " + lon + ",&q ...
网络传输的时候采用的是流的形式,所以一个对象要发出去,并且在服务端要收到一个完整的对象,就要相应的编码解码的过程,这个例子向您展示netty的ObjectEncoder和ObjectDecoder编码解码的过程,代码写的比较简单而且注释比较多就直接用代码了
Server 服务器端的启动程序
package com.my.day2;
import java.net.InetSocketAddress;
import java.util.concurrent.Executors;
import org.jboss.netty.bootstrap.ServerBootstrap; ...
lucene是做什么的网上可以搜到很多资料,就不多说了。我想说了有一下几点
1.为什么不直接用数据库而选用lucene
因为lucene是全文搜索引擎,所以它比较擅长从一个词语中反过来找到那个词在哪篇文章中,是反着的,假如用数据,从2000个字中like那个字段效率很低,而lucene通过生成索引反过来的方式,这样可以提高查询的效率。
2.建立索引主要涉及到的方法和类
为了对文档进行索引,Lucene 提供了五个基础的类,他们分别是 Document, Field, IndexWriter, Analyzer, Directory。下面我们分别介绍一下这五个类的用途:
Doc ...
最近一段时间一直研究聊天程序,学习了nio的知识,以后会和大家分享的,今天写了一个可以运行看到结果的netty helloworld程序,这个程序虽然简单,但从这个程序可以知道netty的运行流程,希望对初学者有所帮助。
第一步:建立一个maven项目,或者读者可以自己导入netty依赖包
<dependency>
<groupId>io.netty</groupId>
<artifactId>netty</artifactId>
<version>3.5.6.Final&l ...