SHDP--Working With HBase (二)之HBase JDBC驱动Phoenix与SpringJDBCTemplate的集成

时间:2021-12-14 17:20:07
Phoenix:Phoenix将SQL查询语句转换成多个scan操作,并编排执行最终生成标准的JDBC结果集。
Spring将数据库访问的样式代码提取到JDBC模板类中,JDBC模板还承担了资源管理和异常处理的工作,Phoenix作为JDBC驱动同样可以将其与Spring集成,提高开发效率。
具体操作如下:

1.配置applicationContext.xml

<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:hdp="http://www.springframework.org/schema/hadoop"
xsi:schemaLocation="
http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/hadoop http://www.springframework.org/schema/hadoop/spring-hadoop.xsd">
//配置Phoenix数据源
<bean id="phoenixDataSource" class="org.apache.commons.dbcp.BasicDataSource">
<property name="driverClassName" value="org.apache.phoenix.jdbc.PhoenixDriver"/>
<property name="url" value="jdbc:phoenix:master"/>
<property name="initialSize" value="15"/>
<property name="maxActive" value="0"/>
</bean>
//选择JDBC模板
<bean id="phoenixJdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate">
<constructor-arg ref="phoenixDataSource"/>
<qualifier value="phoenixJdbcTemplate"/>
</bean> <bean id="travelDao" class="com.mobin.dao.impl.TravelDaoImpl">
<property name="jdbcTemplate" ref="phoenixJdbcTemplate"/>
</bean>
</beans>

2.JDBC代码模板

public class TravelDaoImpl implements TravelDao{

    private JdbcTemplate jdbcTemplate;

    jdbcTemplate.xxx()//通过调用jdbcTemplate封装的方法访问Phoenix并进行相关的操作如查询,更新等

    public JdbcTemplate getJdbcTemplate() {
return jdbcTemplate;
} public void setJdbcTemplate(JdbcTemplate jdbcTemplate) {
this.jdbcTemplate = jdbcTemplate;
}
}