[ Spring Boot整合] Elasticsearch

一、依赖
<dependencies>
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>

<!-- elasticsearch启动器 (必须)-->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-data-elasticsearch</artifactId>
</dependency>
</dependencies>


二、ESConfig
/**
 * ES 连接配置
 */
@Configuration
@EnableElasticsearchRepositories(basePackages = "com.haoxiansheng.common.dao")
public class ESConfig extends AbstractElasticsearchConfiguration {

    @Value("$(elasticsearch.host)")
    private String host;

    @Value("$(elasticsearch.port)")
    private String port;

    /**
     * todo 了解一下这个的用法
     */
    @Autowired
    private ElasticsearchOperations elasticsearchOperations;

    /**
     * 继承下面那个类
     * nodename nor servname provided, or not known
     */

    @Override
    public RestHighLevelClient elasticsearchClient() {
        return RestClients.create(ClientConfiguration.localhost()).rest();
    }
//    /**
//     * 第二种方法
//     */
//    @Bean
//    public RestHighLevelClient client() {
//        ClientConfiguration clientConfiguration = ClientConfiguration.builder().connectedTo(host).build();
//        return RestClients.create(clientConfiguration).rest();
//    }
}

三、application.properties
# 配置控制台打印Sql 你可以看到执行时的sql
spring.jpa.show-sql=true
spring.jpa.properties.hibernate.format_sql=true
#取消注释两个条目以连接本地elasticsearch群集  本地已经使用配置
#spring.data.elasticsearch.clusterName=myelasticsearch
#spring.data.elasticsearch.clusterNodes=localhost:9300
四、DAO 层
import com.haoxisnheng.common.entity.Audit;
import org.springframework.data.elasticsearch.repository.ElasticsearchCrudRepository;
public interface AuditRepository  extends ElasticsearchCrudRepository<Audit, String> {
//	实现自己定义的查询 或使用继承的
}
五、实体类
@Data
@Document(indexName = "audit", type = "audit")
public class Audit {

    @Id
    private String id;

    @Field(type = FieldType.Date)
    private String time;

    private String customerId;

    private String customerName;

    private String operation;

    private String resourceType;

    private String content;

    private String details;

    public Audit() {
    }

    public Audit(String id, String time, String customerId, String customerName, String operation, String resourceType, String content, String details) {
        this.id = id;
        this.time = time;
        this.customerId = customerId;
        this.customerName = customerName;
        this.operation = operation;
        this.resourceType = resourceType;
        this.content = content;
        this.details = details;
    }
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值