Initial commit
This commit is contained in:
commit
7f2b6e2530
21
.gitignore
vendored
Normal file
21
.gitignore
vendored
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
# ---> Java
|
||||||
|
*.class
|
||||||
|
|
||||||
|
# Mobile Tools for Java (J2ME)
|
||||||
|
.mtj.tmp/
|
||||||
|
|
||||||
|
# Package Files #
|
||||||
|
*.jar
|
||||||
|
*.war
|
||||||
|
*.ear
|
||||||
|
|
||||||
|
# virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml
|
||||||
|
hs_err_pid*
|
||||||
|
|
||||||
|
# IntelliJ IDEA
|
||||||
|
*.iml
|
||||||
|
.idea/
|
||||||
|
|
||||||
|
# Maven
|
||||||
|
target/
|
||||||
|
dependency-reduced-pom.xml
|
33
pom.xml
Normal file
33
pom.xml
Normal file
@ -0,0 +1,33 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<project xmlns="http://maven.apache.org/POM/4.0.0"
|
||||||
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||||
|
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
||||||
|
<modelVersion>4.0.0</modelVersion>
|
||||||
|
|
||||||
|
<groupId>eu.mikroskeem</groupId>
|
||||||
|
<artifactId>mongohackery</artifactId>
|
||||||
|
<version>1.0-SNAPSHOT</version>
|
||||||
|
|
||||||
|
<build>
|
||||||
|
<plugins>
|
||||||
|
<plugin>
|
||||||
|
<groupId>org.apache.maven.plugins</groupId>
|
||||||
|
<artifactId>maven-compiler-plugin</artifactId>
|
||||||
|
<version>3.5.1</version>
|
||||||
|
<configuration>
|
||||||
|
<source>1.8</source>
|
||||||
|
<target>1.8</target>
|
||||||
|
</configuration>
|
||||||
|
</plugin>
|
||||||
|
</plugins>
|
||||||
|
</build>
|
||||||
|
|
||||||
|
<dependencies>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.mongodb</groupId>
|
||||||
|
<artifactId>mongo-java-driver</artifactId>
|
||||||
|
<version>3.4.1</version>
|
||||||
|
</dependency>
|
||||||
|
</dependencies>
|
||||||
|
|
||||||
|
</project>
|
62
src/main/java/eu/mikroskeem/mongohackery/Main.java
Normal file
62
src/main/java/eu/mikroskeem/mongohackery/Main.java
Normal file
@ -0,0 +1,62 @@
|
|||||||
|
package eu.mikroskeem.mongohackery;
|
||||||
|
|
||||||
|
import com.mongodb.MongoClient;
|
||||||
|
import com.mongodb.client.MongoDatabase;
|
||||||
|
import com.mongodb.client.gridfs.GridFSBucket;
|
||||||
|
import com.mongodb.client.gridfs.GridFSBuckets;
|
||||||
|
import com.mongodb.client.gridfs.model.GridFSUploadOptions;
|
||||||
|
import org.bson.Document;
|
||||||
|
import org.bson.types.ObjectId;
|
||||||
|
|
||||||
|
import java.io.BufferedReader;
|
||||||
|
import java.io.ByteArrayInputStream;
|
||||||
|
import java.io.InputStream;
|
||||||
|
import java.io.InputStreamReader;
|
||||||
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
|
import static com.mongodb.client.model.Filters.eq;
|
||||||
|
|
||||||
|
public class Main {
|
||||||
|
public static void main(String... args){
|
||||||
|
new Main();
|
||||||
|
}
|
||||||
|
|
||||||
|
public Main(){
|
||||||
|
MongoClient client = new MongoClient();
|
||||||
|
MongoDatabase leTest = client.getDatabase("leTest");
|
||||||
|
GridFSBucket gridfs = GridFSBuckets.create(leTest, "files");
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Ransom data
|
||||||
|
* Should use file here actually
|
||||||
|
*/
|
||||||
|
InputStream is = new ByteArrayInputStream("topkek".getBytes());
|
||||||
|
|
||||||
|
/* Remove (if present) */
|
||||||
|
try {
|
||||||
|
gridfs.delete(gridfs.find(eq("filename", "topkek")).first().getId());
|
||||||
|
}
|
||||||
|
catch(NullPointerException ignored){}
|
||||||
|
|
||||||
|
/* Insert */
|
||||||
|
GridFSUploadOptions options = new GridFSUploadOptions()
|
||||||
|
.chunkSizeBytes(1024)
|
||||||
|
.metadata(new Document("contentType", "text/plain"));
|
||||||
|
/*
|
||||||
|
* NOTE: 'contentType' isn't standard! It is here, because I want to see
|
||||||
|
* It is there, because I tend to use it with GridFS
|
||||||
|
*/
|
||||||
|
|
||||||
|
ObjectId id = gridfs.uploadFromStream("topkek", is, options);
|
||||||
|
System.out.println(id);
|
||||||
|
|
||||||
|
/* Now read */
|
||||||
|
InputStream os = gridfs.openDownloadStream(gridfs.find(eq("filename", "topkek")).first().getId());
|
||||||
|
String res = new BufferedReader(new InputStreamReader(os))
|
||||||
|
.lines().collect(Collectors.joining("\n"));
|
||||||
|
System.out.println(res);
|
||||||
|
|
||||||
|
/* Remove */
|
||||||
|
gridfs.delete(gridfs.find(eq("filename", "topkek")).first().getId());
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user