Hbase-day03-API操作

该代码示例展示了如何使用HBase Java API进行表的操作,包括判断表是否存在、创建表、删除表以及创建命名空间。此外,还包括了数据的插入、获取和扫描以及删除等基本操作。
package com.atguigu.test;

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 org.apache.hadoop.yarn.webapp.hamlet.Hamlet;

import java.io.IOException;

/**
 *
 * ddl
 * 1:判断表是否存在
 * 2:创建表
 * 3:创建命名空间
 * 4:删除表
 *
 * dml
 * 1:插入数据
 * 2:查数据(get)
 * 3:查数据(scan)
 * 4:删除数据
 *
 */
public class TestAPI {

    private static Connection connection = null;
    private static Admin admin = null;

    static {
        try {
            //1.获取配置信息
            Configuration configuration = HBaseConfiguration.create();
            configuration.set("hbase.zookeeper.quorum","hadoop102,hadoop103,hadoop104");

            //2.创建连接对象
            connection = ConnectionFactory.createConnection(configuration);

            //3.创建admin对象
            admin = connection.getAdmin();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }

    //1.判断表是否存在
    public static boolean isTableExist(String tableName) throws IOException {

        /*//1.获取配置信息
        //HBaseConfiguration configuration = new HBaseConfiguration();

        Configuration configuration = HBaseConfiguration.create();
        configuration.set("hbase.zookeeper.quorum","hadoop102,hadoop103,hadoop104");

        //2.获取管理员对象
        //HBaseAdmin admin = new HBaseAdmin(configuration);
        Connection connection = ConnectionFactory.createConnection(configuration);
        Admin admin = connection.getAdmin();


        //3.判断表是否存在
        //boolean exists = admin.tableExists(tableName);*/
        boolean exists = admin.tableExists(TableName.valueOf(tableName));

        //4.关闭连接
     //  admin.close();

        //5.返回结果
        return exists;
    }

    //2.创建表
    public static void createTable(String tableName,String... cfs) throws IOException {

        //1.判断是否存在列族信息
        if(cfs.length <= 0){
            System.out.println("请设置列族信息");
            return;
        }

        //2.判断表是否存在
        if(isTableExist(tableName)){
            System.out.println(tableName+"表已存在!");
            return;
        }

        //3.创建表描述器
        HTableDescriptor hTableDescriptor = new HTableDescriptor(TableName.valueOf(tableName));

        //4.循环添加列族信息
        for (String cf : cfs) {

            //5.创建列族描述器
            HColumnDescriptor hColumnDescriptor = new HColumnDescriptor(cf);

            //6.添加具体的列族信息
            hTableDescriptor.addFamily(hColumnDescriptor);

        }

        //7.创建表
        admin.createTable(hTableDescriptor);

    }

    //3.删除表
    public static void dropTable(String tableName) throws IOException {

        //1.判断表是否存在
        if(!isTableExist(tableName)){
            System.out.println(tableName+"表不存在!");
            return;
        }

        //2.使表下线
        admin.disableTable(TableName.valueOf(tableName));

        //3.删除表
        admin.deleteTable(TableName.valueOf(tableName));

    }

    //4.创建命名空间
    public static void createNameSpace(String ns){

        //1.创建命名空间描述器
        NamespaceDescriptor namespaceDescriptor = NamespaceDescriptor.create(ns).build();

        //2.创建命名空间
        try {
            admin.createNamespace(namespaceDescriptor);
        }catch (NamespaceExistException e){
            System.out.println(ns+"命名空间已存在");
        } catch (IOException e) {
            e.printStackTrace();
        }

        System.out.println("尽管存在,依然可以显示");
    }

    //5.向表插入数据
    public static void putData(String tableName,String rowKey,String cf,String cn,String value) throws IOException {

        //1.获取表对象
        Table table = connection.getTable(TableName.valueOf(tableName));

        //2.创建put对象
        Put put = new Put(Bytes.toBytes(rowKey));

        //3.给put对象赋值
        put.addColumn(Bytes.toBytes(cf), Bytes.toBytes(cn),Bytes.toBytes(value));

        //4.插入数据
        table.put(put);

        //5.关闭表连接
        table.close();
    }

    //6.获取数据
    public static void getData(String tableName,String rowKey,String cf,String cn) throws IOException {

        //1.获取表对象
        Table table = connection.getTable(TableName.valueOf(tableName));

        //2.创建get对象
        Get get = new Get(Bytes.toBytes(rowKey));

        //2.1指定获取的列族
        get.addFamily(Bytes.toBytes(cf));

        //2.2指定列族和列
        get.addColumn(Bytes.toBytes(cf),Bytes.toBytes(cn));

        //3.获取数据
        Result result = table.get(get);

        //4.解析result并打印
        for (Cell cell : result.rawCells()) {

            //5.打印数据
            System.out.println("CF"+Bytes.toString(CellUtil.cloneFamily(cell))+"CN"+Bytes.toString(CellUtil.cloneQualifier(cell))+"VALUE"+Bytes.toString(CellUtil.cloneValue(cell)));
        }

        //6.关闭表连接
        table.close();
    }

    //7.获取数据(Scan)
    public static void scanTable(String tableName) throws IOException {

        //1.获取表对象
        Table table = connection.getTable(TableName.valueOf(tableName));

        //2.获取scan对象
        Scan scan = new Scan();

        //3.扫描表
        ResultScanner resultScanner = table.getScanner(scan);

        //4.解析resultScanner
        for (Result result : resultScanner) {
            //5.解析result并打印
            for (Cell cell : result.rawCells()) {
                //6.打印数据
                System.out.println("CF"+Bytes.toString(CellUtil.cloneFamily(cell))+"CN"+Bytes.toString(CellUtil.cloneQualifier(cell))+"VALUE"+Bytes.toString(CellUtil.cloneValue(cell)));
            }
        }

        //7.关闭连接
        table.close();
    }

    //8.删除数据
    public static void deleteData(String tableName,String rowKey,String cf,String cn) throws IOException {

        //1.获取表对象
        Table table = connection.getTable(TableName.valueOf(tableName));

        //2.构建删除对象
        Delete delete = new Delete(Bytes.toBytes(rowKey));

        //2.1:设置删除的列
        delete.addColumn()

        //3.执行删除操作
        table.delete(delete);

        //4.关闭连接
        table.close();

    }

    public static void close(){
        if (admin != null){
            try {
                admin.close();
            } catch (IOException e) {
                e.printStackTrace();
            }
        }

        if (connection != null){
            try {
                connection.close();
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
    }

    public static void main(String[] args) throws IOException {

        //1.测试是否存在
        System.out.println(isTableExist("stu5"));

        //2.创建表测试
        createTable("stu5","info1","info2");

        System.out.println(isTableExist("stu5"));

        //3.删除表测试
        dropTable("stu5");

        System.out.println(isTableExist("stu5"));

        //4.创建命名空间测试
        createNameSpace("0408");

        //5.创建数据测试
        putData("stu","1001","info2","name","zhangsan");

        //6.获取单行数据
        getData("stu","1002","info2","asas");

        //7.测试并扫描数据
        scanTable("stu");

        //8.删除
        deleteData("stu","1005","info","asas");
        //关闭资源
        close();

    }

}

package com.edu.test; import com.edu.po.Person; import com.edu.utils.HiveUtils; import com.edu.utils.JdbcUtils; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import java.util.ArrayList; import java.util.List; /* * 任务说明: * 1. 把 hive 的表读取出来。 * 2. 把数据转入到 mysql。 * 3. 可以在 web 工程中读取 mysql 数据。 * (web 工程有 jar 冲突问题, 这里间接去读取 hive 数据) * 4. 展示在页面。 */ public class Task1 { /* 数据项: [day_time], [total_msg_cnt] */ static List<Person> getHiveData() throws SQLException { Connection conn = HiveUtils.getConnection(); String SQL = "SELECT CAST(day_time AS STRING) AS day_time, total_msg_cnt FROM total_msg_cnt"; PreparedStatement psmt = conn.prepareStatement(SQL); ResultSet rs = psmt.executeQuery(); List<Person> list = new ArrayList(); while( rs.next() ){ Person p = packPerson( rs ); list.add( p ); System.out.println( p ); } rs.close(); psmt.close(); HiveUtils.closeConnection(); //关闭 hive 连接 System.out.println("+-----------------------------------+"); System.out.println("{TASK1-HIVE}运行完成.."); System.out.println("+-----------------------------------+"); return list; } static Person packPerson(ResultSet rs) throws SQLException { Person p = new Person(); String day_time = rs.getString(1); Long total_msg_cnt = rs.getLong(2); p.setDay_time( day_time ); p.setTotal_msg_cnt( total_msg_cnt ); return p; } public static void main(String[] args) throws SQLException { List<Person> hiveData = getHiveData(); for (Person p : hiveData) { if (p.getDay_time() == null || p.getDay_time().isEmpty()) { System.out.println("发现空值:" + p); } } //2.转存到 MYSQL 中。 writeToMYSQL(hiveData); } /* 2.转存到 MYSQL 中。 */ static void writeToMYSQL(List<Person> hiveData) throws SQLException { // 1. 获取 MySQL 连接 Connection conn = JdbcUtils.getConnection(); String SQL = "INSERT INTO total_msg_cnt (day_time, total_msg_cnt) VALUES (?, ?)"; PreparedStatement psmt = conn.prepareStatement(SQL); for (Person p : hiveData) { psmt.setString(1, p.getDay_time()); psmt.setLong(2, p.getTotal_msg_cnt()); psmt.addBatch(); } psmt.executeBatch(); psmt.close(); JdbcUtils.closeConnection(); System.out.println("+-----------------------------------+"); System.out.println("{TASK1-MYSQL}运行完成."); System.out.println("+-----------------------------------+"); } } D:\flinkjava\Java\jdk1.8.0_281\bin\java.exe "-javaagent:D:\jetbra\IntelliJ IDEA 2023.2.8\lib\idea_rt.jar=60730:D:\jetbra\IntelliJ IDEA 2023.2.8\bin" -Dfile.encoding=UTF-8 -classpath D:\flinkjava\Java\jdk1.8.0_281\jre\lib\charsets.jar;D:\flinkjava\Java\jdk1.8.0_281\jre\lib\deploy.jar;D:\flinkjava\Java\jdk1.8.0_281\jre\lib\ext\access-bridge-64.jar;D:\flinkjava\Java\jdk1.8.0_281\jre\lib\ext\cldrdata.jar;D:\flinkjava\Java\jdk1.8.0_281\jre\lib\ext\dnsns.jar;D:\flinkjava\Java\jdk1.8.0_281\jre\lib\ext\jaccess.jar;D:\flinkjava\Java\jdk1.8.0_281\jre\lib\ext\jfxrt.jar;D:\flinkjava\Java\jdk1.8.0_281\jre\lib\ext\localedata.jar;D:\flinkjava\Java\jdk1.8.0_281\jre\lib\ext\nashorn.jar;D:\flinkjava\Java\jdk1.8.0_281\jre\lib\ext\sunec.jar;D:\flinkjava\Java\jdk1.8.0_281\jre\lib\ext\sunjce_provider.jar;D:\flinkjava\Java\jdk1.8.0_281\jre\lib\ext\sunmscapi.jar;D:\flinkjava\Java\jdk1.8.0_281\jre\lib\ext\sunpkcs11.jar;D:\flinkjava\Java\jdk1.8.0_281\jre\lib\ext\zipfs.jar;D:\flinkjava\Java\jdk1.8.0_281\jre\lib\javaws.jar;D:\flinkjava\Java\jdk1.8.0_281\jre\lib\jce.jar;D:\flinkjava\Java\jdk1.8.0_281\jre\lib\jfr.jar;D:\flinkjava\Java\jdk1.8.0_281\jre\lib\jfxswt.jar;D:\flinkjava\Java\jdk1.8.0_281\jre\lib\jsse.jar;D:\flinkjava\Java\jdk1.8.0_281\jre\lib\management-agent.jar;D:\flinkjava\Java\jdk1.8.0_281\jre\lib\plugin.jar;D:\flinkjava\Java\jdk1.8.0_281\jre\lib\resources.jar;D:\flinkjava\Java\jdk1.8.0_281\jre\lib\rt.jar;D:\spark资料\hive-to-mysql\target\classes;C:\Users\sb171\.m2\repository\org\apache\hive\hive-jdbc\3.1.2\hive-jdbc-3.1.2.jar;C:\Users\sb171\.m2\repository\org\apache\hive\hive-common\3.1.2\hive-common-3.1.2.jar;C:\Users\sb171\.m2\repository\org\apache\hive\hive-classification\3.1.2\hive-classification-3.1.2.jar;C:\Users\sb171\.m2\repository\org\apache\hive\hive-storage-api\2.7.0\hive-storage-api-2.7.0.jar;C:\Users\sb171\.m2\repository\commons-cli\commons-cli\1.2\commons-cli-1.2.jar;C:\Users\sb171\.m2\repository\commons-lang\commons-lang\2.6\commons-lang-2.6.jar;C:\Users\sb171\.m2\repository\org\apache\commons\commons-lang3\3.2\commons-lang3-3.2.jar;C:\Users\sb171\.m2\repository\org\apache\orc\orc-core\1.5.6\orc-core-1.5.6.jar;C:\Users\sb171\.m2\repository\org\apache\orc\orc-shims\1.5.6\orc-shims-1.5.6.jar;C:\Users\sb171\.m2\repository\io\airlift\aircompressor\0.10\aircompressor-0.10.jar;C:\Users\sb171\.m2\repository\javax\xml\bind\jaxb-api\2.2.11\jaxb-api-2.2.11.jar;C:\Users\sb171\.m2\repository\org\apache\hadoop\hadoop-hdfs\2.2.0\hadoop-hdfs-2.2.0.jar;C:\Users\sb171\.m2\repository\com\sun\jersey\jersey-core\1.9\jersey-core-1.9.jar;C:\Users\sb171\.m2\repository\com\sun\jersey\jersey-server\1.9\jersey-server-1.9.jar;C:\Users\sb171\.m2\repository\asm\asm\3.1\asm-3.1.jar;C:\Users\sb171\.m2\repository\xmlenc\xmlenc\0.52\xmlenc-0.52.jar;C:\Users\sb171\.m2\repository\jline\jline\2.12\jline-2.12.jar;C:\Users\sb171\.m2\repository\javax\servlet\javax.servlet-api\3.1.0\javax.servlet-api-3.1.0.jar;C:\Users\sb171\.m2\repository\org\eclipse\jetty\jetty-http\9.3.20.v20170531\jetty-http-9.3.20.v20170531.jar;C:\Users\sb171\.m2\repository\org\eclipse\jetty\jetty-util\9.3.20.v20170531\jetty-util-9.3.20.v20170531.jar;C:\Users\sb171\.m2\repository\org\eclipse\jetty\jetty-rewrite\9.3.20.v20170531\jetty-rewrite-9.3.20.v20170531.jar;C:\Users\sb171\.m2\repository\org\eclipse\jetty\jetty-client\9.3.20.v20170531\jetty-client-9.3.20.v20170531.jar;C:\Users\sb171\.m2\repository\org\eclipse\jetty\jetty-server\9.3.20.v20170531\jetty-server-9.3.20.v20170531.jar;C:\Users\sb171\.m2\repository\org\eclipse\jetty\jetty-io\9.3.20.v20170531\jetty-io-9.3.20.v20170531.jar;C:\Users\sb171\.m2\repository\org\eclipse\jetty\jetty-servlet\9.3.20.v20170531\jetty-servlet-9.3.20.v20170531.jar;C:\Users\sb171\.m2\repository\org\eclipse\jetty\jetty-security\9.3.20.v20170531\jetty-security-9.3.20.v20170531.jar;C:\Users\sb171\.m2\repository\org\eclipse\jetty\jetty-webapp\9.3.20.v20170531\jetty-webapp-9.3.20.v20170531.jar;C:\Users\sb171\.m2\repository\org\eclipse\jetty\jetty-xml\9.3.20.v20170531\jetty-xml-9.3.20.v20170531.jar;C:\Users\sb171\.m2\repository\joda-time\joda-time\2.9.9\joda-time-2.9.9.jar;C:\Users\sb171\.m2\repository\org\apache\logging\log4j\log4j-1.2-api\2.10.0\log4j-1.2-api-2.10.0.jar;C:\Users\sb171\.m2\repository\org\apache\logging\log4j\log4j-api\2.10.0\log4j-api-2.10.0.jar;C:\Users\sb171\.m2\repository\org\apache\logging\log4j\log4j-core\2.10.0\log4j-core-2.10.0.jar;C:\Users\sb171\.m2\repository\org\apache\logging\log4j\log4j-web\2.10.0\log4j-web-2.10.0.jar;C:\Users\sb171\.m2\repository\org\apache\commons\commons-compress\1.9\commons-compress-1.9.jar;C:\Users\sb171\.m2\repository\org\apache\ant\ant\1.9.1\ant-1.9.1.jar;C:\Users\sb171\.m2\repository\org\apache\ant\ant-launcher\1.9.1\ant-launcher-1.9.1.jar;C:\Users\sb171\.m2\repository\net\sf\jpam\jpam\1.1\jpam-1.1.jar;C:\Users\sb171\.m2\repository\com\tdunning\json\1.8\json-1.8.jar;C:\Users\sb171\.m2\repository\io\dropwizard\metrics\metrics-core\3.1.0\metrics-core-3.1.0.jar;C:\Users\sb171\.m2\repository\io\dropwizard\metrics\metrics-jvm\3.1.0\metrics-jvm-3.1.0.jar;C:\Users\sb171\.m2\repository\io\dropwizard\metrics\metrics-json\3.1.0\metrics-json-3.1.0.jar;C:\Users\sb171\.m2\repository\com\fasterxml\jackson\core\jackson-databind\2.9.5\jackson-databind-2.9.5.jar;C:\Users\sb171\.m2\repository\com\fasterxml\jackson\core\jackson-annotations\2.9.0\jackson-annotations-2.9.0.jar;C:\Users\sb171\.m2\repository\com\fasterxml\jackson\core\jackson-core\2.9.5\jackson-core-2.9.5.jar;C:\Users\sb171\.m2\repository\com\github\joshelser\dropwizard-metrics-hadoop-metrics2-reporter\0.1.2\dropwizard-metrics-hadoop-metrics2-reporter-0.1.2.jar;C:\Users\sb171\.m2\repository\org\apache\hadoop\hadoop-common\2.6.0\hadoop-common-2.6.0.jar;C:\Users\sb171\.m2\repository\org\apache\hadoop\hadoop-annotations\2.6.0\hadoop-annotations-2.6.0.jar;C:\Users\sb171\.m2\repository\org\apache\commons\commons-math3\3.1.1\commons-math3-3.1.1.jar;C:\Users\sb171\.m2\repository\commons-httpclient\commons-httpclient\3.1\commons-httpclient-3.1.jar;C:\Users\sb171\.m2\repository\commons-net\commons-net\3.1\commons-net-3.1.jar;C:\Users\sb171\.m2\repository\commons-collections\commons-collections\3.2.1\commons-collections-3.2.1.jar;C:\Users\sb171\.m2\repository\javax\servlet\servlet-api\2.5\servlet-api-2.5.jar;C:\Users\sb171\.m2\repository\org\mortbay\jetty\jetty\6.1.26\jetty-6.1.26.jar;C:\Users\sb171\.m2\repository\org\mortbay\jetty\jetty-util\6.1.26\jetty-util-6.1.26.jar;C:\Users\sb171\.m2\repository\com\sun\jersey\jersey-json\1.9\jersey-json-1.9.jar;C:\Users\sb171\.m2\repository\com\sun\xml\bind\jaxb-impl\2.2.3-1\jaxb-impl-2.2.3-1.jar;C:\Users\sb171\.m2\repository\org\codehaus\jackson\jackson-jaxrs\1.8.3\jackson-jaxrs-1.8.3.jar;C:\Users\sb171\.m2\repository\org\codehaus\jackson\jackson-xc\1.8.3\jackson-xc-1.8.3.jar;C:\Users\sb171\.m2\repository\tomcat\jasper-compiler\5.5.23\jasper-compiler-5.5.23.jar;C:\Users\sb171\.m2\repository\tomcat\jasper-runtime\5.5.23\jasper-runtime-5.5.23.jar;C:\Users\sb171\.m2\repository\javax\servlet\jsp\jsp-api\2.1\jsp-api-2.1.jar;C:\Users\sb171\.m2\repository\commons-el\commons-el\1.0\commons-el-1.0.jar;C:\Users\sb171\.m2\repository\net\java\dev\jets3t\jets3t\0.9.0\jets3t-0.9.0.jar;C:\Users\sb171\.m2\repository\com\jamesmurty\utils\java-xmlbuilder\0.4\java-xmlbuilder-0.4.jar;C:\Users\sb171\.m2\repository\commons-configuration\commons-configuration\1.6\commons-configuration-1.6.jar;C:\Users\sb171\.m2\repository\commons-digester\commons-digester\1.8\commons-digester-1.8.jar;C:\Users\sb171\.m2\repository\commons-beanutils\commons-beanutils\1.7.0\commons-beanutils-1.7.0.jar;C:\Users\sb171\.m2\repository\commons-beanutils\commons-beanutils-core\1.8.0\commons-beanutils-core-1.8.0.jar;C:\Users\sb171\.m2\repository\com\jcraft\jsch\0.1.42\jsch-0.1.42.jar;C:\Users\sb171\.m2\repository\org\htrace\htrace-core\3.0.4\htrace-core-3.0.4.jar;C:\Users\sb171\.m2\repository\javolution\javolution\5.5.1\javolution-5.5.1.jar;C:\Users\sb171\.m2\repository\org\apache\hive\hive-service\3.1.2\hive-service-3.1.2.jar;C:\Users\sb171\.m2\repository\org\apache\hive\hive-llap-server\3.1.2\hive-llap-server-3.1.2.jar;C:\Users\sb171\.m2\repository\org\apache\hive\hive-llap-common\3.1.2\hive-llap-common-3.1.2.jar;C:\Users\sb171\.m2\repository\org\apache\hive\hive-llap-client\3.1.2\hive-llap-client-3.1.2.jar;C:\Users\sb171\.m2\repository\org\apache\hive\hive-llap-tez\3.1.2\hive-llap-tez-3.1.2.jar;C:\Users\sb171\.m2\repository\io\netty\netty-all\4.1.17.Final\netty-all-4.1.17.Final.jar;C:\Users\sb171\.m2\repository\org\codehaus\jettison\jettison\1.1\jettison-1.1.jar;C:\Users\sb171\.m2\repository\org\apache\hive\hive-llap-common\3.1.2\hive-llap-common-3.1.2-tests.jar;C:\Users\sb171\.m2\repository\org\apache\hbase\hbase-hadoop2-compat\2.0.0-alpha4\hbase-hadoop2-compat-2.0.0-alpha4.jar;C:\Users\sb171\.m2\repository\org\apache\hbase\hbase-metrics\2.0.0-alpha4\hbase-metrics-2.0.0-alpha4.jar;C:\Users\sb171\.m2\repository\org\apache\hbase\hbase-metrics-api\2.0.0-alpha4\hbase-metrics-api-2.0.0-alpha4.jar;C:\Users\sb171\.m2\repository\org\apache\hadoop\hadoop-mapreduce-client-core\2.7.1\hadoop-mapreduce-client-core-2.7.1.jar;C:\Users\sb171\.m2\repository\org\apache\hbase\hbase-server\2.0.0-alpha4\hbase-server-2.0.0-alpha4.jar;C:\Users\sb171\.m2\repository\org\apache\hbase\hbase-http\2.0.0-alpha4\hbase-http-2.0.0-alpha4.jar;C:\Users\sb171\.m2\repository\org\glassfish\jersey\core\jersey-server\2.25.1\jersey-server-2.25.1.jar;C:\Users\sb171\.m2\repository\org\glassfish\jersey\core\jersey-common\2.25.1\jersey-common-2.25.1.jar;C:\Users\sb171\.m2\repository\org\glassfish\jersey\bundles\repackaged\jersey-guava\2.25.1\jersey-guava-2.25.1.jar;C:\Users\sb171\.m2\repository\org\glassfish\hk2\osgi-resource-locator\1.0.1\osgi-resource-locator-1.0.1.jar;C:\Users\sb171\.m2\repository\org\glassfish\jersey\core\jersey-client\2.25.1\jersey-client-2.25.1.jar;C:\Users\sb171\.m2\repository\org\glassfish\jersey\media\jersey-media-jaxb\2.25.1\jersey-media-jaxb-2.25.1.jar;C:\Users\sb171\.m2\repository\org\glassfish\hk2\hk2-api\2.5.0-b32\hk2-api-2.5.0-b32.jar;C:\Users\sb171\.m2\repository\org\glassfish\hk2\hk2-utils\2.5.0-b32\hk2-utils-2.5.0-b32.jar;C:\Users\sb171\.m2\repository\org\glassfish\hk2\external\aopalliance-repackaged\2.5.0-b32\aopalliance-repackaged-2.5.0-b32.jar;C:\Users\sb171\.m2\repository\org\glassfish\hk2\external\javax.inject\2.5.0-b32\javax.inject-2.5.0-b32.jar;C:\Users\sb171\.m2\repository\org\glassfish\hk2\hk2-locator\2.5.0-b32\hk2-locator-2.5.0-b32.jar;C:\Users\sb171\.m2\repository\org\javassist\javassist\3.20.0-GA\javassist-3.20.0-GA.jar;C:\Users\sb171\.m2\repository\javax\validation\validation-api\1.1.0.Final\validation-api-1.1.0.Final.jar;C:\Users\sb171\.m2\repository\org\glassfish\jersey\containers\jersey-container-servlet-core\2.25.1\jersey-container-servlet-core-2.25.1.jar;C:\Users\sb171\.m2\repository\org\apache\hbase\hbase-procedure\2.0.0-alpha4\hbase-procedure-2.0.0-alpha4.jar;C:\Users\sb171\.m2\repository\org\apache\hbase\hbase-common\2.0.0-alpha4\hbase-common-2.0.0-alpha4-tests.jar;C:\Users\sb171\.m2\repository\org\apache\hbase\hbase-replication\2.0.0-alpha4\hbase-replication-2.0.0-alpha4.jar;C:\Users\sb171\.m2\repository\org\apache\hbase\hbase-prefix-tree\2.0.0-alpha4\hbase-prefix-tree-2.0.0-alpha4.jar;C:\Users\sb171\.m2\repository\org\apache\commons\commons-collections4\4.1\commons-collections4-4.1.jar;C:\Users\sb171\.m2\repository\org\glassfish\web\javax.servlet.jsp\2.3.2\javax.servlet.jsp-2.3.2.jar;C:\Users\sb171\.m2\repository\org\glassfish\javax.el\3.0.1-b12\javax.el-3.0.1-b12.jar;C:\Users\sb171\.m2\repository\javax\ws\rs\javax.ws.rs-api\2.0.1\javax.ws.rs-api-2.0.1.jar;C:\Users\sb171\.m2\repository\com\lmax\disruptor\3.3.6\disruptor-3.3.6.jar;C:\Users\sb171\.m2\repository\org\apache\hadoop\hadoop-distcp\2.7.1\hadoop-distcp-2.7.1.jar;C:\Users\sb171\.m2\repository\org\apache\hadoop\hadoop-client\2.7.1\hadoop-client-2.7.1.jar;C:\Users\sb171\.m2\repository\org\apache\hadoop\hadoop-mapreduce-client-app\2.7.1\hadoop-mapreduce-client-app-2.7.1.jar;C:\Users\sb171\.m2\repository\org\apache\hadoop\hadoop-mapreduce-client-common\2.7.1\hadoop-mapreduce-client-common-2.7.1.jar;C:\Users\sb171\.m2\repository\org\apache\hadoop\hadoop-yarn-client\2.7.1\hadoop-yarn-client-2.7.1.jar;C:\Users\sb171\.m2\repository\org\apache\hadoop\hadoop-mapreduce-client-shuffle\2.7.1\hadoop-mapreduce-client-shuffle-2.7.1.jar;C:\Users\sb171\.m2\repository\org\apache\hadoop\hadoop-mapreduce-client-jobclient\2.7.1\hadoop-mapreduce-client-jobclient-2.7.1.jar;C:\Users\sb171\.m2\repository\org\apache\hbase\hbase-mapreduce\2.0.0-alpha4\hbase-mapreduce-2.0.0-alpha4.jar;C:\Users\sb171\.m2\repository\org\apache\hbase\hbase-common\2.0.0-alpha4\hbase-common-2.0.0-alpha4.jar;C:\Users\sb171\.m2\repository\com\github\stephenc\findbugs\findbugs-annotations\1.3.9-1\findbugs-annotations-1.3.9-1.jar;C:\Users\sb171\.m2\repository\org\apache\hbase\hbase-hadoop-compat\2.0.0-alpha4\hbase-hadoop-compat-2.0.0-alpha4.jar;C:\Users\sb171\.m2\repository\javax\servlet\jsp\javax.servlet.jsp-api\2.3.1\javax.servlet.jsp-api-2.3.1.jar;C:\Users\sb171\.m2\repository\commons-codec\commons-codec\1.7\commons-codec-1.7.jar;C:\Users\sb171\.m2\repository\org\eclipse\jetty\jetty-runner\9.3.20.v20170531\jetty-runner-9.3.20.v20170531.jar;C:\Users\sb171\.m2\repository\org\eclipse\jetty\jetty-plus\9.3.20.v20170531\jetty-plus-9.3.20.v20170531.jar;C:\Users\sb171\.m2\repository\org\eclipse\jetty\jetty-annotations\9.3.20.v20170531\jetty-annotations-9.3.20.v20170531.jar;C:\Users\sb171\.m2\repository\javax\annotation\javax.annotation-api\1.2\javax.annotation-api-1.2.jar;C:\Users\sb171\.m2\repository\org\ow2\asm\asm\5.0.1\asm-5.0.1.jar;C:\Users\sb171\.m2\repository\org\ow2\asm\asm-commons\5.0.1\asm-commons-5.0.1.jar;C:\Users\sb171\.m2\repository\org\ow2\asm\asm-tree\5.0.1\asm-tree-5.0.1.jar;C:\Users\sb171\.m2\repository\org\eclipse\jetty\jetty-jaas\9.3.20.v20170531\jetty-jaas-9.3.20.v20170531.jar;C:\Users\sb171\.m2\repository\org\eclipse\jetty\websocket\websocket-server\9.3.20.v20170531\websocket-server-9.3.20.v20170531.jar;C:\Users\sb171\.m2\repository\org\eclipse\jetty\websocket\websocket-common\9.3.20.v20170531\websocket-common-9.3.20.v20170531.jar;C:\Users\sb171\.m2\repository\org\eclipse\jetty\websocket\websocket-api\9.3.20.v20170531\websocket-api-9.3.20.v20170531.jar;C:\Users\sb171\.m2\repository\org\eclipse\jetty\websocket\websocket-client\9.3.20.v20170531\websocket-client-9.3.20.v20170531.jar;C:\Users\sb171\.m2\repository\org\eclipse\jetty\websocket\websocket-servlet\9.3.20.v20170531\websocket-servlet-9.3.20.v20170531.jar;C:\Users\sb171\.m2\repository\org\eclipse\jetty\jetty-jndi\9.3.20.v20170531\jetty-jndi-9.3.20.v20170531.jar;C:\Users\sb171\.m2\repository\org\eclipse\jetty\apache-jsp\9.3.20.v20170531\apache-jsp-9.3.20.v20170531.jar;C:\Users\sb171\.m2\repository\org\eclipse\jetty\toolchain\jetty-schemas\3.1\jetty-schemas-3.1.jar;C:\Users\sb171\.m2\repository\org\eclipse\jdt\core\compiler\ecj\4.4.2\ecj-4.4.2.jar;C:\Users\sb171\.m2\repository\org\eclipse\jetty\apache-jstl\9.3.20.v20170531\apache-jstl-9.3.20.v20170531.jar;C:\Users\sb171\.m2\repository\org\apache\taglibs\taglibs-standard-spec\1.2.5\taglibs-standard-spec-1.2.5.jar;C:\Users\sb171\.m2\repository\org\apache\taglibs\taglibs-standard-impl\1.2.5\taglibs-standard-impl-1.2.5.jar;C:\Users\sb171\.m2\repository\org\apache\thrift\libfb303\0.9.3\libfb303-0.9.3.jar;C:\Users\sb171\.m2\repository\org\apache\curator\curator-recipes\2.12.0\curator-recipes-2.12.0.jar;C:\Users\sb171\.m2\repository\org\jamon\jamon-runtime\2.3.1\jamon-runtime-2.3.1.jar;C:\Users\sb171\.m2\repository\org\apache\hive\hive-serde\3.1.2\hive-serde-3.1.2.jar;C:\Users\sb171\.m2\repository\com\google\code\findbugs\jsr305\3.0.0\jsr305-3.0.0.jar;C:\Users\sb171\.m2\repository\org\apache\arrow\arrow-vector\0.8.0\arrow-vector-0.8.0.jar;C:\Users\sb171\.m2\repository\org\apache\arrow\arrow-format\0.8.0\arrow-format-0.8.0.jar;C:\Users\sb171\.m2\repository\org\apache\arrow\arrow-memory\0.8.0\arrow-memory-0.8.0.jar;C:\Users\sb171\.m2\repository\io\netty\netty-buffer\4.1.17.Final\netty-buffer-4.1.17.Final.jar;C:\Users\sb171\.m2\repository\io\netty\netty-common\4.1.17.Final\netty-common-4.1.17.Final.jar;C:\Users\sb171\.m2\repository\com\carrotsearch\hppc\0.7.2\hppc-0.7.2.jar;C:\Users\sb171\.m2\repository\com\vlkan\flatbuffers\1.2.0-3f79e055\flatbuffers-1.2.0-3f79e055.jar;C:\Users\sb171\.m2\repository\org\apache\avro\avro\1.7.7\avro-1.7.7.jar;C:\Users\sb171\.m2\repository\org\codehaus\jackson\jackson-core-asl\1.9.13\jackson-core-asl-1.9.13.jar;C:\Users\sb171\.m2\repository\org\codehaus\jackson\jackson-mapper-asl\1.9.13\jackson-mapper-asl-1.9.13.jar;C:\Users\sb171\.m2\repository\com\thoughtworks\paranamer\paranamer\2.3\paranamer-2.3.jar;C:\Users\sb171\.m2\repository\org\xerial\snappy\snappy-java\1.0.5\snappy-java-1.0.5.jar;C:\Users\sb171\.m2\repository\net\sf\opencsv\opencsv\2.3\opencsv-2.3.jar;C:\Users\sb171\.m2\repository\org\apache\parquet\parquet-hadoop-bundle\1.10.0\parquet-hadoop-bundle-1.10.0.jar;C:\Users\sb171\.m2\repository\org\apache\hive\hive-metastore\3.1.2\hive-metastore-3.1.2.jar;C:\Users\sb171\.m2\repository\org\apache\hive\hive-standalone-metastore\3.1.2\hive-standalone-metastore-3.1.2.jar;C:\Users\sb171\.m2\repository\org\datanucleus\datanucleus-api-jdo\4.2.4\datanucleus-api-jdo-4.2.4.jar;C:\Users\sb171\.m2\repository\org\datanucleus\datanucleus-core\4.1.17\datanucleus-core-4.1.17.jar;C:\Users\sb171\.m2\repository\org\datanucleus\datanucleus-rdbms\4.1.19\datanucleus-rdbms-4.1.19.jar;C:\Users\sb171\.m2\repository\org\datanucleus\javax.jdo\3.2.0-m3\javax.jdo-3.2.0-m3.jar;C:\Users\sb171\.m2\repository\javax\transaction\transaction-api\1.1\transaction-api-1.1.jar;C:\Users\sb171\.m2\repository\sqlline\sqlline\1.3.0\sqlline-1.3.0.jar;C:\Users\sb171\.m2\repository\com\google\guava\guava\19.0\guava-19.0.jar;C:\Users\sb171\.m2\repository\org\apache\hbase\hbase-client\2.0.0-alpha4\hbase-client-2.0.0-alpha4.jar;C:\Users\sb171\.m2\repository\org\apache\hbase\thirdparty\hbase-shaded-protobuf\1.0.1\hbase-shaded-protobuf-1.0.1.jar;C:\Users\sb171\.m2\repository\org\apache\hbase\hbase-protocol-shaded\2.0.0-alpha4\hbase-protocol-shaded-2.0.0-alpha4.jar;C:\Users\sb171\.m2\repository\org\apache\hbase\hbase-protocol\2.0.0-alpha4\hbase-protocol-2.0.0-alpha4.jar;C:\Users\sb171\.m2\repository\junit\junit\4.12\junit-4.12.jar;C:\Users\sb171\.m2\repository\org\hamcrest\hamcrest-core\1.3\hamcrest-core-1.3.jar;C:\Users\sb171\.m2\repository\commons-io\commons-io\2.5\commons-io-2.5.jar;C:\Users\sb171\.m2\repository\org\apache\hbase\thirdparty\hbase-shaded-miscellaneous\1.0.1\hbase-shaded-miscellaneous-1.0.1.jar;C:\Users\sb171\.m2\repository\org\apache\hbase\thirdparty\hbase-shaded-netty\1.0.1\hbase-shaded-netty-1.0.1.jar;C:\Users\sb171\.m2\repository\org\apache\htrace\htrace-core\3.2.0-incubating\htrace-core-3.2.0-incubating.jar;C:\Users\sb171\.m2\repository\org\jruby\jcodings\jcodings\1.0.18\jcodings-1.0.18.jar;C:\Users\sb171\.m2\repository\org\jruby\joni\joni\2.1.11\joni-2.1.11.jar;C:\Users\sb171\.m2\repository\org\apache\commons\commons-crypto\1.0.0\commons-crypto-1.0.0.jar;C:\Users\sb171\.m2\repository\org\apache\hadoop\hadoop-auth\2.7.1\hadoop-auth-2.7.1.jar;C:\Users\sb171\.m2\repository\org\apache\directory\server\apacheds-kerberos-codec\2.0.0-M15\apacheds-kerberos-codec-2.0.0-M15.jar;C:\Users\sb171\.m2\repository\org\apache\directory\server\apacheds-i18n\2.0.0-M15\apacheds-i18n-2.0.0-M15.jar;C:\Users\sb171\.m2\repository\org\apache\directory\api\api-asn1-api\1.0.0-M20\api-asn1-api-1.0.0-M20.jar;C:\Users\sb171\.m2\repository\org\apache\directory\api\api-util\1.0.0-M20\api-util-1.0.0-M20.jar;C:\Users\sb171\.m2\repository\org\apache\yetus\audience-annotations\0.5.0\audience-annotations-0.5.0.jar;C:\Users\sb171\.m2\repository\com\jolbox\bonecp\0.8.0.RELEASE\bonecp-0.8.0.RELEASE.jar;C:\Users\sb171\.m2\repository\com\zaxxer\HikariCP\2.6.1\HikariCP-2.6.1.jar;C:\Users\sb171\.m2\repository\org\apache\derby\derby\10.14.1.0\derby-10.14.1.0.jar;C:\Users\sb171\.m2\repository\commons-pool\commons-pool\1.5.4\commons-pool-1.5.4.jar;C:\Users\sb171\.m2\repository\commons-dbcp\commons-dbcp\1.4\commons-dbcp-1.4.jar;C:\Users\sb171\.m2\repository\javax\jdo\jdo-api\3.0.1\jdo-api-3.0.1.jar;C:\Users\sb171\.m2\repository\javax\transaction\jta\1.1\jta-1.1.jar;C:\Users\sb171\.m2\repository\org\antlr\antlr-runtime\3.5.2\antlr-runtime-3.5.2.jar;C:\Users\sb171\.m2\repository\co\cask\tephra\tephra-api\0.6.0\tephra-api-0.6.0.jar;C:\Users\sb171\.m2\repository\co\cask\tephra\tephra-core\0.6.0\tephra-core-0.6.0.jar;C:\Users\sb171\.m2\repository\com\google\code\gson\gson\2.2.4\gson-2.2.4.jar;C:\Users\sb171\.m2\repository\com\google\inject\guice\3.0\guice-3.0.jar;C:\Users\sb171\.m2\repository\javax\inject\javax.inject\1\javax.inject-1.jar;C:\Users\sb171\.m2\repository\aopalliance\aopalliance\1.0\aopalliance-1.0.jar;C:\Users\sb171\.m2\repository\com\google\inject\extensions\guice-assistedinject\3.0\guice-assistedinject-3.0.jar;C:\Users\sb171\.m2\repository\it\unimi\dsi\fastutil\6.5.6\fastutil-6.5.6.jar;C:\Users\sb171\.m2\repository\org\apache\twill\twill-common\0.6.0-incubating\twill-common-0.6.0-incubating.jar;C:\Users\sb171\.m2\repository\org\apache\twill\twill-core\0.6.0-incubating\twill-core-0.6.0-incubating.jar;C:\Users\sb171\.m2\repository\org\apache\twill\twill-api\0.6.0-incubating\twill-api-0.6.0-incubating.jar;C:\Users\sb171\.m2\repository\org\apache\twill\twill-discovery-api\0.6.0-incubating\twill-discovery-api-0.6.0-incubating.jar;C:\Users\sb171\.m2\repository\org\apache\twill\twill-discovery-core\0.6.0-incubating\twill-discovery-core-0.6.0-incubating.jar;C:\Users\sb171\.m2\repository\org\apache\twill\twill-zookeeper\0.6.0-incubating\twill-zookeeper-0.6.0-incubating.jar;C:\Users\sb171\.m2\repository\co\cask\tephra\tephra-hbase-compat-1.0\0.6.0\tephra-hbase-compat-1.0-0.6.0.jar;C:\Users\sb171\.m2\repository\org\apache\hive\hive-shims\3.1.2\hive-shims-3.1.2.jar;C:\Users\sb171\.m2\repository\org\apache\hive\shims\hive-shims-common\3.1.2\hive-shims-common-3.1.2.jar;C:\Users\sb171\.m2\repository\org\apache\hive\shims\hive-shims-0.23\3.1.2\hive-shims-0.23-3.1.2.jar;C:\Users\sb171\.m2\repository\org\apache\hadoop\hadoop-yarn-server-resourcemanager\3.1.0\hadoop-yarn-server-resourcemanager-3.1.0.jar;C:\Users\sb171\.m2\repository\com\google\inject\extensions\guice-servlet\4.0\guice-servlet-4.0.jar;C:\Users\sb171\.m2\repository\com\sun\jersey\contribs\jersey-guice\1.19\jersey-guice-1.19.jar;C:\Users\sb171\.m2\repository\com\sun\jersey\jersey-servlet\1.19\jersey-servlet-1.19.jar;C:\Users\sb171\.m2\repository\org\apache\hadoop\hadoop-yarn-common\3.1.0\hadoop-yarn-common-3.1.0.jar;C:\Users\sb171\.m2\repository\com\fasterxml\jackson\module\jackson-module-jaxb-annotations\2.7.8\jackson-module-jaxb-annotations-2.7.8.jar;C:\Users\sb171\.m2\repository\com\fasterxml\jackson\jaxrs\jackson-jaxrs-json-provider\2.7.8\jackson-jaxrs-json-provider-2.7.8.jar;C:\Users\sb171\.m2\repository\com\fasterxml\jackson\jaxrs\jackson-jaxrs-base\2.7.8\jackson-jaxrs-base-2.7.8.jar;C:\Users\sb171\.m2\repository\org\apache\hadoop\hadoop-yarn-api\3.1.0\hadoop-yarn-api-3.1.0.jar;C:\Users\sb171\.m2\repository\com\sun\jersey\jersey-client\1.19\jersey-client-1.19.jar;C:\Users\sb171\.m2\repository\org\eclipse\jetty\jetty-util-ajax\9.3.19.v20170502\jetty-util-ajax-9.3.19.v20170502.jar;C:\Users\sb171\.m2\repository\org\apache\hadoop\hadoop-yarn-server-common\3.1.0\hadoop-yarn-server-common-3.1.0.jar;C:\Users\sb171\.m2\repository\org\apache\hadoop\hadoop-yarn-registry\3.1.0\hadoop-yarn-registry-3.1.0.jar;C:\Users\sb171\.m2\repository\commons-daemon\commons-daemon\1.0.13\commons-daemon-1.0.13.jar;C:\Users\sb171\.m2\repository\dnsjava\dnsjava\2.1.7\dnsjava-2.1.7.jar;C:\Users\sb171\.m2\repository\org\apache\geronimo\specs\geronimo-jcache_1.0_spec\1.0-alpha-1\geronimo-jcache_1.0_spec-1.0-alpha-1.jar;C:\Users\sb171\.m2\repository\org\ehcache\ehcache\3.3.1\ehcache-3.3.1.jar;C:\Users\sb171\.m2\repository\com\zaxxer\HikariCP-java7\2.4.12\HikariCP-java7-2.4.12.jar;C:\Users\sb171\.m2\repository\com\microsoft\sqlserver\mssql-jdbc\6.2.1.jre7\mssql-jdbc-6.2.1.jre7.jar;C:\Users\sb171\.m2\repository\org\apache\hadoop\hadoop-yarn-server-applicationhistoryservice\3.1.0\hadoop-yarn-server-applicationhistoryservice-3.1.0.jar;C:\Users\sb171\.m2\repository\de\ruedigermoeller\fst\2.50\fst-2.50.jar;C:\Users\sb171\.m2\repository\com\cedarsoftware\java-util\1.9.0\java-util-1.9.0.jar;C:\Users\sb171\.m2\repository\com\cedarsoftware\json-io\2.5.1\json-io-2.5.1.jar;C:\Users\sb171\.m2\repository\org\apache\hadoop\hadoop-yarn-server-web-proxy\3.1.0\hadoop-yarn-server-web-proxy-3.1.0.jar;C:\Users\sb171\.m2\repository\org\fusesource\leveldbjni\leveldbjni-all\1.8\leveldbjni-all-1.8.jar;C:\Users\sb171\.m2\repository\org\apache\hive\shims\hive-shims-scheduler\3.1.2\hive-shims-scheduler-3.1.2.jar;C:\Users\sb171\.m2\repository\org\apache\hive\hive-service-rpc\3.1.2\hive-service-rpc-3.1.2.jar;C:\Users\sb171\.m2\repository\org\apache\httpcomponents\httpclient\4.5.2\httpclient-4.5.2.jar;C:\Users\sb171\.m2\repository\commons-logging\commons-logging\1.2\commons-logging-1.2.jar;C:\Users\sb171\.m2\repository\org\apache\httpcomponents\httpcore\4.4.4\httpcore-4.4.4.jar;C:\Users\sb171\.m2\repository\org\apache\thrift\libthrift\0.9.3\libthrift-0.9.3.jar;C:\Users\sb171\.m2\repository\org\apache\zookeeper\zookeeper\3.4.6\zookeeper-3.4.6.jar;C:\Users\sb171\.m2\repository\org\slf4j\slf4j-log4j12\1.6.1\slf4j-log4j12-1.6.1.jar;C:\Users\sb171\.m2\repository\log4j\log4j\1.2.16\log4j-1.2.16.jar;C:\Users\sb171\.m2\repository\io\netty\netty\3.7.0.Final\netty-3.7.0.Final.jar;C:\Users\sb171\.m2\repository\org\apache\curator\curator-framework\2.12.0\curator-framework-2.12.0.jar;C:\Users\sb171\.m2\repository\org\apache\curator\curator-client\2.12.0\curator-client-2.12.0.jar;C:\Users\sb171\.m2\repository\org\slf4j\slf4j-api\1.7.10\slf4j-api-1.7.10.jar;C:\Users\sb171\.m2\repository\org\apache\hive\hive-upgrade-acid\3.1.2\hive-upgrade-acid-3.1.2.jar;C:\Users\sb171\.m2\repository\mysql\mysql-connector-java\8.0.30\mysql-connector-java-8.0.30.jar;C:\Users\sb171\.m2\repository\com\google\protobuf\protobuf-java\3.19.4\protobuf-java-3.19.4.jar com.edu.test.Task1 Person{day_time='null', total_msg_cnt=3735} +-----------------------------------+ {TASK1-HIVE}运行完成.. +-----------------------------------+ 发现空值:Person{day_time='null', total_msg_cnt=3735} Exception in thread "main" java.sql.BatchUpdateException: Column 'day_time' cannot be null at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) at java.lang.reflect.Constructor.newInstance(Constructor.java:423) at com.mysql.cj.util.Util.handleNewInstance(Util.java:192) at com.mysql.cj.util.Util.getInstance(Util.java:167) at com.mysql.cj.util.Util.getInstance(Util.java:174) at com.mysql.cj.jdbc.exceptions.SQLError.createBatchUpdateException(SQLError.java:224) at com.mysql.cj.jdbc.ClientPreparedStatement.executeBatchSerially(ClientPreparedStatement.java:816) at com.mysql.cj.jdbc.ClientPreparedStatement.executeBatchInternal(ClientPreparedStatement.java:418) at com.mysql.cj.jdbc.StatementImpl.executeBatch(StatementImpl.java:795) at com.edu.test.Task1.writeToMYSQL(Task1.java:83) at com.edu.test.Task1.main(Task1.java:67) Caused by: java.sql.SQLIntegrityConstraintViolationException: Column 'day_time' cannot be null at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:117) at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:122) at com.mysql.cj.jdbc.ClientPreparedStatement.executeInternal(ClientPreparedStatement.java:916) at com.mysql.cj.jdbc.ClientPreparedStatement.executeUpdateInternal(ClientPreparedStatement.java:1061) at com.mysql.cj.jdbc.ClientPreparedStatement.executeBatchSerially(ClientPreparedStatement.java:795) ... 4 more Process finished with exit code 1
06-30
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

总会有天明

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值