JAVA 代理模式
动态代理:
public interface Qingke {
void qk();
}
public class dsz implements Qingke{
public void qk() {
System.out.print("dsz qk");
}
}
public class Secretary implements InvocationHandler {
private Object pro;
private dsz dsz;
public Object bind(Object deledate){
this.pro = deledate;
return Proxy.newProxyInstance(deledate.getClass().getClassLoader(), deledate.getClass().getInterfaces(), this);
}
@Override
public Object invoke(Object proxy, Method method, Object[] args)
throws Throwable {
method.invoke(pro, args);
return null;
}
}
test:
public class ProxyTest {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
dsz dsz1 = new dsz();
Qingke se = (Qingke)new Secretary().bind(dsz1);
se.qk();
}
}
相关文档:
MSSQL中提供了个datediff函数用来对两个时间进行减法操作,但在Java中却没有,如果我们想知道两个日期间相隔了多少天,或是相隔了多少个小时则要手工计算。下面代码模仿MSSQL的datediff函数提供了使用不同时间间隔来计算两个时间相差的时间间隔的数目,比如timeInterval为day则返回相差的天数,为month则返回相差的月数 ......
服务器端:
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.net.ServerSocket;
import java.net.Socket;
public class ThreadSocketServer extends Thread {
private Socket client;
&n ......
1先看一下程序:
package com.redking.jdbc.demo;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;
public class JDBCDemo07 {
......
import java.io.IOException;
public class test {
/**
* 编码
* @param filecontent
* @return String
*/
public static String encode(byte[] bstr){
return new sun.misc.BASE64Encoder().encode(bstr);
}
/**
* 解码
* @param filecontent
* @return string
*/
public static ......