您的位置:首页 > 数据库

连接数据库创建修改删除学生信息

2016-12-01 16:28 573 查看
题目:

1、通过数据库实现学生的录入系统

2、首先搭建以下界面,将以上的信息存储到数据库中去

3、点击录入之后 跳到另外一个页面 用listview显示录入的学生信息item显示学生的姓名 图入下

4、点击某一行同样的将数据传递到下一个页面对数据进行修改或是删除 并且点击删除或是修改按钮之后 自动的返回到上图的页面 并且将修改的数据刷新



笔记:

输入学生信息   1.直接创建学生对象   2.edittext输入

如果直接在框里输入 那么直接创建学生对象  new getText().toString()

导入数据库

建立一个StudentDao

先建立一个DBhelper类继承sqliteopenhelper

创建一个DBhelper对象 然后对象调用Sqlitedatabase的get()方法建立数据库

建立好数据库之后开始创建表

往数据库中录入信息  创建一个录入方法

代码:
db-DBHelper:
package com.ddgl.ddlx.project_studentdemo.db;

import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;

public class DBHelper extends SQLiteOpenHelper {

public DBHelper(Context context) {
super(context, "helper.db", null, 1);
}

@Override
public void onCreate(SQLiteDatabase sqLiteDatabase) {
sqLiteDatabase.execSQL("create table stu(id integer,name text,age integer,gender text)");
}

@Override
public void onUpgrade(SQLiteDatabase sqLiteDatabase, int i, int i1) {

}
}
dao-StudentDao:
package com.ddgl.ddlx.project_studentdemo.dao;

import android.content.Context;
import android.database.sqlite.SQLiteDatabase;

import com.ddgl.ddlx.project_studentdemo.db.DBHelper;
import com.ddgl.ddlx.project_studentdemo.pojo.Student;

public class StudentDao {
private final DBHelper helper;
private SQLiteDatabase database;

public StudentDao(Context context) {
helper = new DBHelper(context);
}

//录入学生信息
public boolean storeStudent(Student student) {
boolean flag = false;
database = helper.getWritableDatabase();
database.execSQL("insert into stu(id,name,age,gender) values(?,?,?,?)", new Object[]{student.getSid(), student.getSname(), student.getSage(), student.getSgender()});
flag = true;
return flag;
}

//修改学生信息然后进行刷新操作
public boolean updateStudent(Student student) {
boolean flag = false;
database.execSQL("update stu set name = ? where id = 1", new Object[]{"taozi"});
flag = true;
return flag;
}

//删除学生信息然后进行刷新操作
public boolean deleteStudent(Student student) {
boolean flag = false;
database.execSQL("delete from stu");
flag = true;
return flag;
}
}
pojo-Student(id,name,age,gender)-就不上代码啦
MainActivity:
package com.ddgl.ddlx.project_studentdemo;

import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.EditText;
import android.widget.Toast;

import com.ddgl.ddlx.project_studentdemo.dao.StudentDao;
import com.ddgl.ddlx.project_studentdemo.pojo.Student;

public class MainActivity extends AppCompatActivity implements View.OnClickListener {

private EditText et_name, et_id, et_age, et_gender;
public static StudentDao dao;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
dao = new StudentDao(this);
initView();
}

private void initView() {
et_name = (EditText) findViewById(R.id.et_name);
et_id = (EditText) findViewById(R.id.et_id);
et_age = (EditText) findViewById(R.id.et_age);
et_gender = (EditText) findViewById(R.id.et_gender);
findViewById(R.id.btn_login).setOnClickListener(this);
}

@Override
public void onClick(View view) {
switch (view.getId()) {
case R.id.btn_login:
Student stu = new Student(et_name.getText().toString(), Integer.parseInt(et_id.getText().toString()), Integer.parseInt(et_age.getText().toString()), et_gender.getText().toString());
boolean b = dao.storeStudent(stu);
if (b){
Toast.makeText(this, "录入成功", Toast.LENGTH_SHORT).show();
Intent it = new Intent(this,SecondActivity.class);
it.putExtra("stu",stu);
startActivity(it);
}else {
Toast.makeText(this, "录入失败", Toast.LENGTH_SHORT).show();
}
break;
}
}
}
SecondActivity:
package com.ddgl.ddlx.project_studentdemo;

import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Log;
import android.widget.ListView;

import com.ddgl.ddlx.project_studentdemo.adapter.MyAdapter;
import com.ddgl.ddlx.project_studentdemo.pojo.Student;

import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;

public class SecondActivity extends AppCompatActivity {

private static final String TAG = "info";
private ListView lv_01;
private List<Student> list;
private Student stu;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_second);

//从上一个页面传过来学生信息
Intent intent = getIntent();
stu = (Student) intent.getSerializableExtra("stu");

list = new ArrayList<Student>();
list.add(stu);
Log.i(TAG, "second: "+(list == null));

lv_01 = (ListView) findViewById(R.id.lv_01);
lv_01.setAdapter(new MyAdapter(this, list));
}
}
adapter:
package com.ddgl.ddlx.project_studentdemo.adapter;

import android.content.Context;
import android.content.Intent;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.ImageView;
import android.widget.TextView;

import com.ddgl.ddlx.project_studentdemo.R;
import com.ddgl.ddlx.project_studentdemo.ThirdActivity;
import com.ddgl.ddlx.project_studentdemo.pojo.Student;

import java.util.List;

/**
* Created by 27c1 on 2016/12/1.
*/
public class MyAdapter extends BaseAdapter {

private static final String TAG = "info";
private Context context;
private List<Student> list;
private ViewHolder holder;

public MyAdapter(Context context, List<Student> list) {
this.context = context;
this.list = list;
}

@Override
public int getCount() {
return list.size();
}

@Override
public Object getItem(int i) {
return list.get(i);
}

@Override
public long getItemId(int i) {
return i;
}

@Override
public View getView(final int i, View view, ViewGroup viewGroup) {
ViewHolder holder = null;
if (view == null){
holder = new ViewHolder();
view = LayoutInflater.from(context).inflate(R.layout.listview_item, null);
holder.img_01 = (ImageView) view.findViewById(R.id.img_01);
holder.img_02 = (ImageView) view.findViewById(R.id.img_02);
holder.tv_01 = (TextView) view.findViewById(R.id.tv_01);
view.setTag(holder);
}else {
holder = (ViewHolder) view.getTag();
}
Log.i(TAG, "adapter:name "+list.get(i).getSname());
holder.tv_01.setText(list.get(i).getSname());
holder.img_02.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent it = new Intent(context,ThirdActivity.class);
Student student = list.get(i);
it.putExtra("stu",student);
context.startActivity(it);
}
});
return view;
}

class ViewHolder{
ImageView img_01;
TextView tv_01;
ImageView img_02;
}
}
ThirdActivity:
package com.ddgl.ddlx.project_studentdemo;

import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Toast;
import com.ddgl.ddlx.project_studentdemo.pojo.Student;
import static com.ddgl.ddlx.project_studentdemo.MainActivity.dao;

public class ThirdActivity extends AppCompatActivity implements View.OnClickListener {

private Student student;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_third);
initView();
Intent intent = getIntent();
student = (Student) intent.getSerializableExtra("stu");
}

private void initView() {
findViewById(R.id.btn_update).setOnClickListener(this);
findViewById(R.id.btn_delete).setOnClickListener(this);
}

@Override
public void onClick(View view) {
switch (view.getId()) {
case R.id.btn_update:
boolean b = dao.updateStudent(student);
if (b){
Toast.makeText(this, "修改成功", Toast.LENGTH_SHORT).show();

ad8a
finish();
}else {
Toast.makeText(this, "修改失败", Toast.LENGTH_SHORT).show();
}
break;
case R.id.btn_delete:
boolean c = dao.deleteStudent(student);
if (c){
Toast.makeText(this, "删除成功", Toast.LENGTH_SHORT).show();
finish();
}else {
Toast.makeText(this, "删除失败", Toast.LENGTH_SHORT).show();
}
break;
}
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐