免费试用

中文化、本土化、云端化的在线跨平台软件开发工具,支持APP、电脑端、小程序、IOS免签等等

android开发app简单增删查改实例

Android开发中,操作数据库是一项基本的技能,本文将介绍一个简单的增删查改的实例,帮助初学者了解数据库的相关操作。

一、环境准备

1.安装Android Studio,创建一个新项目,参考以下设置。

2.在build.gradle文件中添加以下依赖项:

```

implementation 'com.android.support:appcompat-v7:28.0.0'

implementation 'com.android.support:design:28.0.0'

implementation 'com.android.support.constraint:constraint-layout:1.1.3'

// Room components

implementation "android.arch.persistence.room:runtime:1.1.1"

annotationProcessor "android.arch.persistence.room:compiler:1.1.1"

```

3.在MainActivity.java文件中定义一个空的布局文件,命名为activity_main.xml。

二、创建实体类和DAO接口

1.创建一个User类,代码如下:

```

@Entity

public class User {

@PrimaryKey(autoGenerate = true)

public int id;

@ColumnInfo(name = "name")

public String name;

@ColumnInfo(name = "age")

public int age;

@ColumnInfo(name = "email")

public String email;

}

```

2.创建一个UserDao接口,定义增删查改操作。

```

@Dao

public interface UserDao {

@Query("SELECT * FROM user")

List getAllUsers();

@Query("SELECT * FROM user WHERE id = :id")

User getUserById(int id);

@Insert(onConflict = OnConflictStrategy.REPLACE)

void insertUser(User... users);

@Delete()

void deleteUser(User user);

@Update

void updateUser(User user);

}

```

三、创建数据库

1.创建一个AppDatabase类,继承自RoomDatabase,定义数据库的实例。

```

@Database(entities = {User.class}, version = 1)

public abstract class AppDatabase extends RoomDatabase {

public abstract UserDao userDao();

}

```

2.在MainActivity类中创建一个数据库实例,代码如下:

```

public class MainActivity extends AppCompatActivity {

private AppDatabase appDatabase;

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

appDatabase = Room.databaseBuilder(getApplicationContext(), AppDatabase.class, "UserDB").build();

}

```

四、添加用户

1.在布局文件activity_main.xml中添加一个EditText和一个Button,代码如下:

```

android:id="@+id/et_name"

android:layout_width="0dp"

android:layout_height="wrap_content"

android:layout_marginStart="8dp"

android:layout_marginLeft="8dp"

android:layout_marginTop="8dp"

android:layout_marginEnd="8dp"

android:layout_marginRight="8dp"

android:ems="10"

android:hint="Name"

android:inputType="textPersonName"

app:layout_constraintEnd_toStartOf="@+id/btn_add"

app:layout_constraintStart_toStartOf="parent"

app:layout_constraintTop_toTopOf="parent" />

android:id="@+id/btn_add"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:layout_marginEnd="8dp"

android:layout_marginRight="8dp"

android:text="Add"

app:layout_constraintEnd_toEndOf="parent"

app:layout_constraintTop_toTopOf="parent" />

```

2.在MainActivity类中,添加以下代码实现添加用户操作:

```

private void addUser(String name, int age, String email) {

User user = new User();

user.name = name;

user.age = age;

user.email = email;

appDatabase.userDao().insertUser(user);

}

```

```

Button btnAdd = findViewById(R.id.btn_add);

btnAdd.setOnClickListener(new View.OnClickListener() {

@Override

public void onClick(View view) {

EditText etName = findViewById(R.id.et_name);

String name = etName.getText().toString();

addUser(name, 22, "test@example.com");

}

});

```

五、查询用户

在MainActivity类中,添加以下代码实现查询用户操作:

```

List users = appDatabase.userDao().getAllUsers();

for(User user: users) {

Log.d("User", "name: " + user.name + ", age: "+ user.age + ", email: " + user.email);

}

```

六、删除用户

在MainActivity类中,添加以下代码实现删除用户操作:

```

List users = appDatabase.userDao().getAllUsers();

for(User user: users) {

appDatabase.userDao().deleteUser(user);

}

```

七、更新用户

在MainActivity类中,添加以下代码实现更新用户操作:

```

List users = appDatabase.userDao().getAllUsers();

if(users.size() > 0) {

User user = users.get(0);

user.age = 25;

appDatabase.userDao().updateUser(user);

}

```

以上就是一个简单的增删查改的实例,通过这个实例的演示,相信初学者们可以更好地了解数据库的相关操作。


相关知识:
如何开发智慧小区物业系统app
随着城市化进程的不断加速,智慧小区的建设成为了一个不可或缺的部分。智慧小区物业系统app是智慧小区的一部分,它为小区居民提供了便捷的物业服务,同时也为物业管理提供了高效的工作方式。本文将详细介绍智慧小区物业系统app的开发原理。一、智慧小区物业系统app的
2024-01-10
厦门app开发定制注意事项
随着移动互联网的不断发展,手机APP已经成为人们生活中必不可少的工具之一。因此,越来越多的企业开始注重APP的开发与定制。其中,厦门APP开发定制也是一个非常热门的领域。在进行厦门APP开发定制时,需要注意以下几点:一、明确需求在进行厦门APP开发定制前,
2024-01-10
app应用开发的制作方法
App应用开发是现代科技领域的热门话题,是互联网产业的重要组成部分。一个成功的App应用背后通常是一个团队的努力,包括设计师、开发人员和测试人员等。在本篇文章中,我将向读者介绍App应用开发的一般制作方法,从原理到详细步骤,帮助读者了解这个过程。首先,我将
2023-07-14
app开发应用图标有哪些
应用图标是手机上应用程序的标志,它可以帮助用户快速识别和找到自己想要的应用。一个好的应用图标能够吸引用户的注意力并传达出应用程序的特点和品牌形象。在本文中,我将介绍一些常见的应用图标设计原理和详细介绍。1. 简洁明了:一个好的应用图标应该是简洁明了的,可以
2023-06-29
app开发秒杀的技术博客问答
随着移动互联网的迅速发展,越来越多的商户开始通过手机应用实现商品的销售。而秒杀活动则成为了吸引消费者的一种重要手段。在实现秒杀过程中,技术的应用显得尤为重要。本篇博客将详细介绍app开发秒杀的技术原理及实现细节。首先,我们需要明确秒杀活动的特点——时间短、
2023-06-29
applem1适合开发用吗
目前市面上的Apple M1芯片是苹果公司自主设计的第一款处理器芯片,也是苹果电脑首次采用ARM架构处理器。Apple M1芯片采用了5纳米工艺制程,CPU集成了8个高效能核心和4个高效能核心,还集成了16个神经网络引擎,AI计算性能异常强大。那么,这款处
2023-05-06