android studio创建一个SQLite数据库,用于存储课程信息
时间: 2023-07-27 11:11:40 浏览: 104
好的,以下是创建SQLite数据库的步骤:
1. 打开Android Studio,创建一个新的Empty Activity项目。
2. 打开app/build.gradle文件,并在dependencies中添加以下依赖项:
```
implementation 'com.android.support:appcompat-v7:28.0.0'
implementation 'com.android.support.constraint:constraint-layout:1.1.3'
implementation 'com.android.support:support-v4:28.0.0'
implementation 'com.android.support:design:28.0.0'
implementation 'android.arch.persistence.room:runtime:1.1.1'
annotationProcessor 'android.arch.persistence.room:compiler:1.1.1'
```
3. 创建一个Course类,用于表示课程信息,包括课程名称、教师姓名、上课地点和上课时间等。
```java
@Entity
public class Course {
@PrimaryKey(autoGenerate = true)
private int id;
private String name;
private String teacher;
private String location;
private String time;
// getters and setters
}
```
4. 创建一个CourseDao接口,用于定义访问Course表的方法,如插入、删除、更新和查询等。
```java
@Dao
public interface CourseDao {
@Query("SELECT * FROM course")
List<Course> getAll();
@Query("SELECT * FROM course WHERE id = :id")
Course getById(int id);
@Insert
void insert(Course course);
@Update
void update(Course course);
@Delete
void delete(Course course);
}
```
5. 创建一个CourseDatabase类,用于定义数据库和表的结构,以及提供获取CourseDao实例的方法。
```java
@Database(entities = {Course.class}, version = 1)
public abstract class CourseDatabase extends RoomDatabase {
public abstract CourseDao courseDao();
private static volatile CourseDatabase INSTANCE;
public static CourseDatabase getDatabase(final Context context) {
if (INSTANCE == null) {
synchronized (CourseDatabase.class) {
if (INSTANCE == null) {
INSTANCE = Room.databaseBuilder(context.getApplicationContext(),
CourseDatabase.class, "course_database")
.build();
}
}
}
return INSTANCE;
}
}
```
6. 在MainActivity类中,使用CourseDatabase类创建数据库实例,并使用CourseDao类进行数据库操作。
```java
public class MainActivity extends AppCompatActivity {
private CourseDao courseDao;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
courseDao = CourseDatabase.getDatabase(this).courseDao();
// 插入课程信息
Course course1 = new Course();
course1.setName("Android开发");
course1.setTeacher("张三");
course1.setLocation("教学楼101");
course1.setTime("周一 9:00-11:00");
courseDao.insert(course1);
// 查询所有课程信息
List<Course> courses = courseDao.getAll();
// 更新课程信息
Course course2 = courseDao.getById(1);
course2.setName("Java编程");
courseDao.update(course2);
// 删除课程信息
Course course3 = courseDao.getById(1);
courseDao.delete(course3);
}
}
```
这样,一个简单的SQLite数据库就创建完成了,你可以根据自己的需求进行修改和扩展。
阅读全文