当前位置: 首页 > news >正文

六安网站建设公司net 网站开发

六安网站建设公司,net 网站开发,教做软件的网站,网站建设和发布的一般流程图前言 最近华为云云耀云服务器L实例上新,也搞了一台来玩,期间遇到各种问题,在解决问题的过程中学到不少和运维相关的知识。 在前几期的博客中,介绍了Elasticsearch的Docker版本的安装,Elasticsearch的可视化Kibana工具…

在这里插入图片描述

前言

最近华为云云耀云服务器L实例上新,也搞了一台来玩,期间遇到各种问题,在解决问题的过程中学到不少和运维相关的知识。

在前几期的博客中,介绍了Elasticsearch的Docker版本的安装,Elasticsearch的可视化Kibana工具安装,以及IK分词器的安装。

本篇博客介绍Elasticsearch的springboot整合,以及Kibana进行全查询和模糊查询。

其他相关的Elasticsearch的文章列表如下:

  • Elasticsearch的Docker版本的安装和参数设置 & 端口开放和浏览器访问

  • Elasticsearch的可视化Kibana工具安装 & IK分词器的安装和使用

在这里插入图片描述

其他相关的华为云云耀云服务器L实例评测文章列表如下:

  • 初始化配置SSH连接 & 安装MySQL的docker镜像 & 安装redis以及主从搭建 & 7.2版本redis.conf配置文件

  • 安装Java8环境 & 配置环境变量 & spring项目部署 &【!】存在问题未解决

  • 部署spring项目端口开放问题的解决 & 服务器项目环境搭建MySQL,Redis,Minio…指南

  • 由于自己原因导致MySQL数据库被攻击 & MySQL的binlog日志文件的理解

  • 认识redis未授权访问漏洞 & 漏洞的部分复现 & 设置连接密码 & redis其他命令学习

  • 拉取创建canal镜像配置相关参数 & 搭建canal连接MySQL数据库 & spring项目应用canal初步

  • Docker版的Minio安装 & Springboot项目中的使用 & 结合vue进行图片的存取

  • 在Redis的Docker容器中安装BloomFilter & 在Spring中使用Redis插件版的布隆过滤器

文章目录

  • 前言
  • 引出
  • springBoot整合elasticsearch
    • 1.引入依赖
    • 2.配置yml文件
      • 写配置类
    • 3.创建doc的实体类
    • 4.写实体类对应的mapper
    • 5.存取数据的测试
  • Kibana进行查询
    • 1.全查询
    • 2.进行模糊查询
    • 附录:Kibana报错解决
  • 总结

引出


1.Elasticsearch的springboot整合;
2.Kibana进行全查询和模糊查询;

springBoot整合elasticsearch

在这里插入图片描述

1.引入依赖

        <!--        elasticsearch的依赖 --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-elasticsearch</artifactId></dependency>

2.配置yml文件

在这里插入图片描述

server:port: 9090spring:application:# 给这个项目起个名称name: book-malldatasource:druid:url: jdbc:mysql://127.0.0.1:3306/book_db?useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=trueusername: rootpassword: 123driver-class-name: com.mysql.cj.jdbc.Driver# es的相关配置data:elasticsearch:repositories:enabled: true# es的ip+端口elasticsearch:uris: 124.70.138.34:9200mybatis-plus:configuration:log-impl: org.apache.ibatis.logging.stdout.StdOutImpl# 单元测试配置
knife4j:enable: true# 日志级别配置
logging:level:com.tinaju.bm: debug

写配置类

在这里插入图片描述

package com.tinaju.bm.config;import org.elasticsearch.client.RestHighLevelClient;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.data.elasticsearch.client.ClientConfiguration;
import org.springframework.data.elasticsearch.client.RestClients;
import org.springframework.data.elasticsearch.config.AbstractElasticsearchConfiguration;/*** Elasticsearch的配置类*/
@Configuration
public class ElasticsearchConfig extends AbstractElasticsearchConfiguration {@Value("${spring.elasticsearch.uris}")private String uris;@Bean@Overridepublic RestHighLevelClient elasticsearchClient() {ClientConfiguration configuration =ClientConfiguration.builder().connectedTo(uris).build();return RestClients.create(configuration).rest();}
}

3.创建doc的实体类

在这里插入图片描述

package com.tinaju.bm.entity.es;import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.springframework.data.annotation.Id;
import org.springframework.data.elasticsearch.annotations.DateFormat;
import org.springframework.data.elasticsearch.annotations.Document;
import org.springframework.data.elasticsearch.annotations.Field;
import org.springframework.data.elasticsearch.annotations.FieldType;import java.math.BigDecimal;
import java.util.Date;/*** 和es相关的映射类doc文档*/
@Data
@NoArgsConstructor
@AllArgsConstructor@Document(indexName = "book_index",createIndex = true)
public class BookDoc {@Id@Field(type = FieldType.Text)private String id;@Field(type = FieldType.Text)private String title;@Field(type = FieldType.Text)private String author;@Field(type = FieldType.Text)private String isbn;@Field(type = FieldType.Double) // 是double类型private BigDecimal price;@Field(type = FieldType.Integer)private Integer version;@Field(type = FieldType.Date,format = DateFormat.basic_date_time)private Date pubDate; // 出版日期@Field(type = FieldType.Integer)private Integer store; // 库存@Field(type = FieldType.Text)private String imgUrl; // 封面图片地址@Field(type = FieldType.Double) // 是double类型private BigDecimal weight; // 重量@Field(type = FieldType.Integer)private Integer sold; // 卖出数量;@Field(type = FieldType.Text)private String introduction; // 简介@Field(type = FieldType.Integer)private Integer pages; // 图书页数@Field(type = FieldType.Date,format = DateFormat.basic_date_time)private Date createTime;@Field(type = FieldType.Date,format = DateFormat.basic_date_time)private Date updateTime;@Field(type = FieldType.Text)private String createBy; // 数据记录人@Field(type = FieldType.Text)private Long publisherName; // 出版社@Field(type = FieldType.Text)private Long typeName; // 类型}

4.写实体类对应的mapper

在这里插入图片描述

package com.tinaju.bm.dao.es;import com.tinaju.bm.entity.es.BookDoc;
import org.apache.ibatis.annotations.Mapper;
import org.springframework.data.elasticsearch.repository.ElasticsearchRepository;/*** es的dao,实体类类型,和主键的类型*/
@Mapper
public interface IBookDocDao extends ElasticsearchRepository<BookDoc,String> {
}

5.存取数据的测试

在这里插入图片描述

    @Autowiredprivate IBookDocDao bookDocDao;@Overridepublic void addToES() {List<Book> books = bookMapper.selectList(null);books.forEach(book -> {BookDoc bookDoc = new BookDoc();bookDoc.setId(book.getId()+"");bookDoc.setAuthor(book.getAuthor());bookDoc.setIntroduction(book.getIntroduction());bookDoc.setTitle(book.getTitle());bookDoc.setPrice(book.getPrice());bookDocDao.save(bookDoc);});}

在这里插入图片描述

进行es的查询

在这里插入图片描述

    @Autowiredprivate IBookDocDao bookDocDao;@Testpublic void findES() {Iterable<BookDoc> all = bookDocDao.findAll();System.out.println(all);all.forEach(bookDoc -> {System.out.println(bookDoc);});System.out.println("###############");Optional<BookDoc> byId = bookDocDao.findById("4");System.out.println(byId.get());}

Kibana进行查询

1.全查询

GET /book_index/_search

全查询,耗时比Navicat多,可能是我的数据量较少,并且es是在服务器上,网络可能也有延迟;

而我的mysql是本地的数据库;

在这里插入图片描述

Navicat进行查询

在这里插入图片描述

2.进行模糊查询

MySQL进行模糊查询

在这里插入图片描述

es进行模糊查询

在这里插入图片描述

GET /book_index/_search
{"query": {"bool": {"should": [{"fuzzy": {"title": {"value": "中"}}},{"wildcard": {"author": {"value": "中"}}},{"wildcard": {"introduction": {"value": "中"}}}]}}
}

附录:Kibana报错解决

打开kibana网页后报错

在这里插入图片描述

在配置文件里面设置server.name解决问题

在这里插入图片描述


总结

1.Elasticsearch的springboot整合;
2.Kibana进行全查询和模糊查询;

http://www.dtcms.com/a/509433.html

相关文章:

  • 【CTF】JWT漏洞实验
  • 加密网站扬州做网站的网络公司
  • 网站备案 山东核验点网站建设论文开题报告
  • 方维网络的品牌网站建设wordpress删除主题数据
  • 美食网站设计目的尤溪网站建设
  • 建设部网站造价咨询工业设计软件上市公司
  • 外贸自建站的推广方式门户网站建设的平台
  • 呼和浩特网站建设哪家最便宜如何把wordpress头部去掉
  • 兰州网站订制网站建设与准备
  • 专业网站优化软件重庆承越网站建设公
  • 谷歌推广网站开发公司是否可以代建筑公司支付材料款
  • 上海本地网站建设小程序代码怎么获取
  • FTP 和 SFTP:作用、使用场景及详细使用教程
  • 东莞常平网站建设网站建设要做原型图吗
  • 重庆市建设工程信息网官网怎么查看seo业务培训
  • 长沙个人网站建设网站中医建设
  • 【图像理解进阶】如何用大模型实现手写汉字识别?Python实战教程
  • 淇县住房和城乡建设局网站怎样用手机做推广免费网站
  • 外贸网站建设不可缺少的灵活性超级优化空间
  • 企业网站的设计思路手机网站建设渠道
  • 荣欣建设集团有限公司网站广东东莞电子厂
  • 群晖做自己的电影网站织梦网站栏目建设
  • 嵌入式开发学习日志41——stm32之SPI总线基本结构
  • 哈尔滨网站建设公司oeminc信息爆炸的时代做网站
  • 网站建设的项目方案模板中国建设企业银行
  • 泉州自助建站软件免费域名注册方式
  • 商城网站哪个公司做的好处羽毛球赛事2022
  • 高邮城乡建设局 网站长春网站建设厂家
  • 浙江城乡建设网站证件查询张家港网站建设服务
  • 【Java工程师面试全攻略】Day14:大数据处理与实时计算深度解析