Introduction
When it came to using an ORM Lib in java I used ORMLite before. It worked quite well, but I didn't like the query builder.
Another thing was that I wanted to have control over the JDBC Wrapper to have a simple way of implementing an auto-reconnect function, if it gets disconnected for some reason.
I finally decided to make an own ORM that fits my needs and here it is.
Documentation
You can find the current docs on our website. This is a work-in-progress project though so it's not yet complete.
Example usage
Model
@Dates @SoftDelete class User extends Model { @Column int id; @Column String name; @Column Timestamp createdAt; @Column Timestamp updatedAt; @Column Timestamp deletedAt; }
Usage
//Create connection, initialize repos SQL sql = new MySQL("localhost",3306,"mydb","myuser","changeme1234"); ORMConfig config = new ORMConfig().setDefaultSize(255); //optional Repo<User> repo = ORM.register(User.class, sql, config); //Create the table if it doesn't exist (optional) repo.migrate(); //Print all usernames for(User user : Repo.get(User.class).all()){ System.out.println(user.name); }
Maven
Dependency
<dependency> <groupId>org.javawebstack</groupId> <artifactId>orm</artifactId> <version>1.0.1</version> </dependency>
Driver
You also need to add the driver you want to use. JavaWebStack ORM comes with a wrapper for com.mysql.jdbc.Driver, but you can also create an own wrapper implementing the interface SQL.
<dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>8.0.27</version> <scope>compile</scope> </dependency>