springboot整合presto实现多数据源操作数据

pom文件


        org.springframework.boot
        spring-boot-starter-parent
        2.0.3.RELEASE
        
    

    

        
        
            org.springframework.boot
            spring-boot-starter-web
        

        
        
            mysql
            mysql-connector-java
        

        
        
            commons-dbutils
            commons-dbutils
            1.6
        

        
        
            com.alibaba
            druid
            1.1.10
        

        
        
            org.springframework.boot
            spring-boot-devtools
            true
        

        
            com.facebook.presto
            presto-jdbc
            0.203
        

        
            org.springframework
            spring-jdbc
        

    
    
        
            
                org.springframework.boot
                spring-boot-maven-plugin
                
                    
                    
                        org.springframework
                        springloaded
                        1.2.6.RELEASE
                    

                

            

        

    

配置文件

spring.datasource.presto.name=presto
spring.datasource.presto.driver-class-name=com.facebook.presto.jdbc.PrestoDriver
spring.datasource.presto.url=jdbc:presto://doit01:8080
spring.datasource.presto.username=root

配置类

**
 * @author HANGGE
 * 2020年3月4日
 */
@Configuration
public class GlobalDataSourceConfiguration {
	@Bean(name = "prestoDataSource")
	@ConfigurationProperties(prefix = "spring.datasource.presto")
	public DataSource prestoDataSource() {
		return new DruidDataSource();
	}
	
	@Autowired
	@Qualifier("prestoDataSource") 
	DataSource dataSource ;
	@Bean(name = "prestoTemplate")
	public JdbcTemplate prestoJdbcTemplate() {
		return new JdbcTemplate(dataSource);
	}

}

启动类

@SpringBootApplication
public class AppStarter {
	public static void main(String[] args) {
		//运行这个程序
		SpringApplication.run(AppStarter.class, args) ;
	}
}

controller

/**
 * @author HANGGE
 * 2020年3月4日
从hive和mysql中操作数据
 */
@RestController
public class PrestoDemo {
	@Autowired
	@Qualifier("prestoTemplate")
	JdbcTemplate jt ;
	@RequestMapping("/pres")
	public  List> pres(){
		return jt.queryForList("select * from hive.doit13.bm join mysql.doit.t1 on cast(hive.doit13.bm.deptno as int) = mysql.doit.t1.id");
	}
}

测试

你可能感兴趣的:(项目知识点,大数据之Spark)