首页 技术 正文
技术 2022年11月13日
0 收藏 806 点赞 2,367 浏览 2774 个字

前言

此文档翻译于第一次学习 ORMLite 框架,如果发现当中有什么不对的地方,请指正。若翻译与原文档出现任何的不相符,请以原文档为准。原则上建议学习原英文文档

———————————————————————————————-

一、入门

1.1 下载 ORMLite Jar

为了开始使用 ORMLite,您需要下载的 jar 文件。ORMLite 发布包是一个默认库,不过相关的 jar文件也可以从 Maven 仓库和 Sourceforge 获取。

通过 JDBC 连接 SQL 数据库的用户需要下载 ormlite-jdbc-4.48.jar 和 ormlite-core-4.48.jar 两个文件。对于在安卓应用中的使用来说,你需要下载 ormlite-android-4.48.jar 和 ormlite-core-4.48.jar 两个文件。在有 ORMlite 后台实现的 JDBC中 或者是 Android 中你都需要 ormlite-core 发布包。ORMLite 没有任何外部依赖,即使可能有你想用的其他选用包。请参阅外部依赖项。代码适用于 Java 5 或更高版本。

1.2 配置一个 POJO

下面是个 POJO 通过使用ORMlite 注解配置持久化到数据的例子。@DatabaseTable 注解配置 Access 类到数据库名为 accounts 的表。@DatabaseField 注解映射 Account 中的每个字段到数据库中相同名字的字段。

name 字段配置为数据库表的主键通过使用 id=true 注解字段。并且,值得一提的是一个无参的构造器是必须的,这样的话通过查询可以返回一个对象。(JPA 注释和其他方法来配置类) 的详细信息请参阅后来在手册的类安装程序信息。请参阅设置您的类

@DatabaseTable(tableName = "accounts")
public class Account { @DatabaseField(id = true)
private String name;
@DatabaseField
private String password; public Account() {
// ORMLite needs a no-arg constructor
}
public Account(String name, String password) {
this.name = name;
this.password = password;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
}

1.3 配置一个 DAO

典型的 Java 模式是将数据访问对象 (DAO) 类中的数据库操作分离。每个 DAO 未每一个需要持久化的 POJO 提供了增、删、改等类型的功能。建立一个 DAO 的简单方法是使用 DaoManager 类上的 createDao 静态方法。例如,为上面的 Accout 类创建一个 DAO 你可以这样做:

Dao<Account, String> accountDao =
DaoManager.createDao(connectionSource, Account.class);
Dao<Order, Integer> orderDao =
DaoManager.createDao(connectionSource, Order.class);

更多有关如何设置 DAOs 的信息是可用后来在手册。请参阅一节DAOs 设置了

1.4 代码示例

此示例使用本机 Java H2 数据库创建内存中测试数据库。如果你需要运行下面的示例代码,你需要下载 H2 的 jar 文件添加到您的 ClassPath。注:Android 用户请参阅 Android的示例代码

该代码按照下面的步骤执行。

  1. 创建一个 connection source,用来连接数据库。
  2. 为 Account 对象实例化一个 DAO。
  3. 在数据库中创建 accounts 表。如果表已经创建过了,这一步就不必执行了。
public class AccountApp {    public static void main(String[] args) throws Exception {        // this uses h2 by default but change to match your database
String databaseUrl = "jdbc:h2:mem:account";
// create a connection source to our database
ConnectionSource connectionSource =
new JdbcConnectionSource(databaseUrl); // instantiate the dao
Dao<Account, String> accountDao =
DaoManager.createDao(connectionSource, Account.class); // if you need to create the 'accounts' table make this call
TableUtils.createTable(connectionSource, Account.class);
//Once we have configured our database objects, we can use them to persist an Account to the database and query for it from the database by its ID: // create an instance of Account
Account account = new Account();
account.setName("Jim Coakley"); // persist the account object to the database
accountDao.create(account); // retrieve the account from the database by its id field (name)
Account account2 = accountDao.queryForId("Jim Coakley");
System.out.println("Account: " + account2.getName()); // close the connection source
connectionSource.close();
}
}

通过这些要点你应该能够开始使用 ORMLite。为了理解 ORMlite 更多有效的功能,继续学习下一章。

相关推荐
python开发_常用的python模块及安装方法
adodb:我们领导推荐的数据库连接组件bsddb3:BerkeleyDB的连接组件Cheetah-1.0:我比较喜欢这个版本的cheeta…
日期:2022-11-24 点赞:878 阅读:9,492
Educational Codeforces Round 11 C. Hard Process 二分
C. Hard Process题目连接:http://www.codeforces.com/contest/660/problem/CDes…
日期:2022-11-24 点赞:807 阅读:5,907
下载Ubuntn 17.04 内核源代码
zengkefu@server1:/usr/src$ uname -aLinux server1 4.10.0-19-generic #21…
日期:2022-11-24 点赞:569 阅读:6,740
可用Active Desktop Calendar V7.86 注册码序列号
可用Active Desktop Calendar V7.86 注册码序列号Name: www.greendown.cn Code: &nb…
日期:2022-11-24 点赞:733 阅读:6,494
Android调用系统相机、自定义相机、处理大图片
Android调用系统相机和自定义相机实例本博文主要是介绍了android上使用相机进行拍照并显示的两种方式,并且由于涉及到要把拍到的照片显…
日期:2022-11-24 点赞:512 阅读:8,132
Struts的使用
一、Struts2的获取  Struts的官方网站为:http://struts.apache.org/  下载完Struts2的jar包,…
日期:2022-11-24 点赞:671 阅读:5,295