添加
查询
Step 1:创建实体对象
@Table(name = "book")
public class Book {
@Id
private Long id;
@Column(name = "book_name")
private String bookName;
public Book() {
}
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public String getBookName() {
return bookName;
}
public void setBookName(String bookName) {
this.bookName = bookName;
}
}
Step 2:创建 DatabaseHelper
public class DatabaseHelper extends SQLiteOpenHelper {
public static final String BOOK_TABLE_NAME = "orm_book";
public static final String DATABASE_NAME = "OrmDemo.db";
public DatabaseHelper(Context context) {
super(context, DATABASE_NAME, null, 1);
}
@Override
public void onCreate(SQLiteDatabase db) {
TableUtils.createTable(db, true, Book.class);
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
TableUtils.dropTable(db, Book.class);
onCreate(db);
}
}
Step 3:创建 DatabaseService
public class DatabaseService {
private Context mContext;
private DatabaseHelper mDatabaseHelper;
private SQLiteDatabase mSQLiteDatabase;
private AhibernateDao<Book> mBookDao;
public DatabaseService(Context context) {
this.mContext = context;
this.mDatabaseHelper = new DatabaseHelper(mContext);
this.mSQLiteDatabase = mDatabaseHelper.getWritableDatabase();
this.mBookDao = new AhibernateDao<Book>(this.mSQLiteDatabase);
}
// ===================book begin===========================
public List<Book> getBooksByWhere(Map<String, String> where) {
List<Book> bookList = mBookDao.queryList(Book.class, where);
return bookList;
}
public List<Book> getBooks(Book book) {
List<Book> bookList = mBookDao.queryList(book);
return bookList;
}
public int addBook(Book book) {
return mBookDao.insert(book);
}
public void updateBook(Book book, Map<String, String> where) {
mBookDao.update(book, where);
}
public void deleteBook(Map<String, String> where) {
mBookDao.delete(Book.class, where);
}
// ===================book end===============================
Step 4:创建Activity
public class OrmDemoActivity extends Activity {
/** Called when the activity is first created. */
DatabaseService mDatabaseService;
Button mAddButton;
Button mQueryButton;
TextView mTextView;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
mAddButton = (Button) findViewById(R.id.add);
mQueryButton = (Button) findViewById(R.id.query);
mTextView = (TextView) findViewById(R.id.count);
mDatabaseService = new DatabaseService(this);
mAddButton.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
Book book = new Book();
Random ra = new Random();
book.setId(ra.nextLong());
book.setBookName("demo");
mDatabaseService.addBook(book);
Toast.makeText(OrmDemoActivity.this, "添加成功", Toast.LENGTH_SHORT).show();
}
});
mQueryButton.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
mTextView.setText("总共有" + mDatabaseService.getBooksByWhere(null).size() + "本书");
}
});
}
工具类源码地址:http://ahibernate.googlecode.com/svn/trunk/
- 大小: 20.7 KB
- 大小: 24.6 KB
- 大小: 19.8 KB
分享到:
相关推荐
这个"Winform自用小工具数据同步"项目显然是一款基于WinForms开发的应用程序,主要用于个人数据的同步工作。让我们深入探讨一下这个话题,了解WinForms和数据同步的基本概念。 1. **Windows Forms (WinForms)**: ...
标题中的“jdbc 连接数据库封装类,可返回map,或者vo(自用)”指的是一个自定义的Java类库,用于简化Java应用程序通过JDBC(Java Database Connectivity)与数据库的交互。这类库通常会提供方便的方法来执行SQL...
YouDBUtils这是一个“自用”的数据库工具包,你就把它当成orm框架也行 :grinning_face_with_smiling_eyes:使用通过maven: <dependency> <groupId>... 以alibaba的Druid为基础(拒绝DBCP/C3P0),支持代码配置Druid,...
Spring还包含了许多模块,如数据访问/集成、Web、AOP、工具和测试等,覆盖了完整的应用生命周期。 Struts框架则是一个基于MVC(Model-View-Controller)设计模式的Web应用框架,它的主要任务是处理用户界面与后台...
Hibernate是一个对象关系映射(ORM)工具,简化了Java应用程序与数据库的交互。它允许开发者使用面向对象的方式来处理数据,而无需关心底层SQL语句,提高了开发效率和代码可读性。 在"ssh搭建"这个文件中,可能包含了...
4. ORM框架:如Hibernate或MyBatis,用于简化数据库操作,提高开发效率。 5. 安全框架:Spring Security或Apache Shiro,用于实现用户认证和授权。 6. 数据缓存:Redis或Memcached,用于提升高访问量场景下的系统...
同时,用户反馈和意见可以帮助进一步优化这个工具,例如增加异步操作支持,提高并发性能,或者引入ORM框架的特性,使得数据库操作更加灵活和高效。 总结来说,"自己的SQLHelper"是一个自定义的数据库操作工具,它的...
这个自用框架的搭建过程涉及到多个步骤和技术点,对于初学者和开发者来说,掌握SSH框架的搭建和使用至关重要。 首先,我们来看Struts2框架。Struts2是一个基于MVC(Model-View-Controller)设计模式的Web应用框架,...
此小工具虽然GUI、功能这些都相对较弱,但自用已经足够。因此,后期可能就不再考虑 功能更新了,请见谅! 如果您有好的建议,请发送留言到作者博客:http://blog.csdn.net/CodingMouse 或发送邮件到:CodingMouse@...
这个应用程序可能使用了Entity Framework Core(简称EF Core),这是一个针对.NET Core的轻量级、高性能的对象关系映射(ORM)框架。 【描述】".net core3.1 + efcore发布包" 明确指出该发布包是基于.NET Core 3.1...