@DatabaseTable(tableName = "users") public class User { @DatabaseField(columnName = "id", generatedId = true) private int id; @DatabaseField(columnName = "name") private String name; @DatabaseField(columnName = "age") private int age; } @DatabaseTable(tableName = "users") public class User { // ... @DatabaseField(columnName = "address_id", foreign = true, foreignAutoRefresh = true) private Address address; // ... } @DatabaseTable(tableName = "users") public class User { // ... @ForeignCollectionField(eager = true) private ForeignCollection<Order> orders; // ... } @DatabaseTable(tableName = "users") public class User { // ... @ForeignCollectionField(eager = true) private ForeignCollection<Group> groups; // ... } @DatabaseTable(tableName = "groups") public class Group { // ... @ForeignCollectionField(eager = true) private ForeignCollection<User> users; // ... } public class DatabaseConfigUtil { public static void main(String[] args) throws Exception { writeConfigFile("ormlite_config.txt"); } } public class UserDAO { private Dao<User, Integer> userDao; public UserDAO(ConnectionSource connectionSource) throws SQLException { userDao = DaoManager.createDao(connectionSource, User.class); } public void insert(User user) throws SQLException { userDao.create(user); } public void update(User user) throws SQLException { userDao.update(user); } public User queryById(int id) throws SQLException { return userDao.queryForId(id); } public List<User> queryAll() throws SQLException { return userDao.queryForAll(); } } public class Main { public static void main(String[] args) throws SQLException { String databaseUrl = "jdbc:mysql://localhost:3306/mydatabase"; String username = "root"; String password = "password"; ConnectionSource connectionSource = new JdbcConnectionSource(databaseUrl, username, password); TableUtils.createTable(connectionSource, User.class); UserDAO userDAO = new UserDAO(connectionSource); User user = new User("John", 25); userDAO.insert(user); User queriedUser = userDAO.queryById(1); connectionSource.close(); } }