spring mvc rest风格接口

时间:2022-12-10 20:13:30
我现在用spring mvc 加上portlet组件 做的一个项目,现在要求我把之前的写好的一个对文件加密的方法改成 rest风格的接口,供别人调用  ,项目里边的框架都搭好了,不用再配置其它任何东西了,应该是只改方法就行.下面是我的方法

public  void  encryptFile(String file,String destFile,Key key) throws Exception{
key=(new EncryptionUtil(uuidKey()).getKey());
Cipher cipher = Cipher.getInstance("AES");
cipher.init(Cipher.ENCRYPT_MODE,key);
//判断密钥状态
if(getKeyState(uuidKey())==1){
InputStream is =new FileInputStream(file); 
OutputStream os = new FileOutputStream(destFile);
CipherInputStream cis = new CipherInputStream(is, cipher);
byte [] buffer = new byte [1024];  
int r;
    while ((r = cis.read(buffer)) > 0) {  
     os.write(buffer, 0, r);  
     }  
     cis.close();  
         os.close();  
     is.close();  
}else{
System.out.println("------密钥已过期-----");
}

}

怎么改?求讲解或代码,在线等

3 个解决方案

#1


做个页面让别人上传文件 和 key 处理完成后把新文件让他下载

#2


你是要改什么?不知道如何做rest,还是?

#3


@Path("encryptRest")
@Component
@Scope("request")
public class encryptResource
{
@POST
@Path("/encry")
@Produces( { MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML })
public  String  encryptFile(
@PathParam("file")String file,
@PathParam("destFile")String destFile,Key key) throws Exception
{
String Success = "Encryption of success";
String Failure = "Key has expired";
key=(new EncryptionUtil(uuidKey()).getKey());
Cipher cipher = Cipher.getInstance("AES");
cipher.init(Cipher.ENCRYPT_MODE,key);
//判断密钥状态
if(getKeyState(uuidKey())==1){
InputStream is =new FileInputStream(file); 
OutputStream os = new FileOutputStream(destFile);
CipherInputStream cis = new CipherInputStream(is, cipher);
byte [] buffer = new byte [1024];  
int r;
while ((r = cis.read(buffer)) > 0) {  
os.write(buffer, 0, r);  
 }  
 cis.close();  
 os.close();  
 is.close(); 
 return Success;
}else{
System.out.println("------密钥已过期-----");
return Failure;
}
}
}

#1


做个页面让别人上传文件 和 key 处理完成后把新文件让他下载

#2


你是要改什么?不知道如何做rest,还是?

#3


@Path("encryptRest")
@Component
@Scope("request")
public class encryptResource
{
@POST
@Path("/encry")
@Produces( { MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML })
public  String  encryptFile(
@PathParam("file")String file,
@PathParam("destFile")String destFile,Key key) throws Exception
{
String Success = "Encryption of success";
String Failure = "Key has expired";
key=(new EncryptionUtil(uuidKey()).getKey());
Cipher cipher = Cipher.getInstance("AES");
cipher.init(Cipher.ENCRYPT_MODE,key);
//判断密钥状态
if(getKeyState(uuidKey())==1){
InputStream is =new FileInputStream(file); 
OutputStream os = new FileOutputStream(destFile);
CipherInputStream cis = new CipherInputStream(is, cipher);
byte [] buffer = new byte [1024];  
int r;
while ((r = cis.read(buffer)) > 0) {  
os.write(buffer, 0, r);  
 }  
 cis.close();  
 os.close();  
 is.close(); 
 return Success;
}else{
System.out.println("------密钥已过期-----");
return Failure;
}
}
}