河北重大技术需求开发第七版开发第一天

 

 今天完善了,将表格数据传输到,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();
}

    



    
    
}

 

 
 
posted @ 2020-10-19 21:39  凋零_(  阅读(75)  评论(0编辑  收藏  举报