Jave操作Hbase——建立学生信息管理系统

上文对hbase的建表、对数据的插入、查询、删除进行封装

 

(62条消息) Hbase学习——对表操作进行封装_小镭敲代码的博客-CSDN博客

本文调用封装好的方法,建立学生信息管理系统,实现

1、注册学生信息

2、查看学生信息

3、删除学生信息

4、修改学生信息

import org.apache.hadoop.hbase.Cell;
import org.apache.hadoop.hbase.CellUtil;
import org.apache.hadoop.hbase.client.Result;
import org.apache.hadoop.hbase.util.Bytes;
import java.io.IOException;
import java.util.Scanner;

public class StudentTest {
    static String tablename = "Student123:stuinfo";

    public static void main(String[] args) throws IOException {
        HbaseHelper.Exec_CreateNameSpace("Student123");
        HbaseHelper.Exec_CreateTable(tablename,"info");
        while(true){
            System.out.println("欢迎访问学生信息系统");
            System.out.println("1、注册学生信息");
            System.out.println("2、查看学生信息");
            System.out.println("3、删除学生信息");
            System.out.println("4、修改学生信息");
            Scanner scanner = new Scanner(System.in);
            String choice = scanner.next();
            switch(choice){
                case"1":
                    System.out.println("调用注册的方法");
                    AddStu();
                    break;
                case"2":
                    System.out.println("调用查看的方法");
                    GetStu();
                    break;
                case"3":
                    System.out.println("调用删除的方法");
                    DelStu();
                    break;
                case"4":
                    System.out.println("调用修改的方法");
                    ExStu();
                    break;
            }
        }
    }

    public static void AddStu() throws IOException{
        Scanner scanner = new Scanner(System.in);
        System.out.println("——————————————————————————————");
        System.out.println("这里是学生的注册功能界面");
        System.out.println("请输入学号:");
        String stuid = scanner.next();
        System.out.println("请输入姓名:");
        String stuname = scanner.next();
        System.out.println("请输入年龄:");
        String stuage = scanner.next();
        boolean r1 = HbaseHelper.Exec_AddData(tablename,"info",stuid,"stuid",stuid);
        boolean r2 = HbaseHelper.Exec_AddData(tablename,"info",stuid,"stuname",stuname);
        boolean r3 = HbaseHelper.Exec_AddData(tablename,"info",stuid,"stuage",stuage);
        if(r1&&r2&&r3){
            System.out.println("注册成功");
        }
    }

    public static void DelStu() throws IOException {
        Scanner scanner = new Scanner(System.in);
        System.out.println("——————————————————————————————");
        System.out.println("这里是学生的删除功能界面");
        System.out.println("请选择是1、删除整个学生信息 2、删除单个列");
        String choice = scanner.next();
        String stuid = " ";
        if(choice.equals("1")){
            System.out.println("请输入学号:");
            stuid = scanner.next();
            System.out.println(stuid);
            boolean r = HbaseHelper.Exec_DelDate(tablename,stuid);
            if(r){
                System.out.println("删除整行信息成功");
            }
        }else{
            System.out.println("请输入学号:");
            stuid = scanner.next();
            System.out.println(stuid);
            System.out.println("请输入要删除的列(stuid,name,age):");
            String delColumn = scanner.next();
            boolean r = HbaseHelper.Exec_DelDate(tablename,stuid,"info",delColumn);
            if(r){
                System.out.println("删除单个单元格信息成功");
            }
        }
    }

    public static void GetStu() throws IOException {
        Scanner scanner = new Scanner(System.in);
        System.out.println("——————————————————————————————");
        System.out.println("这里是学生的查询功能界面");
        System.out.println("请输入学号:");
        String stuid = scanner.next();
        Result result = HbaseHelper.Exec_GetDataByRowKey(tablename,stuid);
        if(result.isEmpty()){
            System.out.println("没有找到该学生的信息");
        }else{
            for (Cell cell:result.rawCells()){
                System.out.println("rowkey:"+ Bytes.toString(CellUtil.cloneRow(cell)));
                System.out.println("family:"+ Bytes.toString(CellUtil.cloneFamily(cell)));
                System.out.println("column:"+ Bytes.toString(CellUtil.cloneQualifier(cell)));
                System.out.println("value:"+ Bytes.toString(CellUtil.cloneValue(cell)));
            }
            //System.out.println("学号"+Byte.toString(CellUtil.cloneRow(cell))+"姓名"+"年龄");

        }
    }

    public static void ExStu() throws IOException {
        Scanner scanner = new Scanner(System.in);
        System.out.println("——————————————————————————————");
        System.out.println("这里是学生的修改功能界面");
        System.out.println("请输入学号:");
        String stuid = scanner.next();
        System.out.println("请输入要修改的列(stuid/name/age):");
        String exchange1 = scanner.next();
        System.out.println("请输入要修改的内容");
        String exchange2 = scanner.next();
        boolean r = HbaseHelper.Exec_AddData(tablename,"info",stuid,exchange1,exchange2);
        if(r){
            System.out.println("修改成功!");
        }
    }

}

运行项目,结果展示:

Jave操作Hbase——建立学生信息管理系统_第1张图片Jave操作Hbase——建立学生信息管理系统_第2张图片Jave操作Hbase——建立学生信息管理系统_第3张图片Jave操作Hbase——建立学生信息管理系统_第4张图片

你可能感兴趣的:(Hbase,hbase)