-代码整体目录结构
- maven依赖(用于接口返回配置内容,便于直观看到效果来测试)
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
- application.properties 配置文件
###################################### hbase start ########################################################
#hbase config
#### hbase quorum url
hbase.config.hbase.zookeeper.quorum=xxx.xxx.xxx.xxx
#### hbase quorum port
hbase.config.hbase.zookeeper.port=2181
#### zookeeper hbase diructor
hbase.config.hbase.zookeeper.znode=/hbase
#### hbase keyvalue maxsize
hbase.config.hbase.client.keyvalue.maxsize=1572864000
###################################### hbase end ########################################################
- 创建properties配置类HbaseConfigProperties
package com.troll.example.bigdata.hbase.properties;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.stereotype.Component;
import java.util.Map;
@Component
@ConfigurationProperties(prefix = "hbase")
public class HbaseConfigProperties {
private Map<String, String> config;
public Map<String, String> getConfig() {
return config;
}
public void setConfig(Map<String, String> config) {
this.config = config;
}
}
- 创建Controller用于在界面显示HbaseController
package com.troll.example.bigdata.hbase.controller;
import com.troll.example.bigdata.hbase.properties.HbaseConfigProperties;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
* HBase 操作接口
* @Author Troll
* @Date 2019-02-14 12:48
*/
@RestController
@RequestMapping(value="/troll/example/bigdata/hbase")
public class HbaseController {
//日志
Logger logger = LoggerFactory.getLogger(HbaseController.class);
@Autowired
HbaseConfigProperties hbaseConfigProperties;
//读取hbase 配置
@RequestMapping(value="/getHbaseConfigProperties")
public String getHbaseConfigProperties(){
return "hbaseConfigProperties:"+hbaseConfigProperties.getConfig().entrySet().toString();
}
//测试页
@RequestMapping(value="/hello")
public String hello(){
return "hello,"+this.getClass().getSimpleName();
}
}