`
文章列表
本文讲述代理模式... 代理模式的作用是:为其他对象提供一种代理以控制对这个对象的访问。在某些情况下,一个客户不想或者不能直接引用另一个对象,而代理对象可以在客户端和目标对象之间起到中介的作用。   代理模式一般涉及到的角色有:  抽象角色:声明真实对象和代理对象的共同接口;  代理角色:代理对象角色内部含有对真实对象的引用,从而可以操作真实对象,同时代理对象提供与真实对象相同的接口以便在任何时刻都能代替 真实对象。同时,代理对象可以在执行真实对象操作时,附加其他的操作,相当于对真实对象进行封装;  真实角色:代理角色所代表的真实对象,是我们最终要引用的对象;   下面四个类讲述一个 ...
JDK动态代理的原理是根据定义好的规则,用传入的接口创建一个新类,这就是为什么采用动态代理时为什么只能用接口引用指向代理,而不能用传入的类引用执行动态类。 cglib采用的是用创建一个继承实现类的子类,用asm库动态修改子类的代码来实现的,所以可以用传入的类引用执行代理类 动态代理 Java代码 package proxy.test;       import java.lang.annotation.Retention;    import java.lang.annotation.RetentionPolicy;    import java.lang ...
java 静态代码块 静态方法区别 一般情况下,如果有些代码必须在项目启动的时候就执行的时候,需要使用静态代码块,这种代码是主动执行的;需要在项目启动的时候就初始化,在不创建对象的情况下,其他程序来调用的时候,需要使用静态方法,这种代码是被动执行的. 静态方法在类加载的时候 就已经加载 可以用类名直接调用 比如main方法就必须是静态的 这是程序入口 两者的区别就是:静态代码块是自动执行的; 静态方法是被调用的时候才执行的. 静态方法 (1)在Java里,可以定义一个不需要创建对象的方法,这种方法就是静态方法。要实现这样的效果,只需要在类中定义的方法前加上static关键字。例如:public ...
转自步行者    注解(Annotation) 为我们在代码中添加信息提供了一种形式化的方法,是我们可以在稍后 某个时刻方便地使用这些数据(通过 解析注解 来使用这些数据)。       注解的语法比较简单,除了@符号的使用以外,它基本上与java的固有语法一致,java内置了三种 注解,定义在java.lang包中。       @Override  表示当前方法是覆盖父类的方法。       @Deprecated  表示当前元素是不赞成使用的。       @SuppressWarnings 表示关闭一些不当的编译器警告信息。     下面是一个定义注解的实例   ...

Java泛型

泛型是Java SE 1.5的新特性,泛型的本质是参数化类型,也就是说所操作的数据类型被指定为一个参数。这种参数类型可以用在类、接口和方法的创建中,分别称为泛型类、泛型接口、泛型方法。   Java语言引入泛型的好处是安全简单。   在Java SE 1.5之前,没有泛型的情况的下,通过对类型Object的引用来实现参数的“任意化”,“任意化”带来的缺点是要做显式的强制类型转换,而这种转换是要求开发者对实际参数类型可以预知的情况下进行的。对于强制类型转换错误的情况,编译器可能不提示错误,在运行的时候才出现异常,这是一个安全隐患。   泛型的好处是在编译的时候检查类型安全,并且所有的强制转换 ...
事务简介   一般情况下,J2EE应用服务器支持JDBC事务、JTA(Java Transaction API)事务(一般由容器来进行管理)。通常,最好不要在程序中同时使用上述三种事务类型,比如在JTA事务中嵌套JDBC事务。第二方面,事务要在尽可能短的时间内完成,不要在不同方法中实现事务的使用(事务的嵌套要求更加良好的设计)。 JDBC事务   在JDBC中怎样将多个SQL语句组合成一个事务呢?在JDBC中,打开一个连接对象Connection时,缺省是auto-commit模式,每个SQL语句都被当作一个事务,即每次执行一个语句,都会自动的得到事务确认。为了能将多个SQL语句组合 ...
<context-param>的作用:web.xml的配置中<context-param>配置作用1. 启动一个WEB项目的时候,容器(如:Tomcat)会去读它的配置文件web.xml.读两个节点: <listener></listener> 和 <context-param></context-param> 2.紧接着,容器创建一个ServletContext(上下文),这个WEB项目所有部分都将共享这个上下文. 3.容器将<context-param></context-param>转化为 ...
一个web中完全可以没有web.xml文件,也就是说,web.xml文件并不是web工程必须的。那什么时候需要,什么时候可以不需要呢?要想回答上面的问题,得先了解web.xml文件使用来干什么的。web.xml文件是用来配置:欢迎页、servlet、filter等的。当你的web工程没用到这些时,你可以不用web.xml文件来配置你的web工程。那么web.xml能做的所有事情都有那些?其实,web.xml的模式(Schema)文件中定义了多少种标签元素,web.xml中就可以出现它的模式文件所定义的标签元素,它就能拥有定义出来的那些功能。web.xml的模式文件是由Sun公司定义的,每个web ...
装贴: SLF4J介绍   作者:终南   <li.zhongnan@hotmail.com>         SLF4J不是具体的日志解决方案,它只服务于各种各样的日志系统。按照官方的说法,SLF4J是一个用于日志系统的简单Facade,允许最终用户在部署其应用时使用其所希望的日志系统。实际上,SLF4J所提供的核心API是一些接口以及一个LoggerFactory的工厂类。从某种程度上,SLF4J有点类似JDBC,不过比JDBC更简单,在JDBC中,你需要指定驱动程序,而在使用SLF4J的时候,不需要在代码中或配置文件中指定你打算使用那个具体的日志系统。如同使用J ...
Maven的主要功能有:1.构建项目(Builds)2.文档编制(Documentation)3.报告(Reporting)4.依赖管理(Dependencies)5.配置管理(SCMs)6.发布管理(Releases) 一个很详细的教材: http://www.blogjava.net/sitinspring/category/23515.html <script type="text/javascript"></script><script src="http://pagead2.googlesyndication.com ...
 转自http://wcily123.iteye.com/blog/345221 自身类作为事件监听器 外部类作为事件监听器 匿名内部类作为事件监听器 内部类作为事件监听器 自身类作为事件监听器 : Java代码 import javax.swing.*;      import java.awt.*;      import java.awt.event.*;            /**     *Java事件处理机制:自身类作为事件监听器     *@author Winty(wintys@gmail.com)     ...
转贴: 一、数据库的存储体系   上图就是Oracle数据的存储结构。其中Tablespace就是数据逻辑区域,Segment(段)是指定逻辑结构所占用的空间集合,Extent(分区)是分配单元,一个分区可以有多个block,而block是基本分配单元。总的来说,DB>Tablespace>Segment>Extent>block,一个段可以跨几个datafile,而分区不可以,即一个段只属于一个表空间,不过可以跨两个数据文件。   二、表空间的分类 (1)、系统表空间:它是在创建数据库时创建的,包括数据字典、系统回滚段等; (2)、非系统表空间 ...
// 数据库配置文件目录 E:\oracle\ora92\network\admin\tnsnames.ora (数据库名) FWMSDB = (DESCRIPTION =     (ADDRESS_LIST =                      服务器ip       (ADDRESS = (PROTOCOL = TCP)(HOST = 10.10.6.40)(PORT = 1521))     )     (CONNECT_DATA =       (SERVICE_NAME = oracleDB)     ) ) 二. 1、利用oracle net manager工具 ...
 Oracle数据导入导出imp/exp就相当于oracle数据还原与备份。exp命令可以把数据从远程数据库服务器导出到本地的dmp文件,imp命 令可以把dmp文件从本地导入到远处的数据库服务器中。 利用这个功能可以构建两个相同的数据库,一个 ...
一个表空间只能属于一个数据库 ,每个数据库最少有一个表空间(SYSTEM表空间)。 表空间是存储方面的概念,对应物理存储文件 模式是用户定义对象的集合,对应用户 在oracle中,一个用户只能对应一个模式,但是在DB2中一个用户可以有多个模式。DB2中的用户是操作系统级别的用户。也就是说,在操作系统上建立用户,在数据库中授权。如果一个实例对应多个数据库,那么这个用户可能对应多个模式。1.用户是系统的用户,而模式是存在于数据库中的。一个用户对应多个模式有利于把不同功能域的对象区分开来,便于查找和管理。比如:可以创建syscode模式,把编码相关的表视图等放在该模式 ...
Global site tag (gtag.js) - Google Analytics