diff --git a/README.md b/README.md
index e973ee8..aa446f3 100644
--- a/README.md
+++ b/README.md
@@ -15,9 +15,12 @@
MySQL Toolkit
## About The Project
-This is a small project for quickly managing a MySQL database in Java. It makes everyday life with a database much easier.
-### Installation
+This is a small project for quickly managing a MySQL database in Java. It makes everyday life with a database much
+easier.
+
+### Installation
+
1. Add the jitpack repository to your `pom.xml`
```xml
@@ -37,186 +40,197 @@ This is a small project for quickly managing a MySQL database in Java. It makes
```
### Usage Examples
+
1. Create a connection
- - Example of a constructor without optional specifications
+ - Example of a constructor without optional specifications
```java
MySQLConnection connection = new MySQLConnection(hostname, username, password, database).connect();
```
- - Example of a constructor with optional login parameters
+ - Example of a constructor with optional login parameters
```java
MySQLConnection connection = new MySQLConnection(hostname, username, password, database, LoginParam.AUTO_RECONNECT, LoginParam.NO_SSL).connect();
```
#### Login Parameters
- - DEFAULT *(useSSL=false&autoReconnect=true&useUnicode=yes&characterEncoding=UTF-8&useTimezone=true&serverTimezone=UTC)*
- - NO_SSL *(useSSL=false)*
- - USE_SSL *(useSSL=true)*
- - AUTO_RECONNECT *(autoReconnect=true)*
- - UTF8_ENCODING *(characterEncoding=UTF-8)*
- - USE_UNICODE *(useUnicode=yes)*
- - USE_TIMEZONE *(useTimezone=true)*
- - TIMEZONE_UTC *(serverTimezone=UTC)*
+ - DEFAULT *(
+ useSSL=false&autoReconnect=true&useUnicode=yes&characterEncoding=UTF-8&useTimezone=true&serverTimezone=UTC)*
+ - NO_SSL *(useSSL=false)*
+ - USE_SSL *(useSSL=true)*
+ - AUTO_RECONNECT *(autoReconnect=true)*
+ - UTF8_ENCODING *(characterEncoding=UTF-8)*
+ - USE_UNICODE *(useUnicode=yes)*
+ - USE_TIMEZONE *(useTimezone=true)*
+ - TIMEZONE_UTC *(serverTimezone=UTC)*
2. Perform a default SQL query
- - Get a ResultSet
- ```java
- connection.getResultSet("SELECT * FROM example WHERE test = ?", "test1");
- ```
- - Perform an update
- ```java
- connection.update("UPDATE example SET test = ? WHERE abc = ?", "test1", "test2");
- ```
+ - Get a ResultSet
+ ```java
+ connection.getResultSet("SELECT * FROM example WHERE test = ?", "test1");
+ ```
+ - Perform an update
+ ```java
+ connection.update("UPDATE example SET test = ? WHERE abc = ?", "test1", "test2");
+ ```
3. Get something from a table with managers
- 1. Getting a string from the table
- ```java
- String value = connection.getResult("query", "parameters")
- .getString("column");
- ```
- 2. Getting a list from the table
- ```java
- ArrayList list = connection.getResult("query", "parameters")
- .getList("column");
- ```
- or
- ```java
- ArrayList> list = connection.getResult("query", "parameters")
- .getList();
- ```
- 4. Choosing Results
- ```java
- connection
- .selectFrom("table")
- .where("column", "value")
- .limit(10)
- .getResult();
- ```
- 5. Choosing Results with custom parameters
- ```java
- connection.select()
- .from("table")
+ 1. Getting a string from the table
+ ```java
+ String value = connection.getResult("query", "parameters")
+ .getString("column");
+ ```
+ 2. Getting a list from the table
+ ```java
+ ArrayList list = connection.getResult("query", "parameters")
+ .getList("column");
+ ```
+ or
+ ```java
+ ArrayList> list = connection.getResult("query", "parameters")
+ .getList();
+ ```
+ 4. Choosing Results
+ ```java
+ connection
+ .selectFrom("table")
.where("column", "value")
- .add("LIMIT 2,5")
+ .limit(10)
.getResult();
- ```
+ ```
+ 5. Choosing Results with custom parameters
+ ```java
+ connection.select()
+ .from("table")
+ .where("column", "value")
+ .add("LIMIT 2,5")
+ .getResult();
+ ```
4. Perform an update using managers
- 1. Update a Table
- ```java
- connection
- .updateTo("table")
- .where("column", "value")
- .set("column", "newValue")
- .execute();
- ```
- 2. Generate a Table
- ```java
- connection
- .generateTable("table")
- .addField(SQLType.STRING, "column", 999)
- .addField(SQLType.STRING, "column2", 25)
- .create();
- ```
- 3. Delete something from a table
- ```java
- connection
- .deleteFrom("table")
- .where("column", "value")
- .execute();
- ```
+ 1. Update a Table
+ ```java
+ connection
+ .updateTo("table")
+ .where("column", "value")
+ .set("column", "newValue")
+ .execute();
+ ```
+ 2. Generate a Table
+ ```java
+ connection
+ .generateTable("table")
+ .addField(SQLType.STRING, "column", 999)
+ .addField(SQLType.STRING, "column2", 25)
+ .create();
+ ```
+ 3. Delete something from a table
+ ```java
+ connection
+ .deleteFrom("table")
+ .where("column", "value")
+ .execute();
+ ```
5. The use of the table factory
- 1. Create a new table class
- ```java
- import de.gnmyt.SQLToolkit.drivers.MySQLConnection;
- import de.gnmyt.SQLToolkit.storage.SQLTable;
-
- public class ExampleTable extends SQLTable {
-
- public ExampleTable(MySQLConnection connection) {
- super(connection);
- }
-
- @Override
- protected String tableName() {
- return "example";
- }
-
- @Override
- protected void tableFields() {
- string("column1", 255, "default");
- string("colum2", 100, "test2");
- integer("colum3", 2, "");
- }
-
- public void addSomething() {
- insert()
- .value("column1", "test")
- .value("colum3", 52)
- .execute();
- }
-
- public void deleteUser() {
- delete()
- .where("column1", "test")
- .execute();
- }
- }
- ```
- 2. Register your table
- ```java
- connection.getTableFactory().register(new ExampleTable(connection));
- ```
- 3. Now you can access your table from everywhere
- ```java
- ((ExampleTable) connection.getTableFactory().getTable(ExampleTable.class))
- .addSomething();
- ```
+ 1. Create a new table class
+ ```java
+ import de.gnmyt.SQLToolkit.drivers.MySQLConnection;
+ import de.gnmyt.SQLToolkit.storage.SQLTable;
+
+ public class ExampleTable extends SQLTable {
+
+ public ExampleTable(MySQLConnection connection) {
+ super(connection);
+ }
+
+ @Override
+ protected String tableName() {
+ return "example";
+ }
+
+ @Override
+ protected void tableFields() {
+ string("column1", 255, "default");
+ string("colum2", 100, "test2");
+ integer("colum3", 2, "");
+ }
+
+ public void addSomething() {
+ insert()
+ .value("column1", "test")
+ .value("colum3", 52)
+ .execute();
+ }
+
+ public void deleteUser() {
+ delete()
+ .where("column1", "test")
+ .execute();
+ }
+ }
+ ```
+ 2. Register your table
+ ```java
+ connection.getTableFactory().register(new ExampleTable(connection));
+ ```
+ 3. Now you can access your table from everywhere
+ ```java
+ ((ExampleTable) connection.getTableFactory().getTable(ExampleTable.class))
+ .addSomething();
+ ```
6. The use of the table factory with storage mediums
- 1. Create a new storage medium class
- ```java
- import de.gnmyt.SQLToolkit.drivers.MySQLConnection;
- import de.gnmyt.SQLToolkit.storage.SQLStorageMedium;
+ 1. Create a new storage medium class
+ ```java
+ import de.gnmyt.SQLToolkit.drivers.MySQLConnection;
+ import de.gnmyt.SQLToolkit.storage.SQLStorageMedium;
+
+ public class ExampleStorage extends SQLStorageMedium {
+
+ public ExampleStorage(MySQLConnection connection) {
+ super(connection);
+ }
+
+ @Override
+ protected String tableName() {
+ return "example_storage";
+ }
+ }
+ ```
+ 2. Register your storage
+ ```java
+ connection.getTableFactory().register(new ExampleStorage(connection));
+ ```
+ 3. Now you can access your storage medium from everywhere. Try something like that:
+ ```java
+ SQLStorageMedium storage = connection.getTableFactory().getStorage(ExampleStorage.class);
+
+ storage.insert("username", "test");
+ String username = storage.get("username");
+ storage.delete("username");
+
+ storage.insertOrUpdate("version", "1.0.0");
+
+ storage.getEntries();
+ ```
- public class ExampleStorage extends SQLStorageMedium {
-
- public ExampleStorage(MySQLConnection connection) {
- super(connection);
- }
-
- @Override
- protected String tableName() {
- return "example_storage";
- }
- }
- ```
- 2. Register your storage
- ```java
- connection.getTableFactory().register(new ExampleStorage(connection));
- ```
- 3. Now you can access your storage medium from everywhere.
- Try something like that:
- ```java
- SQLStorageMedium storage = connection.getTableFactory().getStorage(ExampleStorage.class);
-
- storage.insert("username", "test");
- String username = storage.get("username");
- storage.delete("username");
-
- storage.insertOrUpdate("version", "1.0.0");
-
- storage.getEntries();
- ```
-
## License
Distributed under the MIT License. See `LICENSE` for more information.
## End
-Currently there are not many features yet, so feel free to write me some suggestions!
+
+Currently, there are not many features yet, so feel free to write me some suggestions!
[contributors-shield]: https://img.shields.io/github/contributors/gnmyt/sqltoolkit.svg?style=for-the-badge
+
[contributors-url]: https://github.com/gnmyt/sqltoolkit/graphs/contributors
+
[forks-shield]: https://img.shields.io/github/forks/gnmyt/sqltoolkit.svg?style=for-the-badge
+
[forks-url]: https://github.com/gnmyt/sqltoolkit/network/members
+
[stars-shield]: https://img.shields.io/github/stars/gnmyt/sqltoolkit.svg?style=for-the-badge
+
[stars-url]: https://github.com/gnmyt/sqltoolkit/stargazers
+
[issues-shield]: https://img.shields.io/github/issues/gnmyt/sqltoolkit.svg?style=for-the-badge
+
[issues-url]: https://github.com/gnmyt/sqltoolkit/issues
+
[license-shield]: https://img.shields.io/github/license/gnmyt/sqltoolkit.svg?style=for-the-badge
+
[license-url]: https://github.com/gnmyt/sqltoolkit/blob/master/LICENSE.txt