赞
踩
mongdb非关系性数据库,提供了可以存储文件的方式,其实多数那MongoDB用来存储日志或者做一些自定义表单等功能
废话不多说,看代码吧
Gradle导入的包
dependencies {
compile 'org.mongodb:mongodb-driver:3.3.0'
}
测试代码
//上传 private static void uploadFile() throws IOException { //获取MongoDB的链接 ip地址和端口号(版本不同方式可能不同) //真实使用可以通过springboot本身提供的MongoDB的注入模板 MongoClient client = new MongoClient("127.0.0.1", 27017); //数据库的名称 DB mydb = client.getDB("local"); //获取文件,正式通过前台传递 File f = new File("D://rabbitMQ.txt"); GridFS myFS = new GridFS(mydb); //去创建文件储存表 GridFSInputFile inputFile = myFS.createFile(f); //保存 inputFile.save(); //关闭连接 client.close(); } //下载 private static void downloadFile(String fileName, HttpServletRequest request, HttpServletResponse response) throws Exception { //获取MongoDB的链接 ip地址和端口号(版本不同方式可能不同) //真实使用可以通过springboot本身提供的MongoDB的注入模板 MongoClient client = new MongoClient("127.0.0.1", 27017); //数据库的名称 DB mydb = client.getDB("local"); //通过GridFS的方式去存储数据 GridFS myFS = new GridFS(mydb); //第一种找到存储文件(文件fileName) GridFSDBFile one = myFS.findOne(fileName); //第二种找到存储文件(文件files_id) // GridFSDBFile one = myFS.findOne("5edde513fcfa1b10ec65187a"); //第三种种找到存储文件(文件files_id) //Query query = Query.query(Criteria.where("_id").is(fileId)); // GridFSDBFile one = myFS.findOne(query); if (one == null) { return; } System.out.println("-----------------------------------------------------------"+fileName); if (request.getHeader("User-Agent").toUpperCase().contains("MSIE"
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。