1 packagedomain;2
3 importjava.io.IOException;4 importjava.util.ArrayList;5 importjava.util.List;6 importjava.util.Scanner;7
8 importorg.apache.hadoop.hbase.client.Put;9
10 importcom.sun.corba.se.spi.orbutil.fsm.Guard.Result;11 importcom.sun.org.apache.xml.internal.security.keys.content.KeyValue;12
13 importhbase.dao.HBaseDAO;14 importhbase.dao.imp.HBaseDAOImp;15
16 public classTest {17
18 public static voidmain(String[] args) {19 HBaseDAOImp hBaseDAOImp=newHBaseDAOImp();20 try
21 {22 int n=0;23
24 Scanner in = newScanner(System.in);25 while(n!=20)26 { System.out.println("**********欢迎使用HBase系统××××××××××");27 System.out.println("1.创建指定的数据库");28 System.out.println("2.列出 Hbase 所有的表的信息");29 System.out.println("3.向数据库表中插入信息");//添加信息
30 System.out.println("4.查看指定数据库表的信息");//查看信息
31 System.out.println("5.清空指定的表的所有记录数据");32 System.out.println("6.统计数据库中数据表的行数");33 System.out.println("7.向指定数据库表中插入某一行全部信息");34 System.out.println("8.查看指定数据库表中某一行全部信息");35 System.out.println("9.删除指定数据库表中某一行的指定行健的的信息");36 System.out.println("10.修改指定数据库表中某一行的指定列的信息");37 System.out.println("############多条件查询###########");38 System.out.println("11.按照两列的值进行查询");39 System.out.println("20.退出");40 System.out.println("请选择:");41 if(in.hasNextInt())42 {43 n=in.nextInt();44 }45 else
46 {47 System.out.println("输入的不是整数,请重新输入:");48 continue;49 }50 switch(n)51 {52 case 1:{53 System.out.println("输入你要创建的数据库的名称");54 String tablename=in.next();55 System.out.println("输入你要创建的数据库的列族名称");56 String field=in.next();57 String[] fields={field};58 //String[] fields= {"name","num","password"};
59 hBaseDAOImp.createTable(tablename, fields);60
61
62
63 break;64 }65 case 2:{66 hBaseDAOImp.listTables();67 break;68 }69 case 3:{70 String tablename=null;71 tablename="zythbase";72 String rowKey=null;73 rowKey="zyt001";74 String family=null;75 family="zyt";76 String quailifer=null;//列的名称
77 quailifer="name";78 String value=null;79 value="张运涛";80 hBaseDAOImp.insert(tablename, rowKey, family, quailifer, value);81 break;82 }83 case 4:{84 System.out.println("输入你要查询的数据库的名称");85 String tablename=in.next();86 hBaseDAOImp.getData(tablename);87 break;88 }89 case 5: {90 System.out.println("输入你要清空的数据库的名称");91 String tablename=in.next();92 hBaseDAOImp.clearRows(tablename);93 break;94 }95
96 case 6:{97 System.out.println("输入你要统计的数据库的行数名称");98 String tablename=in.next();99 hBaseDAOImp.countRows(tablename);100
101 break;102 }103 case 7:{104 System.out.println("输入你要插入的数据库的名称");105 String tablename=in.next();106 System.out.println("输入你要插入的此行数据的的行健");107 String hqname=in.next();108 System.out.println("输入你要插入的此行数据的的列族名称");109 String lzname=in.next();110
111 List list = new ArrayList();112 Put put = new Put(hqname.getBytes());//参数为行键的值
113 put.add(lzname.getBytes(), "name".getBytes(), "啊是的飒飒大家阿诗丹顿所".getBytes()) ;//参数为列族的名称,列的名称,列对应的值
114 list.add(put) ;115
116 put.add(lzname.getBytes(), "addr".getBytes(), "shanghai1".getBytes()) ;117 list.add(put) ;118 put.add(lzname.getBytes(), "age".getBytes(), "30".getBytes()) ;119 list.add(put) ;120 put.add(lzname.getBytes(), "tel".getBytes(), "13567882341".getBytes()) ;121 list.add(put) ;122 hBaseDAOImp.save(list, tablename);//参数为数据库的名称
123 System.out.println("数据插入成功!!!!");124
125 break;126 }127 case 8:{128 System.out.println("输入你要查看的数据库的名称");129 String tablename=in.next();130 System.out.println("输入你要查看的此行数据的的行健");131 String hqname=in.next();132 System.out.println("数据查询结果如下!!!!");133 hBaseDAOImp.showlistOneRow(tablename, hqname);134
135
136
137 break;138 }139 case 9:{140 System.out.println("输入你要删除的数据库的名称");141 String tablename=in.next();142 System.out.println("输入你要删除的此行数据的的行健");143 String hqname=in.next();144
145 hBaseDAOImp.deleteRow(tablename, hqname);146 System.out.println("数据删除成功!!!!");147
148
149
150 break;151 }152 case 10:{153 System.out.println("输入你要修改的数据库的名称");154 String tablename=in.next();155 System.out.println("输入你要修改的此行数据的的行健");156 String hqname=in.next();157 System.out.println("输入你要修改的此行数据的列族");158 String column=in.next();159 System.out.println("输入你要修改的此行数据的列名");160 String lieming=in.next();161 System.out.println("输入你要修改后的值");162 String val=in.next();163
164 hBaseDAOImp.modifyData(tablename, hqname, column, lieming, val);165 System.out.println("数据修改完成!!!!");166
167
168
169 break;170 }171 case 11:{172 /*System.out.println("输入你要查询的数据库的名称");173 String tablename=in.next();*/
174 /*System.out.println("输入你要修改的此行数据的的行健");175 String hqname=in.next();176 System.out.println("输入你要修改的此行数据的列族");177 String column=in.next();*/
178
179
180 hBaseDAOImp.QueryByCondition2("Student");181
182
183
184
185 break;186 }187 case 20:break;188 default:System.out.println("输入错误,请重新输入");break;189 }190 }191
192 }193 catch(Exception e)194 {195 e.printStackTrace();196 }197 }198
199 }