Mybatis-Plus(连接Hive)

序号类型地址
1MySQLMySQL操作之概念、SQL约束(一)
2MySQLMySQL操作之数据定义语言(DDL)(二)
3MySQLMySQL操作之数据操作语言(DML)(三)
4MySQLMySQL操作之数据查询语言:(DQL)(四-1)(单表操作)
5MySQLMySQL操作之数据查询语言:(DQL)(四-2)(多表查询)
6MySQLMySQL操作之数据控制语言:(DC)(五)
7MySQLMySQL操作之数据库函数
8MySQLMySQL管理之数据类型
9MySQLMySQL管理之索引
10MySQLMySQL管理之事务管理
11MySQLMySQL管理之存储过程
12MySQLMySQL管理之视图
13MySQLMySQL管理之数据备份与还原
14MySQLLinux(centos 7.5)服务器安装MySQL
15MyBatisMyBatis从入门到多表关联
16MyBatisMyBatis常用方法
17MyBatisMybatis逆向工程的使用(附文件地址)
18MyBatisspring boot连接Mybatis数据库的配置文件(MySql、SQLserver、Oracle)
19MyBatis-PlusMybatis-Plus使用案例(包括初始化以及常用插件)
20MyBatis-PlusMybatis-Plus(Service CRUD 接口)
21MyBatis-PlusMybatis-plus 4种条件构造器方式
22MyBatis-PlusMybatis-Plus 执行自定义SQL
23MyBatis-PlusMyBatis-plus配置自定义SQL(执行用户传入SQL)
24MyBatis-PlusMybatis-Plus(连接Hive)
25MyBatis-PlusMybatis-Plus 代码生成器


1、pom依赖

    <dependency>
        <groupId>com.baomidou</groupId>
        <artifactId>mybatis-plus-boot-starter</artifactId>
        <version>3.5.1</version>
    </dependency>
    <dependency>
      <groupId>org.apache.hive</groupId>
      <artifactId>hive-jdbc</artifactId>
      <version>2.3.8</version>
    </dependency>

2、配置文件

spring.datasource.dynamic.hive.driver-class-name=org.apache.hive.jdbc.HiveDriver
spring.datasource.dynamic.hive.url=jdbc:hive2://192.168.0.1:10000/user
spring.datasource.dynamic.hive.username=root
spring.datasource.dynamic.hive.password=root12345
spring.datasource.dynamic.hive.druid.filters=stat,slf4j

3、entity实体类

import lombok.Data;
import java.io.Serializable;

@Data
public class HiveSql implements Serializable {

    private static final long serialVersionUID = 1L;


}

4、mapper

import com.baomidou.dynamic.datasource.annotation.DS;
import com.baomidou.mybatisplus.annotation.SqlParser;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.lydms.entity.HiveSql;


@DS("hive")
public interface HiveSqlMapper extends BaseMapper<HiveSql> {

    @SqlParser(filter = true)
    void explainQuery(String sql);

}

5、mapper.xml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.lydms.mapper.HiveSqlMapper">

    <update id="explainQuery">
        ${templateName,jdbcType=VARCHAR}
    </update>
</mapper>

6、service使用

import com.lydms.mapper.HiveSqlMapper;
import com.lydms.entity.HiveSql;

    @Autowired
    private HiveSqlMapper hiveSqlMapper;

    @Override
    public R<String> checkSqlRule(String sql) {
      hiveSqlMapper.explainQuery(sql);
    }

7、可能遇到的问题

dbType not support : sqlite

解决:

配置监控统计拦截的filters,去掉后监控界面sql无法统计,'wall’用于防火墙(启动sqlite时候需要关闭wall)。把filters中的stat,wall,slf4j改成stat,slf4j

spring.datasource.dynamic.hive.druid.filters=stat,slf4j

参考连接:

http://www.zyiz.net/tech/detail-143690.html
  • 10
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 13
    评论
要在MyBatis-Plus连接Oracle指定数据库,需要进行以下步骤: 1. 首先,确保你的项目中已经添加了MyBatis-Plus的依赖,可以通过在项目的pom.xml文件中添加以下代码来引入依赖: ```xml <dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus</artifactId> <version>x.x.x</version> </dependency> ``` 请根据你需要使用的版本号替换掉"x.x.x"。 2. 确保已经在你的项目配置文件中添加了连接Oracle数据库的相关配置,包括数据库的URL、用户名和密码等信息。示例如下: ```xml spring.datasource.url=jdbc:oracle:thin:@127.0.0.1:1521:orcl spring.datasource.username=yourUsername spring.datasource.password=yourPassword spring.datasource.driver-class-name=oracle.jdbc.driver.OracleDriver ``` 请根据你实际的Oracle数据库配置信息进行相应修改。 3. 接下来,你需要创建一个实体类,用于映射连接的Oracle数据库的表结构。在实体类上使用`@TableName`注解来指定对应的数据库表名,同时,你可以使用`@TableField`注解来指定实体类字段与数据库字段的映射关系。 4. 创建一个Mapper接口,继承`BaseMapper`接口。这个接口会继承MyBatis-Plus提供的一些基本的数据库操作方法。 5. 最后,在你的代码中使用`@Autowired`注解来自动注入Mapper接口,在需要进行数据库操作的地方调用Mapper接口中的方法来实现相应的数据库操作。 通过以上步骤,你就可以在MyBatis-Plus中成功连接Oracle指定数据库,并实现相应的数据库操作了。记得在进行数据库操作时,要关注事务的管理,避免可能出现的数据一致性问题。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 13
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

ha_lydms

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

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

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

打赏作者

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

抵扣说明:

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

余额充值