import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.File; import java.io.FileOutputStream; import java.io.FileReader; import java.io.FileWriter; import java.io.IOException; import java.io.RandomAccessFile; import java.util.StringTokenizer; import org.apache.hadoop.fs.FileStatus; import org.apache.hadoop.fs.FileSystem; import org.apache.hadoop.fs.Path; import org.apache.hadoop.hbase.HBaseAdmin; import org.apache.hadoop.hbase.HBaseConfiguration; import org.apache.hadoop.hbase.HColumnDescriptor; import org.apache.hadoop.hbase.HTableDescriptor; import org.apache.hadoop.io.Text; import org.apache.hadoop.mapred.JobConf; // this example is testing for static valiable value // it will show the value of static valiable is related to Class, not object class testb { // object variable public void read() { System.out.println(test.sna); } } public class test { int na; static int sna; static String str; public test() { } public test(String st) { str = st; } public test(int a, int b, String st) { na = a; sna = b; str = st; } public void print(String str) { System.out.println(str); } @SuppressWarnings( { "static-access" }) public void strToken() throws IOException { test a = new test(1, 2, "a"); a.print("a.na = " + a.na); a.print("test.sna = " + test.sna); a.print("a.sna = " + a.sna); // warning about it's not a regular // accessing method test b = new test(3, 4, "a"); b.print("b.na = " + b.na); b.print("test.sna = " + test.sna); b.print("b.sna = " + b.sna); // warning about it's not a regular // accessing method a.print("a.sna = " + a.sna); // a.sna = test.sna -> b.sna String tmp[] = test.str.split(":"); String Column_Family = tmp[0] + ":"; a.print("column family = " + Column_Family); a.print("ori str = " + test.str); // test fileoutputstream FileOutputStream out = new FileOutputStream(new File( "/home/waue/mr-result.txt")); out.write("hello".getBytes()); out.close(); // test randomaccessfile RandomAccessFile raf = new RandomAccessFile("/home/waue/mr-result.txt", "rw"); raf.seek(raf.length()); // move pointer to end raf.write("\n go \t ahead".getBytes()); raf.close(); // test StringTokenizer StringTokenizer st = new StringTokenizer("this is a test"); while (st.hasMoreTokens()) { System.out.println(st.nextToken()); } } String parseFirstLine(String in, String ou) throws IOException { BufferedReader fi = new BufferedReader(new FileReader(new File(in))); BufferedWriter fw = new BufferedWriter(new FileWriter(new File(ou))); String first_line, data; first_line = fi.readLine(); do { data = fi.readLine(); if (data == null) { break; } else { fw.write(data + "\n"); } } while (true); fw.close(); return first_line; } boolean deleteFile(String str) throws IOException { File ttt = new File(str); if (ttt.exists()) { if (!ttt.delete()) { System.err.print("delete file error !"); } } else { System.out.println("file not exit!"); } return true; } void ttt() throws IOException { Path pi; JobConf conf = new JobConf(test.class); FileStatus[] fi = FileSystem.get(conf).listStatus( new Path("/user/waue/input/")); for (int i = 0; i < fi.length; i++) { pi = fi[i].getPath(); System.out.println(pi.getName()); } } public static void main(String[] args) throws IOException { // test a = new test(); // a.strToken(); // System.out.println(a.parseFirstLine("/home/waue/test.txt", // "/home/waue/out.tmp.txt")); // ttt(); // setup Table name String table_name = "test_create_table2"; Text text_table_name = new Text(table_name); // setup Column Family String[] Column_Family = { "http:", "url:", "referrer:" }; HBaseConfiguration conf = new HBaseConfiguration(); HBaseAdmin admin = new HBaseAdmin(conf); boolean b = admin.tableExists(text_table_name); System.out.println(b); if (!admin.tableExists(text_table_name)) { System.out.println("HTable : " + table_name + " creating ... please wait"); HTableDescriptor tableDesc = new HTableDescriptor(table_name); for (int i = 0; i < Column_Family.length; i++) { String st = Column_Family[i]; // check name format "string:" if (!st.endsWith(":")) { Column_Family[i] = st + ":"; System.out.println("normize :" + st + "->" + Column_Family[i]); } // add column family tableDesc.addFamily(new HColumnDescriptor(Column_Family[i])); } admin.createTable(tableDesc); } else { System.out.println("table exist!"); } } }