首页 > 其他分享 >个人课堂练习01

个人课堂练习01

时间:2024-06-19 21:57:00浏览次数:12  
标签:01 课堂练习 个人 String import android password public name

今天建民让我们在课堂上实现安卓端的连接数据库,然后实现增删改,我在课堂上三个小时只实现了mysql本地数据库的连接,然后在回到宿舍后,弄到了晚上22点,我实现了增删改

以下是我的代码:pckage com.example.newone;

import androidx.appcompat.app.AppCompatActivity;

import android.os.Bundle;

public class good extends AppCompatActivity {

    @Override

protected void onCreate(Bundle savedInstanceState)

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_good  }

package com.example.newone;

import android.content.Inte

import android.os.Bundle;

import android.text.TextUtils;

import android.view.View;

import android.widget.Button;

import android.widget.EditText;

import android.widget.Toast;

import androidx.appcompat.app.AppCompatActivity;

import com.example.clock.db.DatabaseHelper;

import java.util.ArrayList;

public class Login extends AppCompatActivity {

  private DatabaseHelper mSQLite;

    @Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_login);

 Button btn_login = findViewById(R.id.login);

Button btn_register = findViewById(R.id.register);

  EditText ed_name = findViewById(R.id.userName);

EditText ed_password = findViewById(R.id.userpassword);

 btn_login.setOnClickListener(new View.OnClickListener() {

@Override

public void onClick(View view) {

String name = ed_name.getText().toString().trim();

String password = ed_password.getText().toString().trim();

 ArrayList<User> data = mSQLite.getAllDATA();

 boolean flag = false;

for(int i = 0; i < data.size(); i++){

                    User userdata = data.get(i);

                    if(name.equals(userdata.getName())&&password.equals(userdata.getPassword())){

                        flag = true;

                        break;

                    }else{

                        flag = false;

                    }

                }

 

                if(!TextUtils.isEmpty(name)&&!TextUtils.isEmpty(password)){

                    if(flag){

                        Intent intent1 = new Intent(Login.this, MainActivity.class);

                        startActivity(intent1);

                        finish();

                        Toast.makeText(Login.this, "登录成功", Toast.LENGTH_SHORT).show();

                    }

                    else{

                        Toast.makeText(Login.this, "用户名或密码不正确", Toast.LENGTH_SHORT).show();

                    }

                }

                else{

                    Toast.makeText(Login.this, "用户名与密码不能为空", Toast.LENGTH_SHORT).show();

                }

            }

        });

 

        btn_register.setOnClickListener(new View.OnClickListener() {

            @Override

            public void onClick(View view) {

                Intent intent2 = new Intent(Login.this, Register.class);

                startActivity(intent2);

                finish();

            }

        });

        mSQLite = new DatabaseHelper(Login.this);

    }

}

 

package com.example.newone;

 

import androidx.appcompat.app.AppCompatActivity;

 

import android.content.Intent;

import android.os.Bundle;

import android.view.View;

import android.widget.Button;

import android.widget.EditText;

import android.widget.Toast;

 

//import com.example.newone.javabean.User;

 

public class MainActivity extends AppCompatActivity implements View.OnClickListener {

    private Button login, register, update;

    private EditText name, password;

    private MYsqliteopenhelper mYsqliteopenhelper;

 

    @Override

    protected void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

        setContentView(R.layout.activity_main);

        mYsqliteopenhelper = new MYsqliteopenhelper(this);

        find();

    }

 

    private void find() {

        login = findViewById(R.id.login);

        register = findViewById(R.id.register);

        name = findViewById(R.id.edname);

        password = findViewById(R.id.edpassword);

        update = findViewById(R.id.update2);

 

 

        login.setOnClickListener(this);

        register.setOnClickListener(this);

        update.setOnClickListener(this);

 

 

    }

 

    @Override

    public void onClick(View view) {

        int id = view.getId();

        switch (id) {

            case R.id.login:

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

                String s1 = password.getText().toString();

 

                boolean login = mYsqliteopenhelper.login(s, s1);

                if (login) {

                    Toast.makeText(this, "登录成功!", Toast.LENGTH_SHORT).show();

                    Intent i = new Intent(this, good.class);

                    startActivity(i);

                } else {

                    Toast.makeText(this, "登录失败!", Toast.LENGTH_SHORT).show();

                }

 

                break;

            case R.id.register:

                Intent i1 = new Intent(this, com.example.newone.register.class);

                startActivity(i1);

                break;

            case R.id.update2:

                Intent i2 =new Intent(this,update_test.class);

                startActivity(i2);

 

 

        }

    }

}

 

 

package com.example.newone;

 

import android.content.ContentValues;

import android.content.Context;

import android.database.Cursor;

import android.database.sqlite.SQLiteDatabase;

import android.database.sqlite.SQLiteOpenHelper;

 

import androidx.annotation.Nullable;

 

//import com.example.logindemo.javabean.User;

 

public class MYsqliteopenhelper extends SQLiteOpenHelper {

    private static final String DB_NAME="MYsqlite.db";

 

 

    private static final String create_users="create table users(name varchar(32),password varchar(32))";

 

 

    public MYsqliteopenhelper(@Nullable Context context) {

        super(context, DB_NAME, null, 1);

    }

 

    @Override

    public void onCreate(SQLiteDatabase sqLiteDatabase) {

        sqLiteDatabase.execSQL(create_users);

    }

 

    @Override

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

 

    }

 

    public long register(User u){

        SQLiteDatabase db = getWritableDatabase();

        ContentValues cv =new ContentValues();

        cv.put("name",u.getName());

        cv.put("password",u.getPassword());

        long users = db.insert("users", null, cv);

        return users;

 

    }

 

    public boolean login(String name,String password){

        SQLiteDatabase db1 = getWritableDatabase();

        boolean result =false;

 

        Cursor users = db1.query("users", null, "name like ?", new String[]{name}, null, null, null);

        if (users !=null){

            while (users.moveToNext()){

                String password1 = users.getString(1);

                result=password1.equals(password);

                return result;

 

            }

 

        }

        return false;

 

    }

    public int update(String name,String NEWpassword,String password){

        SQLiteDatabase db2 = getWritableDatabase();

        ContentValues cv1=new ContentValues();

        boolean login = login(name, password);

        if (login){

            cv1.put("name",name);

            cv1.put("password",NEWpassword);

        }else {

            int o=-1;

            return o;

        }

 

        int i = db2.update("users", cv1, "name= ?", new String[]{name});

        return i;

 

    }

 

}

 

package com.example.newone;

 

import static com.example.clock.R.id.userNames;

 

import android.content.Intent;

import android.os.Bundle;

import android.text.TextUtils;

import android.view.View;

import android.widget.Button;

import android.widget.EditText;

import android.widget.Toast;

 

import androidx.appcompat.app.AppCompatActivity;

 

import com.example.clock.db.DatabaseHelper;

 

import java.util.ArrayList;

 

public class Register extends AppCompatActivity {

 

    private DatabaseHelper mSQLite;

 

    @Override

    protected void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

        setContentView(R.layout.activity_register);

 

        //找到各个控件

        Button btn_ready = findViewById(R.id.reday);

        Button btn_back = findViewById(R.id.back);

        EditText ed_name = findViewById(R.id.userName);

        EditText ed_password = findViewById(R.id.userpassword);

         EditText ed_name1 = findViewById(R.id.userNames);

         EditText ed_tel= findViewById(R.id.usertel);

        EditText ed_class = findViewById(R.id.userclass);

 

        //注册监听事件

        btn_ready.setOnClickListener(new View.OnClickListener() {

            @Override

            public void onClick(View view) {

                //获取输入的用户名和密码

                String name = ed_name.getText().toString().trim();

                String password = ed_password.getText().toString().trim();

                String name1 =ed_name1.getText().toString().trim();

                String tel = ed_tel.getText().toString().trim();

                String classs=ed_class.getText().toString().trim();

 

                //获取数据库数据,判断用户名是否已存在

                ArrayList<User> data = mSQLite.getAllDATA();

                boolean flag = false;

                for(int i = 0; i < data.size(); i++){

                    User userdata = data.get(i);

                    if(name.equals(userdata.getName())){

                        flag = true;

                        break;

                    }else{

                        flag = false;

                    }

                }

                //判断用户名和密码是否为空

                if(!TextUtils.isEmpty(name)&&!TextUtils.isEmpty(password)){

                    if(!flag){

                        mSQLite.insert(name, password,name1,tel,classs);

                        Intent intent1 = new Intent(Register.this, Login.class);

                        startActivity(intent1);

                        finish();

                        Toast.makeText(Register.this, "注册成功", Toast.LENGTH_SHORT).show();

                    }

                    else{

                        Toast.makeText(Register.this, "用户名已被注册", Toast.LENGTH_SHORT).show();

                    }

                }

                else{

                    Toast.makeText(Register.this, "用户名与密码不能为空", Toast.LENGTH_SHORT).show();

                }

            }

        });

 

        //监听返回按钮

        btn_back.setOnClickListener(new View.OnClickListener() {

            @Override

            public void onClick(View view) {

                Intent intent2 = new Intent(Register.this, Login.class);

                startActivity(intent2);

                finish();

            }

        });

 

        mSQLite = new DatabaseHelper(Register.this);

    }

}

 

package com.example.newone;

 

import androidx.appcompat.app.AppCompatActivity;

 

import android.os.Bundle;

import android.view.View;

import android.widget.Button;

import android.widget.EditText;

import android.widget.Toast;

 

public class update_test extends AppCompatActivity {

    private EditText name,password,repassword;

    private Button update;

    private MYsqliteopenhelper mYsqliteopenhelper2;

    @Override

    protected void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

        setContentView(R.layout.activity_update_test);

        mYsqliteopenhelper2 =new MYsqliteopenhelper(this);

        find();

 

    }

 

    private void find() {

        name =findViewById(R.id.etname2);

        password =findViewById(R.id.edpassword2);

        repassword =findViewById(R.id.repassword1);

    }

 

    public void xiugai(View view) {

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

        String s1 = password.getText().toString();

        String s2 = repassword.getText().toString();

        int update = mYsqliteopenhelper2.update(s, s2, s1);

        if (update !=-1){

            Toast.makeText(this, "密码修改成功!", Toast.LENGTH_SHORT).show();

        }else {

            Toast.makeText(this, "密码修改失败!", Toast.LENGTH_SHORT).show();

        }

    }

}

 

package com.example.newone;

 

public class User {

    private String name;

    private String password;

 

    public User() {

    }

 

    public User(String name, String password) {

        this.name = name;

        this.password = password;

    }

 

    /**

     * 获取

     * @return name

     */

    public String getName() {

        return name;

    }

 

    /**

     * 设置

     * @param name

     */

    public void setName(String name) {

        this.name = name;

    }

 

    /**

     * 获取

     * @return password

     */

    public String getPassword() {

        return password;

    }

 

    /**

     * 设置

     * @param password

     */

    public void setPassword(String password) {

        this.password = password;

    }

 

    public String toString() {

        return "User{name = " + name + ", password = " + password + "}";

    }

}

标签:01,课堂练习,个人,String,import,android,password,public,name
From: https://www.cnblogs.com/hlhl/p/18257497

相关文章

  • 20240619打卡-个人总结博客
    个人总结1.回顾课程计划完成情况在第一周制定的课程计划中,我列出了具体的目标和期望,并计划通过一系列的学习和实践活动来实现这些目标。具体数据和实际例子如下:目标1:掌握SpringBoot和Vue框架的基本使用。完成情况:通过老师的指导和多次实践,我成功地完成了一个基于SpringB......
  • 分享一下,如何搭建个人网站的步骤
        在这段充满探索与创造的奇妙旅途中,我就像一位耐心的建筑师,在数字世界的荒原上精心雕琢,两周的时光缓缓流淌。每天,我与代码共舞,手执HTML、CSS与JavaScript这三大构建魔杖,一砖一瓦地筑起了梦想中的网络城堡。从零到一,我的网站如幼苗破土,渐渐枝繁叶茂,每一行代码都是浇......
  • P6261 [ICPC2019 WF] Traffic Blights 题解
    思路考虑题目要求的是什么。假设\(p_i\)代表通过前\(i\)个红绿灯的概率。那么我们的答案即为\(p_i-p_{i-1}\)。不妨设\(w_i=r_i+g_i\)。我们的限制条件类似:\[t\not\equiva_i\pmodw_i\]那么所有红绿灯会形成周期\(lcm(w_1,w_2,\cdots,w_n)\)。由于\(2019!\)肯......
  • ensp通过云连接VMware中Windows Server 2012 中搭建的DHCP服务器实现不同VLAN自动获取
    实验描述通过在ensp中搭建拓扑图实现在VLAN10获取192.168.1.0网段地址,VLAN10获取192.168.1.0网段地址,VLAN20获取192.168.2.0网段地址,VLAN30获取192.168.1.0网段地址,VLAN40获取192.168.4.0网段地址.WindowsServer2012搭建DHCP服务器开启VMware配置网卡信息选择为自定......
  • 【云服务器介绍】选择指南 腾讯云 阿里云全配置对比 搭建web 个人开发 app 游戏服务器
    ​省流目录:适用于博客建站(2-4G)、个人开发/小型游戏[传奇/我的世界/饥荒](4-8G)、数据分析/大型游戏[幻兽帕鲁/雾锁王国]服务器(16-64G)1.京东云-618专属活动 官方采购季专属活动地址:京东云-618采购季服务器活动专区https://3.cn/20-J4jjX京东云又双叒降价了!活动页大改,增加两......
  • springboot小型超市商品展销系统-计算机毕业设计源码01635
    摘 要科技进步的飞速发展引起人们日常生活的巨大变化,电子信息技术的飞速发展使得电子信息技术的各个领域的应用水平得到普及和应用。信息时代的到来已成为不可阻挡的时尚潮流,人类发展的历史正进入一个新时代。在现实运用中,应用软件的工作规则和开发步骤,采用Springboot框架建......
  • 人月神话阅读笔记01
    人月神话阅读笔记01本书以“焦油坑”一章开篇,这一得名于自然界的产物,远古时代困住了无数的洪荒巨兽。而作为人类历史以来,甚至未来都会是最复杂的一项工作——大型软件开发,自诞生以来似乎也被"焦油坑"所困扰,顺利走出来的寥寥无几,绝大多数都在其中苦苦挣扎,表面上看起来没有任何一个......
  • 《梦断代码》阅读笔记01
    读《梦断代码》有一定时间了,读了将近一半的内容对这本本书也有了初步的了解,开始选择读书的时候看到这本书的名字然我想起了一部经典的电影叫做《魂断蓝桥》于是我便毫不犹豫的选择了这本书,看之前我先看了一下书评网上的评价都还不错,也知道了这本书主要讲的是Chandler漫长而痛苦的......
  • 01《构建之法》阅读笔记_1
    《构建之法》第一章介绍了软件工程的概念、理论、知识点以及软件工程与计算机科学的关系。具体来说,这一章让我了解了以下几个概念:源代码管理、配置管理、质量保证、软件测试、需求分析、程序理解、软件维护和服务运营,这些概念共同构成了软件的生命周期。此外,我还读到“将软件与程......
  • MBR60100PT-ASEMI逆变焊机专用MBR60100PT
    编辑:llMBR60100PT-ASEMI逆变焊机专用MBR60100PT型号:MBR60100PT品牌:ASEMI封装:TO-247最大平均正向电流(IF):60A最大循环峰值反向电压(VRRM):100V最大正向电压(VF):0.70V~0.90V工作温度:-65°C~175°C芯片个数:2芯片尺寸:mil正向浪涌电流(IFMS):400AMBR60100PT特性:低正向压降低功率损......