使用MyBatis從hive中讀取數(shù)據(jù)
更新時間:2024年05月08日 10:29:49 作者:amadeus_liu2
Hive是一個基于Hadoop的數(shù)據(jù)倉庫工具,它可以方便地對大規(guī)模數(shù)據(jù)進行查詢和分析,本文主要介紹了使用MyBatis從hive中讀取數(shù)據(jù),具有一定的參考價值,感興趣的可以了解一下
一、hive表:

啟動hiveserver2
二、添加mybatis starter和hive依賴
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>org.example</groupId>
<artifactId>hivejdbc</artifactId>
<version>1.0-SNAPSHOT</version>
<properties>
<maven.compiler.source>8</maven.compiler.source>
<maven.compiler.target>8</maven.compiler.target>
</properties>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.6.6</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>1.3.1</version>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
</dependency>
<dependency>
<groupId>org.apache.hive</groupId>
<artifactId>hive-jdbc</artifactId>
<version>2.1.1</version>
<exclusions>
<exclusion>
<groupId>org.eclipse.jetty</groupId>
<artifactId>jetty-runner</artifactId>
</exclusion>
</exclusions>
</dependency>
<!-- https://mvnrepository.com/artifact/org.apache.hive/hive-exec -->
<dependency>
<groupId>org.apache.hive</groupId>
<artifactId>hive-exec</artifactId>
<version>3.0.0</version>
</dependency>
</dependencies>
</project>
三、配置文件application.properties中配置數(shù)據(jù)源:
server.port=9202 spring.datasource.driverClassName=org.apache.hive.jdbc.HiveDriver spring.datasource.url=jdbc:hive2://xx.xx.xx.xx:10000/default spring.datasource.username= spring.datasource.password=
四、定義mapper
package cn.edu.tju.mapper;
import cn.edu.tju.domain.UserInfo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Select;
import java.util.List;
import java.util.Map;
@Mapper
public interface UserInfoMapper {
@Select("select * from userinfo")
List<Map<String,Object>> getUserList();
}
五、定義controller,注入mapper并使用
package cn.edu.tju.controller;
import cn.edu.tju.domain.UserInfo;
import cn.edu.tju.mapper.UserInfoMapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
import java.util.Map;
@RestController
public class UserInfoController {
@Autowired
private UserInfoMapper userInfoMapper;
@RequestMapping("/getUserInfo")
public String getUserInfo() {
List<Map<String, Object>> userList = userInfoMapper.getUserList();
int size = userList.size();
//System.out.println(size);
for (int i = 0; i < size; i ++ ){
Map userInfo = (Map)userList.get(i).get("userinfo");
System.out.println(userInfo.get("x"));
System.out.println(userInfo.get("y"));
}
return "ok";
}
}到此這篇關(guān)于使用MyBatis從hive中讀取數(shù)據(jù)的文章就介紹到這了,更多相關(guān)MyBatis hive讀取內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
java:Apache Commons Configuration2占位符使用方式
Apache Commons Configuration2中的占位符功能允許在配置值中引用其他配置屬性或外部值,通過`${前綴:鍵名}`格式實現(xiàn),它提供了多種默認的Lookup實現(xiàn),如base64編碼/解碼、日期格式化、環(huán)境變量、文件讀取等,此外,還支持自定義占位符實現(xiàn),以滿足特定需求2025-12-12
Spring?Boot整合阿里開源中間件Canal實現(xiàn)數(shù)據(jù)增量同步
這篇文章主要為大家介紹了Spring?Boot整合阿里開源中間件Canal實現(xiàn)數(shù)據(jù)增量同步示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2022-06-06
SpringBoot+MyBatis進行XML中循環(huán)處理List參數(shù)的終極指南
這篇文章主要為大家詳細介紹了SpringBoot整合MyBatis進行XML中循環(huán)處理List參數(shù)的相關(guān)知識,文中的示例代碼講解詳細,感興趣的小伙伴可以了解下2025-07-07

