今天完善了,将表格数据传输到,hbase的操作,具体servlet如下
package servlet; import java.io.IOException; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.hbase.*; import org.apache.hadoop.hbase.client.*; import org.apache.hadoop.hbase.util.Bytes; import java.io.IOException; import java.util.Scanner; //import org.apache.hadoop.hdfs.protocol.proto.HdfsProtos.DatanodeInfoProto.AdminState; /** * Servlet implementation class servlet */ @WebServlet("/servlet") public class servlet extends HttpServlet { private static final long serialVersionUID = 1L; /** * @see HttpServlet#HttpServlet() */ public static Configuration configuration; public static Connection connection; public static Admin admin; public void init(){ configuration = HBaseConfiguration.create(); configuration.set("hbase.rootdir","hdfs://node1:8020/hbase"); try{ connection = ConnectionFactory.createConnection(configuration); admin = connection.getAdmin(); } catch (IOException e){ e.printStackTrace(); } } public servlet() { super(); // TODO Auto-generated constructor stub } /** * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response) */ protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // TODO Auto-generated method stub request.setCharacterEncoding("utf-8"); String Ixqname = request.getParameter("Ixqname"); String Iyear1 = request.getParameter("Iyear1"); String Iyear2 = request.getParameter("Iyear2"); String Ixqrequest = request.getParameter("Ixqrequest"); String Ixqguanjian = request.getParameter("Ixqguanjian"); String Ixqmubiao = request.getParameter("Ixqmubiao"); String Igjz1 = request.getParameter("Igjz1"); String Igjz2 = request.getParameter("Igjz2"); String Igjz3 = request.getParameter("Igjz3"); String Igjz4 = request.getParameter("Igjz4"); String Igjz5 = request.getParameter("Igjz5"); String Izjze = request.getParameter("Izjze"); String Ihzms = request.getParameter("Ihzms"); String Icompany = request.getParameter("Icompany"); String Itype = request.getParameter("Itype"); String fir = request.getParameter("fir"); String sec = request.getParameter("sec"); String thi = request.getParameter("thi"); String Ilingyu = request.getParameter("Ilingyu"); String Ixqyyhy = request.getParameter("Ixqyyhy"); String Inamenum = request.getParameter("Inamenum"); createTable("hbasetest",new String[]{"data"}); insertData("hbasetest",Ixqname,"data",Inamenum,Iyear1); insertData("hbasetest",Ixqname,"data",Inamenum,Iyear2); insertData("hbasetest",Ixqname,"data",Inamenum,Ixqrequest); insertData("hbasetest",Ixqname,"data",Inamenum,Ixqguanjian); insertData("hbasetest",Ixqname,"data",Inamenum,Ixqmubiao); insertData("hbasetest",Ixqname,"data",Inamenum,Igjz1); insertData("hbasetest",Ixqname,"data",Inamenum,Igjz2); insertData("hbasetest",Ixqname,"data",Inamenum,Igjz3); insertData("hbasetest",Ixqname,"data",Inamenum,Igjz4); insertData("hbasetest",Ixqname,"data",Inamenum,Igjz5); insertData("hbasetest",Ixqname,"data",Inamenum,Izjze); insertData("hbasetest",Ixqname,"data",Inamenum,Ihzms); insertData("hbasetest",Ixqname,"data",Inamenum,Icompany); insertData("hbasetest",Ixqname,"data",Inamenum,Itype); insertData("hbasetest",Ixqname,"data",Inamenum,fir); insertData("hbasetest",Ixqname,"data",Inamenum,sec); insertData("hbasetest",Ixqname,"data",Inamenum,thi); insertData("hbasetest",Ixqname,"data",Inamenum,Ilingyu); insertData("hbasetest",Ixqname,"data",Inamenum,Ixqyyhy); } /** * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response) */ protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // TODO Auto-generated method stub doGet(request, response); } public static void createTable(String myTableName,String[] colFamily) throws IOException { TableName tableName = TableName.valueOf(myTableName); if(admin.tableExists(tableName)){ System.out.println("table exists!"); }else { HTableDescriptor hTableDescriptor = new HTableDescriptor(tableName); for(String str: colFamily){ HColumnDescriptor hColumnDescriptor = new HColumnDescriptor(str); hTableDescriptor.addFamily(hColumnDescriptor); } admin.createTable(hTableDescriptor); } } public static void close() { try{ if(admin != null){ admin.close(); } if(null != connection){ connection.close(); } }catch (IOException e){ e.printStackTrace(); } } public static void insertData(String tableName, String rowKey, String colFamily, String col, String val) throws IOException { Table table = connection.getTable(TableName.valueOf(tableName)); Put put = new Put(Bytes.toBytes(rowKey)); put.addColumn(Bytes.toBytes(colFamily), Bytes.toBytes(col), Bytes.toBytes(val)); table.put(put); table.close(); } }