怎么把连接数据库的系统变成不用连数据库的演示版本POC

来源:互联网 发布:淘宝店铺流量怎么提升 编辑:程序博客网 时间:2024/04/29 04:28

最近公司需要将一个系统提取POC版本,用于新客户的开发演示,但这个系统的数据是从数据库查出来都,且很多流程都是要查数据库的,没有数据库根本跑不起来。

为了解决这个问题我想到了一个用数据流缓存数据都方法,顺便提示下,有了这个方法以后所有自己开发的系统都可以提取出能跑的不用连数据库的演示版本了。

步骤:

1.写一个将数据缓存到文件的类:

package com.isoftstone.mipss.common.util;
import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;


import com.isoftstone.mipss.cacheData.Cachelocation;
import com.isoftstone.mipss.entity.login.User;


public class ObjectCache {
public static  String cachePath ="
D:\\datacache";
public static void writeObj(Object obj,String fileName)  {
try{
ObjectOutputStream objOut = new ObjectOutputStream(new BufferedOutputStream(new FileOutputStream(cachePath+fileName+".bin")));
objOut.writeObject(obj);
objOut.flush();
objOut.close();
}catch (Exception e) {
e.printStackTrace();
}

}
public static Object
writeObj( String cacheFile) {
Object obj  = null;
try{
ObjectInputStream objIn = new ObjectInputStream(new BufferedInputStream(new FileInputStream(cachePath+cacheFile+".bin")));
obj = objIn.readObject();
objIn.close();
return obj;
}catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}
return obj;
}
}

2.在action层需要查数据库的方法后加上writeObj方法将数据写入缓存文件

3.在writeObj方法的后面加上readObj从文件读取数据并赋值给相应的对象

4.再连接数据库的条件下跑一遍系统(在此时回将所有的流程数据缓存到文件中)。

5.屏蔽action中操作数据库方法及writeObj方法(因为此时我们已经将数据缓存了不需要再读数据库和写缓存数据)

6.断开数据库连接,测试是否能跑流程。

0 0
原创粉丝点击