重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
2. 下载 jackrabbit-standalone-2.10.1.jar,打开服务:java -jar jackrabbit-standalone-2.10.1.jar --port 7000
成都创新互联公司于2013年成立,公司以网站建设、成都做网站、系统开发、网络推广、文化传媒、企业宣传、平面广告设计等为主要业务,适用行业近百种。服务企业客户上1000家,涉及国内多个省份客户。拥有多年网站建设开发经验。为企业提供专业的网站建设、创意设计、宣传推广等服务。 通过专业的设计、独特的风格,为不同客户提供各种风格的特色服务。3.
public class JackRabbitFileServiceImpl implements FileService {
private static Repository repository;
public static Session initSession(){
Session session=null;
if(null==repository){
try {
repository=new URLRemoteRepository(ReadConfig.getValue("file.rmi"));
}catch (MalformedURLException e) {
// TODO Auto-generated catch block e.printStackTrace();
}
}
try {
session=repository.login(new SimpleCredentials("admin","admin".toCharArray()));
}catch (LoginException e) {
// TODO Auto-generated catch block e.printStackTrace();
}catch (RepositoryException e) {
// TODO Auto-generated catch block e.printStackTrace();
}
return session;
}
@Override
public String save(InputStream is, long filesize) {
String fileId=KeyProvider.getPrimaryKey();
try{
Session session=initSession();
Node root= session.getRootNode();
String mimeType= "application/octet-stream";
Node fileNode= root.addNode(fileId, "nt:file");
Node resNode= fileNode.addNode("jcr:content", "nt:resource");
resNode.setProperty("jcr:mimeType", mimeType);
resNode.setProperty("jcr:encoding", "");
resNode.setProperty("jcr:data", is);
Calendar lastModified= Calendar.getInstance();
resNode.setProperty("jcr:lastModified", lastModified);
session.save();
is.close();
session.logout();
}catch(Exception e){
e.printStackTrace();
}
return fileId;
}
@Override
public InputStream getFileById(String fileId) {
InputStream is=null;
try{
Session session=initSession();
Node root= session.getRootNode();
if(root!=null){
NodeIterator filenodes= root.getNodes(fileId);
while (filenodes.hasNext()) {
Node n= filenodes.nextNode();
NodeIterator ni1= n.getNodes();
while (ni1.hasNext()) {
Node n1= ni1.nextNode();
if (n1.getName().equals("jcr:content")) {
is= n1.getProperty("jcr:data")
.getStream();
}
}
}
}
session.logout();
}catch(Exception e){
e.printStackTrace();
}
return is;
}
}