diff --git a/.gitignore b/.gitignore
index 69aa72a..3a06ac7 100644
--- a/.gitignore
+++ b/.gitignore
@@ -152,3 +152,4 @@ gradle-app.setting
# JDT-specific (Eclipse Java Development Tools)
.classpath
+database.db
\ No newline at end of file
diff --git a/.idea/dataSources.xml b/.idea/dataSources.xml
new file mode 100644
index 0000000..be81b15
--- /dev/null
+++ b/.idea/dataSources.xml
@@ -0,0 +1,17 @@
+
+
+
+
+ sqlite.xerial
+ true
+ org.sqlite.JDBC
+ jdbc:sqlite:C:\Users\svtra\IdeaProjects\OSQL4J\database.db
+ $ProjectFileDir$
+
+
+ file://$APPLICATION_CONFIG_DIR$/jdbc-drivers/Xerial SQLiteJDBC/3.39.2/sqlite-jdbc-3.39.2.jar
+
+
+
+
+
\ No newline at end of file
diff --git a/build.gradle b/build.gradle
index d2ac8a8..5b2d6fb 100644
--- a/build.gradle
+++ b/build.gradle
@@ -5,7 +5,7 @@ plugins {
}
group 'tech.nevets.osql4j'
-version '1.1.0'
+version '1.1.1'
sourceCompatibility = JavaVersion.VERSION_17
targetCompatibility = JavaVersion.VERSION_17
diff --git a/src/main/java/tech/nevets/osql4j/SQLConnection.java b/src/main/java/tech/nevets/osql4j/SQLConnection.java
index 8619ae5..cee0fce 100644
--- a/src/main/java/tech/nevets/osql4j/SQLConnection.java
+++ b/src/main/java/tech/nevets/osql4j/SQLConnection.java
@@ -213,7 +213,7 @@ public class SQLConnection {
try {
String sql = "CREATE TABLE IF NOT EXISTS " +
clazz.getSimpleName() +
- " (id INT PRIMARY KEY, " +
+ " ( " +
sqlFormattedFields +
" );";
statement.executeUpdate(sql);
@@ -257,7 +257,7 @@ public class SQLConnection {
}
private List getFields() {
- List fieldsList = new ArrayList<>(List.of(clazz.getDeclaredFields()));
+ List fieldsList = new ArrayList<>();
for (Class> c = clazz; c != null; c = c.getSuperclass()) {
fieldsList.addAll(Arrays.asList(c.getDeclaredFields()));
}
diff --git a/src/test/java/NewDBTest.java b/src/test/java/NewDBTest.java
new file mode 100644
index 0000000..93040aa
--- /dev/null
+++ b/src/test/java/NewDBTest.java
@@ -0,0 +1,11 @@
+import examplebeans.Animal;
+import tech.nevets.osql4j.SQLConnection;
+
+public class NewDBTest {
+ public static void main(String[] args) {
+ SQLConnection.setGlobalDBLocation("./database.db");
+ SQLConnection connection = new SQLConnection<>(Animal.class);
+ connection.writeObject(new Animal("Fuzzy", 6, "brown"));
+ connection.close();
+ }
+}
diff --git a/src/test/java/examplebeans/Animal.java b/src/test/java/examplebeans/Animal.java
new file mode 100644
index 0000000..503cbc4
--- /dev/null
+++ b/src/test/java/examplebeans/Animal.java
@@ -0,0 +1,44 @@
+package examplebeans;
+
+public class Animal {
+ private String name;
+ private int age;
+ private String color;
+
+ public Animal() {}
+
+ public Animal(String name, int age, String color) {
+ this.name = name;
+ this.age = age;
+ this.color = color;
+ }
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public int getAge() {
+ return age;
+ }
+
+ public void setAge(int age) {
+ this.age = age;
+ }
+
+ public String getColor() {
+ return color;
+ }
+
+ public void setColor(String color) {
+ this.color = color;
+ }
+
+ @Override
+ public String toString() {
+ return "Animal: " + name + ", " + age + ", " + color;
+ }
+}
diff --git a/src/test/java/examplebeans/Cat.java b/src/test/java/examplebeans/Cat.java
new file mode 100644
index 0000000..e0d805a
--- /dev/null
+++ b/src/test/java/examplebeans/Cat.java
@@ -0,0 +1,5 @@
+package examplebeans;
+
+public class Cat extends Animal {
+
+}
diff --git a/src/test/java/examplebeans/Dog.java b/src/test/java/examplebeans/Dog.java
new file mode 100644
index 0000000..48151f5
--- /dev/null
+++ b/src/test/java/examplebeans/Dog.java
@@ -0,0 +1,4 @@
+package examplebeans;
+
+public class Dog extends Animal {
+}