package org.bjrms;
import java.io.File;
import java.io.FileInputStream;
import java.io.InputStream;
import java.util.ArrayList;
import java.util.List;
import org.junit.Test;
public class MemCachedManagerTest {
private static MemCachedManager cache;
private byte data[];
@Test
public void insertImage() throws Exception{
File image=new File("C:\\Users\\Administrator\\Desktop\\1.png");
InputStream input=new FileInputStream(image);
data=new byte[1024];
List<byte[]> list =new ArrayList<byte[]>();
int length=-1;
while((length=input.read(data))!=-1){
if(length<1024){
byte data2[]=new byte[length];
for(int i=0;i<length;i++){
data2[i]=data[i];
}
data=data2;
}
byte data3[]=new byte[length];
for(int i=0;i<data.length;i++){
data3[i]=data[i];
}
list.add(data3);
}
cache.add("image", list);
}
static{
cache = MemCachedManager.getInstance();
}
}
获取图片并返回
package org.bjrms.action;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.io.PrintWriter;
import java.util.ArrayList;
import java.util.List;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.bjrms.MemCachedManager;
public class ImageEngine extends HttpServlet {
private static MemCachedManager cache=MemCachedManager.getInstance();
/**
* Constructor of the object.
*/
public ImageEngine() {
super();
}
/**
* Destruction of the servlet. <br>
*/
public void destroy() {
super.destroy(); // Just puts "destroy" string in log
// Put your code here
}
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doPost(request, response);
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("image/png");
OutputStream out=response.getOutputStream();
List<byte[]>list=(List<byte[]>) cache.get("image");
for(int i=0;i<list.size();i++){
byte data[]=list.get(i);
out.write(data, 0, data.length);
}
out.flush();
out.close();
}
/**
* Initialization of the servlet. <br>
*
* @throws ServletException if an error occurs
*/
public void init() throws ServletException {
// Put your code here
}
}