package com.xkx.book.database;
import android.content.ContentValues;
import android.content.Context;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
import com.xkx.book.enity.User;
import java.util.ArrayList;
import java.util.List;
public class UserDBHelper extends SQLiteOpenHelper {
private static final String DB_NAME = "user.db";
private static final String TABLE_NAME = "user_info";
private static final int DB_VERSION = 1;
private static UserDBHelper mHelper = null;
private SQLiteDatabase mRDB = null;
private SQLiteDatabase mWDB = null;
private UserDBHelper(Context context) {
super(context, DB_NAME, null, DB_VERSION);
}
//利用单例模式获取数据库帮助器的唯一实例
public static UserDBHelper getInstance(Context context) {
if (mHelper == null) {
mHelper = new UserDBHelper(context);
}
return mHelper;
}
// 创建数据库,执行建表语句
@Override
public void onCreate(SQLiteDatabase db) {
String sql = "CREATE TABLE IF NOT EXISTS " + TABLE_NAME + " (" +
"_id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL," +
" userid INTEGER not null," +
" username varchar not null," +
" password LONG not null," +
" is_book INTEGER not null," +
" user_status INTEGER not null," +
" is_deleted INTEGER not null);";
db.execSQL(sql);
db.execSQL("insert into " + TABLE_NAME + "(userid,username,password,is_book,user_status,is_deleted)Values('admin','管理员','1','0','1','0')");
db.execSQL("insert into " + TABLE_NAME + "(userid,username,password,is_book,user_status,is_deleted)Values('1001','用户1001','1','0','0','0')");
}
//打开数据库的读连接
public SQLiteDatabase openReadLink() {
if (mRDB == null || !mRDB.isOpen()) {
mRDB = mHelper.getReadableDatabase();
}
return mRDB;
}
//打开数据库的写连接
public SQLiteDatabase openWriteLink() {
if (mWDB == null || !mWDB.isOpen()) {
mWDB = mHelper.getWritableDatabase();
}
return mWDB;
}
//关闭数据库连接
public void closeLink() {
if (mRDB != null && mRDB.isOpen()) {
mRDB.close();
mRDB = null;
}
if (mWDB != null && mWDB.isOpen()) {
mWDB.close();
mWDB = null;
}
}
@Override
public void onUpgrade(SQLiteDatabase sqLiteDatabase, int i, int i1) {
}
//添加用户
public long insert(User user) {
ContentValues values = new ContentValues();
values.put("userid", user.userid);
values.put("username", user.username);
values.put("password", user.password);
values.put("is_book", user.is_book);
values.put("user_status", user.user_status);
values.put("is_deleted", user.is_deleted);
//执行插入记录动作,该语句返回插入记录的行号
//如果第三个参数values 为null或者元素个数为0,由于insert()方法必须添加一条除了主键之外其它字段
//
//
//如果第三个参数values 不为null并且元素的个数大于0,可以把第二个参数设置为null
return mWDB.insert(TABLE_NAME, null, values);
}
// 删除用户
public long deleteById(String userid) {
//删除所有
// return mWDB.delete(TABLE_NAME, "1=1", null);
//按名字删除
return mWDB.delete(TABLE_NAME, "userid=?", new String[]{userid});
}
// 修改用户
public long update(User user) {
ContentValues values = new ContentValues();
values.put("userid", user.userid);
values.put("username", user.username);
values.put("password", user.password);
values.put("is_book", user.is_book);
values.put("user_status", user.user_status);
values.put("is_deleted", user.is_deleted);
return mWDB.update(TABLE_NAME, values, "userid=?", new String[]{user.userid});
}
//查询所有
public List<User> queryAll() {
List<User> list = new ArrayList<>();
//执行记录查询动作,该语句返回结果集的游标
Cursor cursor = mRDB.query(TABLE_NAME, null, null, null, null, null, null);
//循环游标,取出游标所指的每条记录
while (cursor.moveToNext()) {
User user = new User();
user.id = cursor.getInt(0);
user.userid = cursor.getString(1);
user.username = cursor.getString(2);
user.password = cursor.getLong(3);
user.is_book = cursor.getInt(4);
user.user_status = cursor.getInt(5);
user.is_deleted = cursor.getInt(6);
list.add(user);
}
return list;
}
//按name 查询
public List<User> queryByName(String name) {
List<User> list = new ArrayList<>();
//执行记录查询动作,该语句返回结果集的游标
Cursor cursor = mRDB.query(TABLE_NAME, null, "name=?", new String[]{name}, null, null, null);
//循环游标,取出游标所指的每条记录
while (cursor.moveToNext()) {
User user = new User();
user.id = cursor.getInt(0);
user.userid = cursor.getString(1);
user.username = cursor.getString(2);
user.password = cursor.getLong(3);
user.is_book = cursor.getInt(4);
user.user_status = cursor.getInt(5);
user.is_deleted = cursor.getInt(6);
list.add(user);
}
return list;
}
//按Uid 查询
public List<User> queryById(String uid) {
List<User> list = new ArrayList<>();
//执行记录查询动作,该语句返回结果集的游标
Cursor cursor = mRDB.query(TABLE_NAME, null, "userid=?", new String[]{uid}, null, null, null);
//循环游标,取出游标所指的每条记录
while (cursor.moveToNext()) {
User user = new User();
user.id = cursor.getInt(0);
user.userid = cursor.getString(1);
user.username = cursor.getString(2);
user.password = cursor.getLong(3);
user.is_book = cursor.getInt(4);
user.user_status = cursor.getInt(5);
user.is_deleted = cursor.getInt(6);
list.add(user);
}
return list;
}
//按Uid和psw 查询
public List<User> queryByUid(String uid, String psw) {
List<User> list = new ArrayList<>();
//执行记录查询动作,该语句返回结果集的游标
Cursor cursor = mRDB.query(TABLE_NAME, null, "userid=? and password=?", new String[]{uid, psw}, null, null, null);
//循环游标,取出游标所指的每条记录
while (cursor.moveToNext()) {
User user = new User();
user.id = cursor.getInt(0);
user.userid = cursor.getString(1);
user.username = cursor.getString(2);
user.password = cursor.getLong(3);
user.is_book = cursor.getInt(4);
user.user_status = cursor.getInt(5);
user.is_deleted = cursor.getInt(6);
list.add(user);
}
return list;
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
安卓期末大作业-图书馆借书系统、图书借阅app源码(高分项目)
共86个文件
xml:34个
java:28个
webp:10个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 124 浏览量
2024-06-12
11:34:27
上传
评论
收藏 469KB ZIP 举报
温馨提示
安卓期末大作业-图书馆借书系统、图书借阅app源码(高分项目)高分项目期末大作业开发的97分高分设计项目,可作为高分课程设计和期末大作业的参考,含有代码注释小白也可看的懂,有能力的小伙伴也可以在此基础上进行二开,项目代码完整下载即可运行。 安卓期末大作业-图书馆借书系统、图书借阅app源码(高分项目)高分项目期末大作业开发的97分高分设计项目,可作为高分课程设计和期末大作业的参考,含有代码注释小白也可看的懂,有能力的小伙伴也可以在此基础上进行二开,项目代码完整下载即可运行。 安卓期末大作业-图书馆借书系统、图书借阅app源码(高分项目)高分项目期末大作业开发的97分高分设计项目,可作为高分课程设计和期末大作业的参考,含有代码注释小白也可看的懂,有能力的小伙伴也可以在此基础上进行二开,项目代码完整下载即可运行。 安卓期末大作业-图书馆借书系统、图书借阅app源码(高分项目)高分项目期末大作业开发的97分高分设计项目,可作为高分课程设计和期末大作业的参考,含有代码注释小白也可看的懂,有能力的小伙伴也可以在此基础上进行二开,项目代码完整下载即可运行。安卓期末大作业-图书馆借书系统、图书
资源推荐
资源详情
资源评论
收起资源包目录
安卓期末大作业-图书馆借书系统、图书借阅app.zip (86个子文件)
map-of-book-borrowing-app-master
gradle.properties 1KB
gradle
wrapper
gradle-wrapper.jar 58KB
gradle-wrapper.properties 232B
app
src
androidTest
java
com
xkx
book
ExampleInstrumentedTest.java 738B
test
java
com
xkx
book
ExampleUnitTest.java 373B
main
java
com
xkx
book
adapter
BorrowAdapter.java 2KB
BookAdapter.java 2KB
UserAdapter.java 2KB
ViewBorrowActivity.java 3KB
UpdateBookActivity.java 3KB
LoginActivity.java 3KB
AddBookActivity.java 3KB
FindBookActivity.java 4KB
ViewBookActivity.java 3KB
ManageBookActivity.java 1KB
database
BorrowDBHelper.java 6KB
UserDBHelper.java 7KB
BookDBHelper.java 6KB
UpdateUserActivity.java 3KB
enity
Book.java 1KB
Borrow.java 1KB
User.java 2KB
UserUpdateActivity.java 4KB
ViewUserActivity.java 3KB
SplashActivity.java 892B
RegisterActivity.java 3KB
ManageUserActivity.java 1KB
MainActivity.java 4KB
util
ToastUtil.java 249B
BorrowBookActivity.java 3KB
AddUserActivity.java 3KB
res
mipmap-xxhdpi
ic_launcher_round.webp 6KB
ic_launcher.webp 3KB
mipmap-hdpi
ic_launcher_round.webp 3KB
ic_launcher.webp 1KB
drawable-v24
button_shape.xml 331B
splash.png 257KB
user_1.xml 887B
ic_launcher_foreground.xml 2KB
ic_baseline_arrow_back_ios_24.xml 332B
close.xml 381B
mtitle.png 23KB
mipmap-anydpi-v26
ic_launcher.xml 272B
ic_launcher_round.xml 272B
values-night
themes.xml 834B
mipmap-mdpi
ic_launcher_round.webp 2KB
ic_launcher.webp 982B
mipmap-xxxhdpi
ic_launcher_round.webp 8KB
ic_launcher.webp 4KB
mipmap-xhdpi
ic_launcher_round.webp 4KB
ic_launcher.webp 2KB
xml
data_extraction_rules.xml 551B
backup_rules.xml 478B
values
colors.xml 719B
strings.xml 74B
themes.xml 836B
layout
activity_add_user.xml 4KB
activity_view_book.xml 2KB
user_item.xml 2KB
activity_user_update.xml 4KB
activity_update_user.xml 4KB
activity_view_user.xml 2KB
activity_borrow_book.xml 2KB
activity_manage_user.xml 1KB
activity_manage_book.xml 1KB
activity_splash.xml 555B
activity_login.xml 4KB
activity_main.xml 4KB
activity_view_borrow.xml 2KB
activity_find_book.xml 2KB
book_item.xml 1KB
activity_update_book.xml 4KB
activity_register.xml 5KB
activity_add_book.xml 4KB
borrow_item.xml 1KB
drawable
ic_launcher_background.xml 5KB
AndroidManifest.xml 2KB
proguard-rules.pro 750B
build.gradle 1012B
.gitignore 6B
gradlew.bat 3KB
build.gradle 291B
settings.gradle 329B
管理员页面.png 34KB
gradlew 6KB
.gitignore 225B
共 86 条
- 1
资源评论
王二空间
- 粉丝: 6686
- 资源: 2023
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功