基于Android Studio开发的人员管理系统APP

这篇具有很好参考价值的文章主要介绍了基于Android Studio开发的人员管理系统APP。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

人员管理系统

目录

人员管理系统

前言

一、系统的大概流程

二、详细开发步骤

1.登陆界面

2.中间跳转界面

3.添加用户

4.全部用户界面

 5.项目下载

总结



前言

这是一个具有登录功能和人员信息增删改查功能的人员管理系统,在之前也有做过一个通过http协议与云平台对接的app,正好需要完成一个课程设计,所以就好好的补习了一下安卓开发的知识。

一、系统的大概流程

基于Android Studio开发的人员管理系统APP

二、详细开发步骤

1.登陆界面

UI效果如图:

基于Android Studio开发的人员管理系统APP

这个界面没有使用数据库,后期可以加上,具体代码如下:

public class LoginActivity extends AppCompatActivity implements View.OnClickListener {

    private EditText username;
    private EditText pwd;
    private Button login;
    private String Tag="QQLoginActivity";
    @Override
    protected void onCreate(@Nullable Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_login);

        username=findViewById(R.id.user_name);
        pwd=findViewById(R.id.etpwd);
        login=findViewById(R.id.btnLogin);


        login.setOnClickListener(this);
    }

    @Override
    public void onClick(View view) {
        switch (view.getId())
        {
            case R.id.btnLogin: //这里是登录按钮的功能实现
                String userName=username.getText().toString();
                String user_pwd=pwd.getText().toString();
                if (TextUtils.isEmpty(userName))
                {
                    Toast.makeText(LoginActivity.this,"用户名为空",Toast.LENGTH_SHORT).show();
                    return;
                }
                if (TextUtils.isEmpty(user_pwd))
                {
                    Toast.makeText(LoginActivity.this,"密码为空",Toast.LENGTH_SHORT).show();
                    return;
                }
                if(login(userName,user_pwd))
                {
                    Toast.makeText(LoginActivity.this,"登录成功",Toast.LENGTH_SHORT).show();
                    Intent intent=new Intent(LoginActivity.this,CenterActivity.class);
                    startActivity(intent);
                }else{
                    Toast.makeText(LoginActivity.this,"登录失败",Toast.LENGTH_SHORT).show();
                }
                break;
        }
    }
    private boolean login(String userName,String pwd)
    {
        if(userName.equals("admin")&&pwd.equals("123"))
        {

            return true;
        }else{

            return false;
        }

    }
}

2.中间跳转界面

这个界面的设计比较简单,只有一个图片和两个图片按钮,所以不做详细介绍,具体效果如下图:
基于Android Studio开发的人员管理系统APP

3.添加用户

这里需要用到数据库的增加语句,首选我们需要创建一个数据库,并且添加一张表。

创建一个DbOpenHelper类继承自SQLiteOpenHelper类。

基于Android Studio开发的人员管理系统APP

重写SQLiteOpenHelper类的onCreate和onUpgrade方法。

public class DbOpenHelper extends SQLiteOpenHelper {

    public DbOpenHelper(@Nullable Context context) {
        super(context, "my.db3", null, 1);

    }


    //必须重写下面两个方法
    @Override
    public void onCreate(SQLiteDatabase sqLiteDatabase) {

        //当没有的时候新建一个数据库
        sqLiteDatabase.execSQL("CREATE TABLE student(id integer primary key autoincrement,name varchar,age int, sex int,mz varchar,xy varchar,zy varchar,bj carchar)");

    }

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

    }
}

在studentdao类里实现数据库增函数:

 public void insert(StudentEntity entity) {
        SQLiteDatabase db = helper.getWritableDatabase();
        String sql = "insert into student(name,age,sex,mz ,xy ,zy ,bj ) values(?,?,?,?,?,?,?)";
        //拼接sql时选择的是防止注入的方式
        db.execSQL(sql, new String[]{entity.getName(), String.valueOf(entity.getAge()), String.valueOf(entity.getSex()),
                entity.getMz(), entity.getXy(), entity.getZy(), entity.getBj()});
        db.close();
    }

在UI界面让用户填写相关信息再将信息存储进数据库,具体如下图:

基于Android Studio开发的人员管理系统APP

实现代码如下:

public class AddActivity extends AppCompatActivity implements View.OnClickListener {
    private RadioGroup radioGroup;
    private EditText etname;
    private EditText etage;
    private EditText etmz;
    private EditText etxy;
    private EditText etzy;
    private EditText etbj;
    private int sex;
    @Override
    protected void onCreate(@Nullable Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_add);
        etname = findViewById(R.id.etname);
        etage = findViewById(R.id.etage);
        etmz = findViewById(R.id.etmz);
        etxy = findViewById(R.id.etxy);
        etzy = findViewById(R.id.etzy);
        etbj = findViewById(R.id.etbj);
        radioGroup=findViewById(R.id.rg);


        findViewById(R.id.btnadd).setOnClickListener(this);
        radioGroup.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {
            @Override
            public void onCheckedChanged(RadioGroup radioGroup, int i) {
                if (i==R.id.rgnan)
                {
                    sex=1;
                }else if (i==R.id.rgnv)
                {
                    sex=0;
                }
            }
        });


    }

    @Override
    public void onClick(View view) {
        switch (view.getId()) {
            case R.id.btnadd:
                String name = etname.getText().toString();
                String strage = etage.getText().toString();
                String mz = etmz.getText().toString();
                String xy = etxy.getText().toString();
                String zy = etzy.getText().toString();
                String bj = etbj.getText().toString();


                if (TextUtils.isEmpty(name)) {
                    return;
                }
                if (TextUtils.isEmpty(strage)) {
                    return;
                }
                if (TextUtils.isEmpty(mz)) {
                    return;
                }
                if (TextUtils.isEmpty(xy)) {
                    return;
                }
                if (TextUtils.isEmpty(zy)) {
                    return;
                }
                if (TextUtils.isEmpty(bj)) {
                    return;
                }


                int age = Integer.parseInt(strage);


                StudentEntity entity = new StudentEntity();
                entity.setAge(age);
                entity.setName(name);
                entity.setSex(sex);
                Log.i("sex", String.valueOf(sex));
                entity.setMz(mz);
                entity.setXy(xy);
                entity.setZy(zy);
                entity.setBj(bj);
                new StudentDao(this).insert(entity);
                Toast.makeText(AddActivity.this,"添加成功",Toast.LENGTH_SHORT).show();
                break;


        }
    }

}

4.全部用户界面

        这里是包括了删除、修改和查询功能的,UI界面如下图:

基于Android Studio开发的人员管理系统APP

红色框的查询按钮建议去掉,可以直接进入就显示所有信息,这里用的是一个listview显示所有信息,所以要先做好他的数据装载,这里不做仔细介绍,当然查询、修改还有删除功能需要在studentdao里继续实现这三个功能在调用。

studentdao具体代码如下:

public class StudentDao {
    //负责对表增删改查
    DbOpenHelper helper;

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

    //1.增
    public void insert(StudentEntity entity) {
        SQLiteDatabase db = helper.getWritableDatabase();
        String sql = "insert into student(name,age,sex,mz ,xy ,zy ,bj ) values(?,?,?,?,?,?,?)";
        //拼接sql时选择的是防止注入的方式
        db.execSQL(sql, new String[]{entity.getName(), String.valueOf(entity.getAge()), String.valueOf(entity.getSex()),
                entity.getMz(), entity.getXy(), entity.getZy(), entity.getBj()});
        db.close();
    }

    //2.删
    public void delete(int id) {

        SQLiteDatabase db = helper.getWritableDatabase();
        String sql = "delete from student where id=?";
        //拼接sql时选择的是防止注入的方式
        db.execSQL(sql, new String[]{id + ""});

        db.close();
    }

    //3.改
    public void update(StudentEntity entity) {

        SQLiteDatabase db = helper.getWritableDatabase();
        String sql = "update student set name=? , age=? ,sex=?,mz=? ,xy =?,zy =?,bj=? where id=?";
        //拼接sql时选择的是防止注入的方式
        db.execSQL(sql, new String[]{entity.getName(), entity.getAge() + "", String.valueOf(entity.getSex()),
                entity.getMz(), entity.getXy(), entity.getZy(), entity.getBj(), entity.getId() + ""});
        db.close();
    }


    //4.1 查询单个对象
    public StudentEntity get(int i) {
        StudentEntity entity = null;

        SQLiteDatabase db = helper.getWritableDatabase();
        String sql = "select * from student where id=?";

        Cursor cursor = db.rawQuery(sql, new String[]{i + ""});

        if (cursor != null) {
            if (cursor.moveToNext()) {
                entity = new StudentEntity();


                int index = cursor.getColumnIndex("name");
                String name = cursor.getString(index);

                index = cursor.getColumnIndex("age");
                int age = cursor.getInt(index);

                index = cursor.getColumnIndex("sex");
                int sex = cursor.getInt(index);

                index = cursor.getColumnIndex("mz");
                String mz = cursor.getString(index);

                index = cursor.getColumnIndex("xy");
                String xy = cursor.getString(index);

                index = cursor.getColumnIndex("zy");
                String zy = cursor.getString(index);

                index = cursor.getColumnIndex("bj");
                int bj = cursor.getInt(index);

                entity.setName(name);
                entity.setAge(age);
                entity.setSex(sex);
                entity.setMz(mz);
                entity.setXy(xy);
                entity.setZy(zy);
                entity.setBj(String.valueOf(bj));
            }
        }


        return entity;
    }

    //4.2
    public List<StudentEntity> getAll() {
        List<StudentEntity> list = new ArrayList<>();
        SQLiteDatabase db = helper.getWritableDatabase();
        String sql = "select * from student";
        Cursor cursor = db.rawQuery(sql, null);

        if (cursor != null) {
            while (cursor.moveToNext()) {
                int index = cursor.getColumnIndex("id");
                int id = cursor.getInt(index);

                index = cursor.getColumnIndex("name");
                String name = cursor.getString(index);

                index = cursor.getColumnIndex("age");
                int age = cursor.getInt(index);

                StudentEntity entity = new StudentEntity();
                entity.setName(name);
                entity.setAge(age);
                entity.setId(id);

                list.add(entity);

            }


            cursor.close();
            db.close();


        }


        return list;
    }


}

 全部用户功能实现代码如下:

public class MainActivity extends AppCompatActivity implements View.OnClickListener {
    private ListView lvstudent;
    private BaseAdapter adapter;

    private List<StudentEntity> list = new ArrayList<>();

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

        lvstudent = findViewById(R.id.lvstudent);


        findViewById(R.id.btnselect).setOnClickListener(this);


        adapter = new MyAdapter();
        lvstudent.setAdapter(adapter);
    }

    class MyAdapter extends BaseAdapter {

        @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(int i, View view, ViewGroup viewGroup) {
            View v;
            if (view == null) {
                v = View.inflate(MainActivity.this, R.layout.list_view_item_students, null);
            } else {
                v = view;
            }

            StudentEntity entity = list.get(i);


            TextView tvName = v.findViewById(R.id.tvname);
            tvName.setText(entity.getName());

            TextView tvage = v.findViewById(R.id.tvage);
            //Log.i("id", valueOf(entity.getId()));

            tvage.setText(entity.getAge() + "");

            TextView tvid = v.findViewById(R.id.tvid);
            //Log.i("age", valueOf(entity.getAge()));

            tvid.setText(entity.getId() + "");


            v.findViewById(R.id.ibdetail).setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View view) {
                    Log.i("position", "position" + i);
                    StudentEntity studentEntity = list.get(i);

                    int id = studentEntity.getId();
                    Intent intent = new Intent(MainActivity.this, DetailActivity.class);
                    intent.putExtra("", id);
                    MainActivity.this.startActivity(intent);
                }
            });
            v.findViewById(R.id.ibdelete).setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View view) {
                    StudentEntity studentEntity = list.get(i);

                    new StudentDao(MainActivity.this).delete(studentEntity.getId());

                    list.remove(i);
                    Toast.makeText(MainActivity.this,"删除成功",Toast.LENGTH_SHORT).show();
                    adapter.notifyDataSetChanged();
                }
            });
            v.findViewById(R.id.ibmodify).setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View view) {
                    Log.i("position", "position" + i);
                    StudentEntity studentEntity = list.get(i);

                    int id = studentEntity.getId();
                    Intent intent = new Intent(MainActivity.this, ModifyActivity.class);
                    intent.putExtra("", id);
                    MainActivity.this.startActivity(intent);
                }
            });
            return v;
        }
    }

    @Override
    public void onClick(View view) {
        switch (view.getId()) {


            case R.id.btnselect:
                List<StudentEntity> _list = new StudentDao(this).getAll();
                list.clear();
                list.addAll(_list);
                adapter.notifyDataSetChanged();

                break;
        }
    }
}

 5.项目下载

一些具体的功能没法一一解释清楚可以,大家可以通过下方链接下载完整项目

基于Android studio开发的人员管理系统

 

总结

这是一个简单的课程设计项目,作为非计算机或移动开发专门的专业的小伙伴完全够用。技术是越来越多的,我们能做到的只有精益求精,不断地学习新的技术,加油。文章来源地址https://www.toymoban.com/news/detail-469919.html

到了这里,关于基于Android Studio开发的人员管理系统APP的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Android Studio 大作业--学生信息管理系统

    古之立大事者,不惟有超世之才,亦必有坚忍不拔之志。——苏轼 ---------------🍎------------🍉-------------- 🐼学编程的bird的博客,邀您一起学习🦌 ----------------🥕------------🥭------------- 😊很高兴你打开了这篇博客。 ★如有疑问不解或者说有想问的地方,都可以在下方评论留

    2024年02月02日
    浏览(38)
  • GPS人员定位系统:一种更安全高效的人员定位管理系统

    GPS人员定位系统从物联网及无线通信技术创新的角度,结合RTK测量技术,为一些需要高精度的行业提供厘米级甚至毫米级定位精度的解决方案,提高室外工作效率,实现企业安全生产智慧管理。 随着北斗GPS定位系统组网成功,关于GPS、定位、RTK等等之类的话题频繁登上热搜,

    2024年01月23日
    浏览(42)
  • 基于Android的个人健康管理系统

    目 录 基于Android的个人健康管理系统 Personal Health Management System Based On Android 1 引言 1 1.1 课题背景 1 1.2 编写目的 1 1.3 关于Android 1 1.4 关于MVC框架 3 2 可行性研究 6 2.1 技术可行性 6 2.2 经济可行性 6 2.3 时间可行性 6 3 需求分析 7 4 总体设计 8 4.1 功能设计 8 4.2 数据库设计 9 4.3 界面

    2024年02月02日
    浏览(50)
  • 基于Android的学生信息管理系统

    项目名称:学生信息管理系统 主要技术:java、android 开发工具:Eclipse(ADT) 运行工具:只能使用Eclipse 数 据 库:SQLlite 项目简介:本系统主要有对学生信息、学生成绩的增删改查操作功能 项目内容 注册界面 登录界面 主界面 添加学生 维护学生信息 学生信息查询 添加学生成绩

    2024年02月11日
    浏览(63)
  • 高校人员信息管理系统(C++版)

    目录                                  高校人员信息管理系统                                   一、问题描述 二、功能要求 三、问题的解决方案 四、代码段 1、多文件 2、单文件 备注:大一(下)C++语言课程设计 某高校有四类员工:教师、实验员、行政人员,教

    2024年02月10日
    浏览(73)
  • JAVA:实现简单的人员管理系统

    ------实现系统的增删改查,代码会在底部会发出来; 1.1         右键在指定目录新建一个软件包; 1.2         在 Name 取好名字点击 Finish 建立包;  1.3         右键新建的包创建两个类;  1.4         取名后点击 Finish ;         为了看起来更规范,我一个取名为 Staff 、

    2024年02月11日
    浏览(37)
  • c# winform 实践项目---人员管理系统

    根据讲师下发的实践项目需求,做了一个人员管理系统,其中用到知识颇多,思来想去决定发布上来,一是为自己以后的开发做一个参考,避免忘记。二是希望能得到互联网上各位大佬的评鉴。 xx人员管理系统是为员工提供从入职到离职全面管理的系统软件。 主要功能:追踪

    2023年04月09日
    浏览(34)
  • 基于Android的学生信息管理App设计(Android studio开发)

    目 录 一、 题目选择(题目、选题意义) 3 二、 设计目的 3 1、 初衷 3 2、 结合实际 3 3、 使用工具 3 三、 最终页面效果展示 4 1、 登陆界面 4 2、 主界面 5 3、 各个功能模块 6 四、 各部分设计 11 1、活动页面Activity布局文件 11 2、Activity的编程 13 五、 总结 17 题目:基于Android的

    2024年02月08日
    浏览(100)
  • Android大作业:安卓开发图书管理系统APP

    Android Studio开发项目图书管理系统项目视频展示: 点击进入图书管理系统项目视频 现在是一个信息高度发达的时代,伴随着科技的进步,文化的汲取,人们对于图书信息的了解与掌握也达到了一定的高度。尤其是学生对于知识的渴求更是与日俱增。图书馆作为学生学习知识的

    2024年02月07日
    浏览(62)
  • 基于Android的旅游管理系统 微信小程序

    随着网络科技的发展,移动智能终端逐渐走进人们的视线,相关应用越来越广泛,并在人们的日常生活中扮演着越来越重要的角色。因此,关键应用程序的开发成为影响移动智能终端普及的重要因素,设计并开发实用、方便的应用程序具有重要的意义和良好的市场前景。And

    2024年02月10日
    浏览(47)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包