- 浏览: 64568 次
- 性别:
- 来自: 北京
-
最新评论
文章列表
Java操作MongoDB
- 博客分类:
- 缓存
使用mongoDB需要导入以下类,当然不是全部需要,用到的类就导入。
import com.mongodb.Mongo;
import com.mongodb.DB;
import com.mongodb.DBCollection;
import com.mongodb.BasicDBObject;
import com.mongodb.DBObject;
import com.mongodb.DBCursor;
import com.mongodb.ObjectId;
类转换
当把一个类对象存到mongoDB后,从mongoDB取出来时使用setObjectClass()将其转换回原来的类。 ...
1. 基本 概念
IO 是主存和外部设备 ( 硬盘、终端和网络等 ) 拷贝数据的过程。 IO 是操作系统的底层功能实现,底层通过 I/O 指令进行完成。
所有语言运行时系统提供执行 I/O 较高级别的工具。 (c 的 printf scanf,java 的面向对象封装 )
2. Java 标准 io 回顾
Java 标准 IO 类库是 io 面向对象的一种抽象。基于本地方法的底层实现,我们无须关注底层实现。 InputStream\OutputStream( 字节流 ) :一次传送一个字节。 Reader\Writer( 字符流 ) :一次一个字符。
3. nio 简介 ...
定时任务Timer使用:
Timer有两种执行任务的模式,最常用的是schedule
如果你使用的是JDK 5+,还有一个scheduleAtFixedRate模式可以用,
在这个模式下,Timer会尽量的让任务在一个固定的频率下运行
java代码:
public class StudyTimer {
static class MyTask extends TimerTask{
String info = "^_^";
@Override
public void run() {
System.out.pr ...
1、线程的优点
恰当地使用线程时,可以降低开发和维护的开销,并且能够提高复杂应用的性能。线程通过把异步的工作流程转化为普遍存在的顺序流程,使程序模拟人类工作和交互变得更容易了。另一方面,它们可以把复 ...
Activity状态转换和相应的回调函数
- 博客分类:
- android
During the life of an activity, the system calls a core set of lifecycle methods in a sequence similar to a step pyramid. That is, each stage of the activity lifecycle is a separate step on the pyramid. As the system creates a new activity instance, each callback method moves the activity state ...
STRATEGY(策略)——对象行为型模式
- 博客分类:
- 设计模式
1、意图
定义一系列的算法,把它们一个个封装起来,并且使它们可相互替换。本模式使得算法可独立于使用它的客户而变化。
2、别名
政策(Policy)
3、动机
有许多算法可对一个正文流进行分析。将这些算法硬编码进使用它们的类中是不可取的,其原因如下:
需要换行功能的客户端程序如果直接包含换行算法代码的话将会变得复杂,这使得客户程序庞大并且难以维护,尤其当其需要支持多种换行算法时问题会更加严重。
不同的时候需要不同的算法,我们不想支持我们并不适用的换行算法。
当换行功能是客户程序的一个难以分割的成分时,增加新的换行算法或改变现有算法将十分困难。
...
STATE(状态)—— 对象行为型模式
- 博客分类:
- 设计模式
1、意图
允许一个对象在其内部状态改变时改变它的行为。对象看起来似乎修改了它的类。
2、别名
状态对象(Objects for States)
3、动机
考虑一个表示网络连接的类TCPConnection。一个TCPConnection对象的状态处于若干不 ...
OBSERVER(观察者)——对象行为型模式
- 博客分类:
- 设计模式
1、意图
定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并自动更新。
2、别名
依赖(Dependents),发布—订阅(Publish-Subscribe)
3、动机
将一个系统分割成一 ...
MEDIATOR(中介者)——对象行为型模式
- 博客分类:
- 设计模式
1、意图
用一个中介对象来封装一系列的对象交互。中介者使各对象不需要显示地相互引用,从而使其耦合松散,而且可以独立地改变它们之间的交互。
2.动机
面向对象设计鼓励将行为分布到各个对象中。这种分布可 ...
在家里电脑win7试了一下telnet命令,提示不是内部命令,也不是可用运行程序,查了一下资料,原来window7默认是没有telnet服务功能,如果在服务管理那里也是找不到的,因为根本不存这个服务,要新添加telnet服务才行
1."控制面板" 一〉"程序" 一〉"打开或关闭windows功能",在里面你可以看到许多服务项,选择"telnet服务器"和"telnet客户端"确定即可。这样你再回"服务项"或者services.msc里面就可以看到telnet服务了,状态为禁用 ...
redis:hash数据类型与操作
- 博客分类:
- 缓存
Redis hash是一个string类型的field和value的映射表.一个key可对应多个field,一个field对应一个value。将一个对象存储为hash类型,较于每个字段都存储成string类型更能节省内存。新建一个hash对象时开始是用zipmap(又称为small hash)来存储的。这个zipmap其实并不是hash table,但是zipmap相比正常的hash实现可以节省不少hash本身需要的一些元数据存储开销。尽管zipmap的添加,删除,查找都是O(n),但是由于一般对象的field数量都不太多。所以使用zipmap也是很快的,也就是说添加删除平均还是O(1)。如果 ...
使用命令行连接远程Redis服务器
- 博客分类:
- 缓存
1、切换到redis所在文件夹
cd D:\redis-2.0.2
2、调用redis-cli.exe命令连接远程redis服务器,默认连接本机127.0.0.1下6379接口下的服务
redis-cli.exe -h 192.168.12.12 -p 6387 -a password
3、如果连接成功,在redis下输入PING命令测试,如果返回PONG则连接成功
PING
4、选择dbIndex,如选择dbIndex为2的数据库
select 2
5、根据KEY获取缓存的值
get 110114
spring容器启动方式
- 博客分类:
- spring
什么时候spring容器启动?
其实就是程序中执行加载 xml配置文件的时候
1.应用程序下加载
ApplicationContext ctx = new ClassPathXmlApplicationContext("testspring2.xml");
2.web模式下加载
web.xml:
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:spring-hibe ...
1、意图
使多个对象都有机会处理请求,从而避免请求的发送者和接收者之前的耦合关系。将这些对象连成一条链,并沿着这条链传递该请求,知道有一个对象处理它为止。
2、动机
考虑一个图形用户界面中的上下文有关的帮助机制。用户在界面的任一部分上点击就可以得到帮助信息,所提供的帮助依赖于点击的是界面的哪一部分以及其上下文。例如,对话框中的按钮的帮助信息就可能和主窗口中类似的按钮不同。如果对那一部分界面没有特定的帮助信息,那么帮助系统应该显示一个关于当前上下文的较一般的帮助信息——比如说,整个对话框。
因此很自然地,应根据普遍性(generality)即从最特殊到最普通的顺序来组织帮助 ...
PROXY(代理) —— 对象结构型模式
- 博客分类:
- 设计模式
1、意图
为其他对象提供一种代理以控制对这个对象的访问。
2、别名
Surrogate
3、动机
对一个对象进行访问控制的一个原因是为了只有在我们确实需要这个对象时才对它进行创建和初始化。我们考虑一个可以在文 ...