first commit
This commit is contained in:
91
docs/examples.md
Normal file
91
docs/examples.md
Normal file
@@ -0,0 +1,91 @@
|
||||
# Feature Examples
|
||||
|
||||
## 1) Auto ID after insert
|
||||
|
||||
```java
|
||||
PlayerModel player = new PlayerModel();
|
||||
player.setName("Steve");
|
||||
api.orm().insert(player);
|
||||
long id = player.getId();
|
||||
```
|
||||
|
||||
## 2) snake_case default
|
||||
|
||||
```java
|
||||
class PlayerStats {
|
||||
private int totalKills;
|
||||
}
|
||||
// table: player_stats, column: total_kills
|
||||
```
|
||||
|
||||
## 3) findOneWhere & deleteWhere
|
||||
|
||||
```java
|
||||
PlayerModel one = api.orm().findOneWhere(
|
||||
PlayerModel.class,
|
||||
"level >= ?",
|
||||
java.util.Collections.singletonList(10)
|
||||
);
|
||||
|
||||
int deleted = api.orm().deleteWhere(
|
||||
PlayerModel.class,
|
||||
"level < ?",
|
||||
java.util.Collections.singletonList(1)
|
||||
);
|
||||
```
|
||||
|
||||
## 4) @DbColumn(length/unique/nullable)
|
||||
|
||||
```java
|
||||
@DbColumn(length = 32, unique = true, nullable = false)
|
||||
private String username;
|
||||
```
|
||||
|
||||
## 5) findWhere with order/limit/offset
|
||||
|
||||
```java
|
||||
List<PlayerModel> page = api.orm().findWhere(
|
||||
PlayerModel.class,
|
||||
"level >= ?",
|
||||
java.util.Collections.singletonList(10),
|
||||
"level DESC",
|
||||
10,
|
||||
0
|
||||
);
|
||||
```
|
||||
|
||||
## 6) Query Builder
|
||||
|
||||
```java
|
||||
List<PlayerModel> top = api.orm().query(PlayerModel.class)
|
||||
.where("level >= ?", 10)
|
||||
.orderBy("level DESC")
|
||||
.limit(10)
|
||||
.list();
|
||||
```
|
||||
|
||||
## 7) Query Builder + Fluent Conditions + Join
|
||||
|
||||
```java
|
||||
import static com.andrewkydev.database.orm.Conditions.*;
|
||||
|
||||
List<PlayerModel> rows = api.orm().query(PlayerModel.class)
|
||||
.select("players.*")
|
||||
.join("LEFT JOIN clans ON clans.id = players.clan_id")
|
||||
.where(eq("players.status", "ACTIVE").and(gt("players.level", 10)))
|
||||
.groupBy("players.id")
|
||||
.having("COUNT(clans.id) > ?", 0)
|
||||
.orderBy("players.level DESC")
|
||||
.limit(10, 0)
|
||||
.list();
|
||||
```
|
||||
|
||||
## 8) Custom types (UUID/JSON)
|
||||
|
||||
```java
|
||||
@DbJson
|
||||
private java.util.Map<String, Object> metadata;
|
||||
|
||||
// UUID is built-in. Custom type example:
|
||||
api.orm().registerAdapter(MyType.class, new TypeAdapter<MyType>() { ... });
|
||||
```
|
||||
Reference in New Issue
Block a user