I often wonder why this life must be so difficult, I don’t quite understand it at times, I mean we’re here right? So that must mean something , but I’m not sure I understand what that something is? If that makes sense. I wish I had a clue what to do about it. I mean, come on, there’s got to be a way to get through this life without us constantly going to war with each other. Whatever the problem is in life, we have got to find out a way to get past it. It’s got to be made manifest in some shape or form. I do not understand why this life has to be the way it is, it feels so different than anything else in this universe, at least to me it does. Maybe I’m not making much sense, but I do know this. If we don’t grasp life and understand it, we will be left with nothing. Do we want to be left with nothing? I’m not sure we do. If we are left with nothing, what’s the purpose of this life? I’n not sure I can justify an answer for that. It would be nice to be able to figure out something in th...
This database program is simple, it uses the sqlite jar for connecting to the SQLite database.
It can store a file's text in a database, update that text, and extract that text back out to it's original file name.
It's pretty quick and dirty. There might be better ways to handle some of it, but I just wanted to make sure it would do what I wanted it to do.
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.io.File;
import java.io.IOException;
import java.nio.charset.StandardCharsets;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
public class Sample {
private Connection conn = null;
public Sample() {
}
public void init() {
try {
String url = "jdbc:sqlite:sample.db";
conn = DriverManager.getConnection(url);
} catch (SQLException e) {
e.printStackTrace();
}
}
public void saveData(String filename) {
try {
String fileContent = new String(Files.readAllBytes(Paths.get(filename)));
String sql = "insert into files(name, content) values(?,?)";
PreparedStatement pstmt = conn.prepareStatement(sql);
pstmt.setString(1, filename);
pstmt.setString(2, fileContent);
pstmt.executeUpdate();
} catch (IOException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
}
}
public void updateData(String filename) {
try {
String fileContent = new String(Files.readAllBytes(Paths.get(filename)));
String sql = "update files set content = ? where name = ?";
PreparedStatement pstmt = conn.prepareStatement(sql);
pstmt.setString(1, fileContent);
pstmt.setString(2, filename);
pstmt.executeUpdate();
} catch (IOException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
}
}
public void exportData(String id) {
StringBuilder sb = new StringBuilder();
String sql = "select * from files where id = ?";
ResultSet rs = null;
try {
PreparedStatement pst = conn.prepareStatement(sql);
pst.setString(1, id);
rs = pst.executeQuery();
while (rs.next()) {
Path path = Paths.get(rs.getString("name"));
Files.writeString(path, rs.getString("content"), StandardCharsets.UTF_8);
}
} catch (SQLException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
public static void main(String[] args) {
if (args.length != 2) {
System.err.println("ERROR: You must provide two arguments.");
System.err.println("insert or update");
System.err.println("filename to insert or update");
return;
}
Sample sample = new Sample();
sample.init();
if (args[0].equals("insert")) {
sample.saveData(args[1]);
} else if (args[0].equals("update")) {
sample.updateData(args[1]);
} else if (args[0].equals("export")) {
sample.exportData(args[1]);
}
}
}
Comments
Post a Comment