读书人

分享私用ORM工具类

发布时间: 2012-06-28 15:20:03 作者: rapoo

分享自用ORM工具类。


添加

查询



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/

读书人网 >移动开发

热点推荐