在Spring中配置Spark hive-thriftserver的连接DataSource与配置其他数据源连接方式是一样的,如一般Oracle数据源配置,使用如下必须的Jar包:

使用JDBC程序示例:

package com.hadoop.test;import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;public class ThreadSql extends  Thread  {@Overridepublic void run() {excSparkSql();}public  void  excSparkSql() {String result = "";Connection conn = null;Statement stmt = null;try {Class.forName("org.apache.hadoop.hive.jdbc.HiveDriver");conn = DriverManager.getConnection("jdbc:hive://10.20.12.214:10000/test_db", "hduser001", "");stmt = conn.createStatement();String sql = " select count(1) from test_data "; long start = System.currentTimeMillis();ResultSet res = stmt.executeQuery(sql);long cost = System.currentTimeMillis() - start;result = Thread.currentThread().getName() + ": " + cost/1000.0f + "s";System.out.println(result);stmt.close();conn.close();} catch (Exception e) {try {stmt.close();conn.close();} catch (SQLException e1) {// TODO Auto-generated catch blocke1.printStackTrace();}e.printStackTrace();}}}

在Spring中配置如下,类似oracle的datasource配置,并在其他的ServiceBean中将其注入即可

    <bean id="dataService" class="com.sun.dt.service.impl.DataServiceImpl"><property name="dataDao" ref="sparkDataSource"></property></bean><bean id="oralceDataSource" class="org.apache.commons.dbcp.BasicDataSource"  destroy-method="close">  <property name="driverClassName" value="${jdbc.driver}" />  <property name="url" value="${jdbc.url}" />  <property name="username" value="${jdbc.username}" />  <property name="password" value="${jdbc.password}" /><property name="maxActive" value="${jdbc.maxActive}" /><property name="maxIdle" value="${jdbc.maxIdle}" /><property name="maxWait" value="${jdbc.maxWait}" /><property name="defaultAutoCommit" value="${jdbc.defaultAutoCommit}" /></bean>  <bean id="sparkDataSource" class="org.apache.commons.dbcp.BasicDataSource"  destroy-method="close">  <property name="driverClassName" value="org.apache.hadoop.hive.jdbc.HiveDriver" />  <property name="url" value="jdbc:hive://192.168.10.124:10000/test_db" />  <property name="username" value="hduser001" />  <property name="password" value="" /><property name="maxActive" value="8" /><property name="maxIdle" value="3" /><property name="maxWait" value="5" /></bean>

转载于:https://blog.51cto.com/xubcing/1607384

Spring中使用Spark连接的DataSource相关推荐

  1. spring中的mongoTemplate连接mongo数据库及其多数据源

    提前声明下使用的是JAVA语言Maven打包依赖工具和springboot全家桶套餐 一.在pom.xm中引用依赖 现在这里提上一嘴,使用mongo数据库,必然会使用mongo集群,起码得两个节点,需 ...

  2. spring中使用ftp连接池(ftpClientPool)

    如题,我们在一些项目中可能会涉及到ftp上传.下载客户资料.附件.但是若每次上传或下载时都去创建一次ftp连接,上传(  下载)一个文件再关闭,则太耗费连接资源,这时候可以考虑使用连接池(就如同我们需 ...

  3. Spring中配置DataSource数据源的几种选择

    Spring中配置DataSource数据源的几种选择 在Spring框架中有如下3种获得DataSource对象的方法: 从JNDI获得DataSource. 从第三方的连接池获得DataSourc ...

  4. spring连接jdbc_在Spring JDBC中添加C3PO连接池

    spring连接jdbc 连接池是一种操作,其中系统会预先初始化将来要使用的连接. 这样做是因为在使用时创建连接是一项昂贵的操作. 在这篇文章中,我们将学习如何在Spring JDBC中创建C3P0连 ...

  5. 在Spring JDBC中添加C3PO连接池

    连接池是一种操作,其中系统会预先初始化将来要使用的连接. 这样做是因为在使用时创建连接是一项昂贵的操作. 在本文中,我们将学习如何在Spring JDBC中创建C3P0连接池(某人未使用休眠). Po ...

  6. 【sping揭秘】19、关于spring中jdbctemplate中的DataSource怎么来呢

    我们这是可以正好借助之前学的factorybean类,自己吧jdbctemplate加载到spring容器中,我们可以封装多个这种对象,那么可以实现针对不同的数据库的jdbctemplate 首先我们 ...

  7. 被缠上了,小王问我怎么在 Spring Boot 中使用 JDBC 连接 MySQL

    上次帮小王入了 Spring Boot 的门后,他觉得我这个人和蔼可亲.平易近人,于是隔天小王又微信我说:"二哥,快教教我,怎么在 Spring Boot 项目中使用 JDBC 连接 MyS ...

  8. 在 Spring Boot 中使用 HikariCP 连接池

    上次帮小王解决了如何在 Spring Boot 中使用 JDBC 连接 MySQL 后,我就一直在等,等他问我第三个问题,比如说如何在 Spring Boot 中使用 HikariCP 连接池.但我等 ...

  9. Spring Boot错误–创建在类路径资源DataSourceAutoConfiguration中定义的名称为“ dataSource”的bean时出错...

    大家好,如果您使用的是Spring Boot,并且遇到诸如"无法为数据库类型NONE确定嵌入式数据库驱动程序类"或"在类路径资源ataSourceAutoConfigur ...

最新文章

  1. python简易木马(一)
  2. Java IO流学习总结二:File
  3. █年薪20万招聘软件工程师!!!
  4. DM入门之Apriori小结
  5. no segments* file found in SimpleFSDirectory问题总结
  6. Java算法之旋转数组
  7. 此变量非彼变量(python变量)
  8. AppCan开发者资料分享(定期更新)
  9. 阿里巴巴微服务技术实践
  10. 小米虚拟键透明方法_小米 6 用户该换机了!小米 6 Pro 曝光
  11. Dual DSI on msm8937
  12. 福利 | 启迪之星2018首期AI创业加速营免费名额
  13. python列表遍历元组_Python 元组遍历排序操作方法
  14. 国外开源IoT平台Thingsboard社区版本(V3.3.2)在Win10环境下进行源码编译及运行指南
  15. 《Python金融大数据风控建模实战》 第6章 变量分箱方法
  16. 【axios源码】- 取消请求cancel模块研读解析
  17. linux shell脚本学习
  18. Exchange 2016批量新建账号
  19. 【TypeScript入门】TypeScript入门篇——运算符
  20. java springboot 微信小程序开发框架源码

热门文章

  1. OpenStack Telemetry系统架构及实践
  2. Java生鲜电商平台-秒杀系统微服务架构设计与源码解析实战
  3. vue-router的路由
  4. 模板—tarjan求割边
  5. JSP XML数据处理
  6. 10.13 上午 考试
  7. linux常用网络命令
  8. hdu5489 Removed Interval dp+线段树优化
  9. BZOJ 3039: 玉蟾宫( 悬线法 )
  10. jquery实战--定宽