个人作业2

今天开始尝试学习连接本地数据库的增删改查,跟着B站敲了一个简单的增删改查。

复制代码
package com.example;

import androidx.appcompat.app.AppCompatActivity;

import android.database.sqlite.SQLiteOpenHelper;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast;

import com.example.database.SQliteOpenHelper;
import com.example.database.UserDao;
import com.example.domain.User;import com.example.domain.User;

import java.util.ArrayList;

public class MainActivity extends AppCompatActivity  {

    private UserDao userDao;
    private User user;
    private EditText et_username,et_password,et_age;
    private Button bt_save,bt_query,bt_update,bt_delete;
    private TextView tv_show; 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        userDao=new UserDao(this);
        init();
    }

    private void init() {
        et_username = findViewById(R.id.et_username);
        et_password = findViewById(R.id.et_password);
        et_age = findViewById(R.id.et_age);
        bt_save = findViewById(R.id.bt_save);
        bt_query = findViewById(R.id.bt_query);
        bt_update = findViewById(R.id.bt_update);
        bt_delete = findViewById(R.id.bt_delete);
        tv_show = findViewById(R.id.tv_show);


        bt_save.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                user=new User(et_username.getText().toString(),et_password.getText().toString(),Integer.parseInt((et_age.getText().toString())));
                long i=userDao.addUser(user);
                if(i!=-1){
                    Toast.makeText(MainActivity.this,"添加成功", Toast.LENGTH_SHORT).show();
                }else {
                    Toast.makeText(MainActivity.this, "添加失败", Toast.LENGTH_SHORT).show();
                }
            }
        });
        bt_query.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                //为了解决查询重复问题,需要先创建一个StringBuffer或者String类型对象,用于存储数据,存储后在给控件赋值就可以解决
                ArrayList list=userDao.queryAll();
                StringBuffer buffer=new StringBuffer();
                if(list.size()==0){
                    tv_show.setText("没有数据");
                }else {
                    for (int i=0;i<list.size();i++){
                        User user= (User) list.get(i);
                        buffer.append("id:" +user.getId()+
                                "课程名称:"+user.getUsername()+
                                "任课教师:"+user.getPassword()+
                                "上课地点:"+user.getAge()+"\n");
                    }
                    tv_show.setText(buffer);
                }
            }
        });
        bt_update.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                user=new User(et_username.getText().toString(),et_password.getText().toString(),Integer.parseInt((et_age.getText().toString())));
                int i=  userDao.updateUser(user);
                if(i!=0){
                    Toast.makeText(MainActivity.this, "修改成功", Toast.LENGTH_SHORT).show();
                }else {
                    Toast.makeText(MainActivity.this, "修改失败", Toast.LENGTH_SHORT).show();
                }
            }
        });
        bt_delete.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                int i=  userDao.deleteUser(et_username.getText().toString());
                if(i!=0){
                    Toast.makeText(MainActivity.this, "删除成功", Toast.LENGTH_SHORT).show();
                }else {
                    Toast.makeText(MainActivity.this, "删除失败", Toast.LENGTH_SHORT).show();
                }
            }
        });

    }

//    @Override
//    public void onClick(View v) {
//        if(v.getId()==R.id.bt_save){
//            user=new User(et_username.getText().toString(),et_password.getText().toString(),Integer.parseInt((et_age.getText().toString())));
//            long i=userDao.addUser(user);
//            if(i!=-1){
//                Toast.makeText(this, "添加成功", Toast.LENGTH_SHORT).show();
//            }else {
//                Toast.makeText(this, "添加失败", Toast.LENGTH_SHORT).show();
//            }
//        } else if (v.getId() == R.id.bt_delete) {
//            int i=  userDao.deleteUser(et_username.getText().toString());
//            if(i!=0){
//                Toast.makeText(this, "删除成功", Toast.LENGTH_SHORT).show();
//            }else {
//                Toast.makeText(this, "删除失败", Toast.LENGTH_SHORT).show();
//            }
//        } else if (v.getId() == R.id.bt_update) {
//
//            user=new User(et_username.getText().toString(),et_password.getText().toString(),Integer.parseInt((et_age.getText().toString())));
//            int i=  userDao.updateUser(user);
//            if(i!=0){
//                Toast.makeText(this, "修改成功", Toast.LENGTH_SHORT).show();
//            }else {
//                Toast.makeText(this, "修改失败", Toast.LENGTH_SHORT).show();
//            }
//        } else if (v.getId() == R.id.bt_query) {
//            //为了解决查询重复问题,需要先创建一个StringBuffer或者String类型对象,用于存储数据,存储后在给控件赋值就可以解决
//            ArrayList list=userDao.queryAll();
//            StringBuffer buffer=new StringBuffer();
//            if(list.size()==0){
//                tv_show.setText("没有数据");
//            }else {
//                for (int i=0;i<list.size();i++){
//                    User user= (User) list.get(i);
//                    buffer.append("id:" +user.getId()+
//                            "用户名:"+user.getUsername()+
//                            "密码:"+user.getPassword()+
//                            "年龄:"+user.getAge()+"\n");
//                }
//                tv_show.setText(buffer);
//            }
//        }
//    }
}
复制代码

 

 

posted @   奶油冰激凌  阅读(5)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!
点击右上角即可分享
微信分享提示