`
文章列表
c3p0简介: C3P0是一个开源的JDBC连接池,它实现了数据源和JNDI绑定,支持JDBC3规范和JDBC2的标准扩展。目前使用它的开源项目有Hibernate,Spring等。 dbcp简介: DBCP(DataBase connection pool),数据库连接池。是 apache 上的一个 java 连接池项目,也是 tomcat 使用的连接池组件。单独使用dbcp需要3个包:common-dbcp.jar,common-pool.jar,common-collections.jar由于建立数据库连接是一个非常耗时耗资源的行为,所以通过连接池预先同数据库建立一 ...
linux安装mysql: 下载地址:http://www.mysql.com/downloads/mysql-4.0.html MySQL-server-5.5.21-1.linux2.6.i386.rpm MySQL-client-5.5.21-1.linux2.6.i386.rpm ----------------- 1)安装服务器端 在有两个rmp文件的目录下运行如下命令: rpm -ivh MySQL-server-4.0.16-0.i386.rpm Mysql默认的端口是3306。 netstat -nat tcp  0  0 0.0.0.0:3306     ...
1. 对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。   2. 应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描,如:   select id from t where num is null   可以在num上设置默认值0,确保表中num列没有null值,然后这样查询:   select id from t where num=0   3. 应尽量避免在 where 子句中使用!=或<>操作符,否则将引擎放弃使用索引而进行全表扫描。    ...
ITeye社区 http://www.iteye.com   51CTO社区 http://www.51cto.com/ 51CTO下载中心 http://down.51cto.com/detail 51CTO技术文档 http://down.51cto.com/zt CSDN社区 http://www.csdn.net blogjava社区 http://www.blogjava.net 赛迪网 http://blog.ccidnet.com 编程论坛 http://bbs.bccn.net 开源中国社区 http://www.oschina.net
1. Ctrl+左键 和F3 这个是大多数人经常用到的,用来查看变量、方法、类的定义 跳到光标所在标识符的定义代码。当按执行流程阅读时,F3实现了大部分导航动作。 2 Ctrl+Shift+G 在工作空间中查找引用了光标所在标识符的位置。可 ...
访问者模式一般被用户一些数据结构稳定的场合,数据对象稳定,而实际对它的操作是不稳定的,他可以接受不同的对象而做出不同的反应,对与稳定的数据结构,它的功能和方法也就稳定,所以就把它抽象出来,抽取出来,而对于访问它的对象是经常改变的,传递不同的实际对象也就得到不同的运行效果,多态的体现 访问者模式的参与对象:      抽象节点:也就是稳定的数据结构对象,同时也声明具体数据结构对象的操作,操作方法接收访问者      具体节点:具体稳定数据结构的实现,接受访问者,调用访问者。      抽象访问者:对与不同的具体节点,做出相应的反应,具体节点是稳定的,从而访问者的一般具体操作也就相对稳定 ...
轻量级模式实现对象的共享,从而减少内存分配的开销。该模式通常和工厂模式一起使用。 Flyweight的目的是为了减少内存的消耗而出现的一种模式。因此他是一种解决实现问题的模式,而不是用来解决建模问题的。 Flyweight享元设计模式是一种结构型设计模式,它主要解决的问题是:由于(同类)对象的数量太大,采用面向对象时给系统带来了难以承受的内存开销。 Flyweight模式的几个要点:       1、面向对象很好的解决了抽象性的问题,但是作为一个运行在机器中的程序实体,我们需要考虑对象的代价问题。Flyweight设计模式主要解决面向对象的代价问题,一般不触及面向对象的 ...
Observer模式的功用:是希望两个(或多个)对象,我们称之为Subject和Observer,当一方的状态发生改变的时候,另一方能够得到通知。也就是说,作为Observer的一方,能够监视到Subject的某个特定的状态变化,并为之做出反应。一个简单的例子就是:当一个用户视图中的数据被用户改变后,后端的数据库能够得到更新,而当数据库被其他方式更新后,用户视图中的数据显示也会随之改变。
Command定义:将来自客户端的请求传入一个对象,无需了解这个请求激活的 动作或有关接受这个请求的处理细节。这是一种两台机器之间通讯联系性质的模式,类似传统过程语 言的 CallBack功能。 优点:解耦了发送者和接受者之间联系。 发送者调用一个操作,接受者接受请求执行相应的动作,因为使用Command模式解耦,发送者无需知道接受者任何接口。 不少Command模式的代码都是针对图形界面的,它实际就是菜单命令,我们在一个下拉菜单选择一个命令时,然后会执行一些动作. 将这些命令封装成在一个类中,然后用户(调用者)再对这个类进行操作,这就是Command模式,换句话说,本来用户(调用者)是 ...
定义:允许一个对象的内部状态改变时改变它的行为。对象看起来似乎修改了它的类。 状态:对象实例的属性值。 行为:对象的功能,大多对应到方法上。 状态模式的功能:分离状态的行为,通过维护状态的变化,来调用不同装态对应的不同功能。 状态和行为是相关联的,可以描述为:状态决定行为。 状态模式和策略模式的结构师完全一样的,但它们的目的、实现、本质却完全不一样。状态模式的行为是平行的,不可相互替换的;而策略模式的行为是平等性的,是可以相互替换的。
代理模式的作用是:为其他对象提供一种代理以控制对这个对象的访问。在某些情况下,一个客户不想或者不能直接引用另一个对象,而代理对象可以在客户端和目标对象之间起到中介的作用。 代理模式一般涉及到的角色有: 抽象角色:声明真实对象和代理对象的共同接口; 代理角色:代理对象角色内部含有对真实对象的引用,从而可以操作真实对象,同时代理对象提供与真实对象相同的接口以便在任何时刻都能代替真实对象。同时,代理对象可以在执行真实对象操作时,附加其他的操作,相当于对真实对象进行封装。 真实角色:代理角色所代表的真实对象,是我们最终要引用的对象。
作用:把一个类的接口变换成客户端所期待的另一种接口,从而使原本因接口原因不匹配而无法一起工作的两个类能够一起工作。适配类可以根据参数返还一个合适的实例给客户端。 
装饰模式:Decorator常被翻译成"装饰",我觉得翻译成"油漆工"更形象点,油漆工(decorator)是用来刷油漆的,那么被刷油漆的对象我们称decoratee.这两种实体在Decorator模式中是必须的. Decorator定义:动态给一个对象添加一些额外的职责,就象在墙上刷油漆.使用Decorator模式相比用生成子类方式达到功能的扩充显得更为灵活. 为什么使用Decorator?我们通常可以使用继承来实现功能的拓展,如果这些需要拓展的功能的种类很繁多,那么势必生成很多子类,增加系统的复杂性,同时,使用继承实现功能拓展,我们必须可预见这 ...
为子系统中的一组接口提供一个一致的界面,Facade模式定义了一个高层接口,这个接口使得这*子系统更加容易使用。   适用性     1.当你要为一个*杂子系统提供一个简单接口时。子系统往往因为不断演化而变得越来越       复杂。大多数模式使用时都会产生更多更小的类。这使得子系统更具可重用性,也更容       易对子系统进行定制,但这也给*些不需要定制子系统的用户带来一些使用上的困难。       Fa*ade可以提供一个简单的缺省视图,这一视图对大多数用户来说已经足*,而那些需       要更多的可定制性的用户可以越过facade层。     2.客户程序与抽象类的实现部分之间存在 ...
主要作用:Singleton模式主要作用是保证在Java应用程序中,一个类只有一个实例存在。在很多操作中,比如建立目录、数据库连接都需要这样的单线程操作以达到对系统资源的访问进行控制之目的。单例模式只应在有真正的“单一实例”的需求时才可使用。 优点:Singleton模式就为我们提供了这样实现的可能。使用Singleton的好处还在于可以节省内存,因为它限制了实例的个数,有利于Java垃圾回收(garbage collection)。我们常常看到工厂模式中类装入器(class loader)中也用Singleton模式实现的,因为被装入的类实际也属于资源。 特点:单例对象持有对自己的引用。    ...
Global site tag (gtag.js) - Google Analytics