前言

此文档翻译于第一次学习 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 更多有效的功能,继续学习下一章。

[翻译] ORMLite document -- Getting Started的更多相关文章

  1. [翻译] ORMLite document -- How to Use Part (二)

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

  2. [翻译] ORMLite document -- How to Use Part (一)

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

  3. ENGLISH抠脚童鞋的福利--GitHub汉化插件

    今天在某前端群看到一个插件,激动万分啊!我就把插件使用实现的步骤分享一下! 打开chrome浏览器输入地址:chrome://extensions/ : 跳转到其他页面,点击左上角--扩展程序: 将T ...

  4. 在Application中集成Microsoft Translator服务之使用http获取服务

    一.创建项目 首先我们来创建一个ASP.NET Application 选择时尚时尚最时尚的MVC,为了使演示的Demo更简单,这里选择无身份验证 二.创建相关类 项目需要引入之前两个类AdmAcce ...

  5. DevExpress ASP.NET Core Controls 2019发展蓝图(No.4)

    本文主要为大家介绍DevExpress ASP.NET Core Controls 2019年的官方发展蓝图,更多精彩内容欢迎持续收藏关注哦~ [DevExpress ASP.NET Controls ...

  6. Umbraco(4)-Outputting the Document Type Properties(翻译文档)

    翻译原文地址:http://www.ncloud.hk/%E6%8A%80%E6%9C%AF%E5%88%86%E4%BA%AB/umbraco4outputting-the-document-typ ...

  7. Umbraco(1) - Document Types(翻译文档)

    Document Types Data first nothing in = nothing out! 任何网站的第一步是创建一个"Document Type"-几次安装后你会熟悉 ...

  8. 翻译:Spring-Framework-Reference Document:11-Transaction Management

    TUESDAY, 07 APRIL Comprehensive transaction support is the most compelling reasons to use the Spring ...

  9. 翻译:Spring-Framework-Reference Document:15.2-DispatcherServlet

    写在前面的话:   最近被项目的代码折腾的死去活来的,其实框架也没有那么难理解,只是自己的Web基础太差,被Request和Response这一对神雕侠侣坑到泪流满面!今天捣腾了一下Spring We ...

随机推荐

  1. 转载请注明出处: https://github.com/qiu-deqing/FE-interview

    转载请注明出处: https://github.com/qiu-deqing/FE-interview Table of Contents generated with DocToc FE-inter ...

  2. PHP cURL 使用cookie 模拟登录

    cURL是什么 cURL: http://php.net/manual/zh/book.curl.php PHP 支持 Daniel Stenberg 创建的 libcurl 库,能够连接通讯各种服务 ...

  3. 使select文本框可编辑可选择(jQuery插件)

    最近做项目中用到了这个插件,正好分享下. 1.  需要用的js包点击下载,在项目中引入该js. <script src="${pageContext.request.contextPa ...

  4. 【Network】TCPDUMP 详解

    参考资料: https://www.baidu.com/s?ie=UTF-8&wd=tcpdump%20%E6%8C%87%E5%AE%9Aip tcpdump非常实用的抓包实例:  http ...

  5. python 使用pymssql连接sql server数据库

    python 使用pymssql连接sql server数据库   #coding=utf-8 #!/usr/bin/env python#------------------------------ ...

  6. Unity3D 原生Android结合UnityPlayerActivity开发遇到的问题

    需求是原生Android 的Activity启动UnityPlayerActivity,按Back键后返回原来的Activity 1.在AndroidManifest.xml中的UnityPlayer ...

  7. Python: open和codecs.open

    python的编解码: input文件(gbk, utf-8...)   ----decode----->   unicode  -------encode------> output文件 ...

  8. Apple Pay 初探

    Apple Pay 一.概述 1.支付方式:Touch ID/ Passcode 2.设备要求:iPhone6以上(iphone:线上/线下 ipad:线上 watch:线下) 3.系统要求:iOS8 ...

  9. Flex 1046: 找不到类型,或者它不是编译时常数;1180: 调用的方法 CompPropInfo 可能未定义

    导入项目之后一直报这个错误, 1046: 找不到类型,或者它不是编译时常数: 1180: 调用的方法 CompPropInfo 可能未定义 想这应该是没有把当前这个类编译进项目当中,找了半天也没有找到 ...

  10. 多功能前台交互效果插件superSlide

    平时我们常用的"焦点图/幻灯片""Tab标签切换""图片滚动""无缝滚动"等效果要加载n个插件,又害怕代码冲突又怕不兼容 ...