用springboot+elasticserach7的demo,对比sider和百度ai的异同

这篇具有很好参考价值的文章主要介绍了用springboot+elasticserach7的demo,对比sider和百度ai的异同。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

对比aigc引擎:sider chatgpt3.5和百度ai

提示词:

springboot2.5,连接elasticsearch7的demo,要有基本的操作,用模板方法

以下是一个使用Spring Boot 2.5连接Elasticsearch 7的示例代码,包括基本的操作方法:

首先,需要在pom.xml文件中添加Elasticsearch的依赖:

 
xml<dependency>
<groupId>org.elasticsearch.client</groupId>
<artifactId>elasticsearch-rest-high-level-client</artifactId>
<version>7.15.0</version>
</dependency>

然后,创建一个Spring Boot应用程序并添加以下配置:

 
java@Configuration
public class ElasticsearchConfig {

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

@Value("${elasticsearch.port}")
private int port;

@Value("${elasticsearch.username}")
private String username;

@Value("${elasticsearch.password}")
private String password;

@Bean
public RestHighLevelClient client() {
return new RestHighLevelClient(
RestClient.builder(new HttpHost(host, port, "http"), new HttpHost(host, port, "http"))
.setHttpClientConfigCallback(httpClientBuilder -> {
httpClientBuilder.setDefaultCredentialsProvider(CredentialsProviderBuilder.create()
.setUsername(username)
.setPassword(password)
.build());
return httpClientBuilder;
}));
}
}

接下来,创建一个ElasticsearchRepository接口,用于定义基本的Elasticsearch操作方法:

 
javapublic interface ElasticsearchRepository {

@Query("{\"match\": {\"${idField}\": \"?0\"}}")
Optional<Object> findById(String id);

default void index(Object document) {
IndexRequest request = new IndexRequest(document);
client().index(request, RequestOptions.DEFAULT);
}

default void deleteById(String id) {
DeleteRequest request = new DeleteRequest(id);
client().delete(request, RequestOptions.DEFAULT);
}
}

其中,${idField}是用于匹配文档ID的占位符,需要根据具体情况进行替换。在示例中,我们使用Optional来处理查询结果,以便在找不到文档时返回空值。index()deleteById()方法分别用于将文档索引到Elasticsearch和删除具有指定ID的文档。这些方法都是默认方法,因此可以直接在类中调用它们。

最后,我们需要创建一个实现了ElasticsearchRepository接口的具体实现类,例如:

 
java@Service
public class ElasticsearchService implements ElasticsearchRepository {

@Override
public Optional<Object> findById(String id) {
return client().get(new GetRequest(id), new AbstractResponseEntityWrapper<Object>() {
@Override
protected Object bodyToEntity(Response response) throws IOException {
return response.getEntity();
}
}).optional();
}
}

对比到sider:

下面是一个使用Spring Boot 2.5连接Elasticsearch 7的示例程序,包括基本的功能,使用模板方法:

首先,确保你的项目中添加了以下依赖:

<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-elasticsearch</artifactId> </dependency>

然后,创建一个Elasticsearch配置类,配置Elasticsearch连接信息:

@Configuration public class ElasticsearchConfig { @Value("${elasticsearch.host}") private String host; @Value("${elasticsearch.port}") private int port; @Bean public RestHighLevelClient elasticsearchClient() { RestClientBuilder builder = RestClient.builder(new HttpHost(host, port, "http")); RestHighLevelClient client = new RestHighLevelClient(builder); return client; } @Bean public ElasticsearchOperations elasticsearchTemplate() { return new ElasticsearchRestTemplate(elasticsearchClient()); } }
接下来,创建一个数据实体类,用于映射Elasticsearch中的文档:

@Document(indexName = "my_index", type = "my_type") public class MyEntity { @Id private String id; private String name; // getters and setters }
然后,创建一个数据访问接口,继承自ElasticsearchRepository,用于操作Elasticsearch中的文档:

public interface MyEntityRepository extends ElasticsearchRepository<MyEntity, String> { List<MyEntity> findByName(String name); }
最后,创建一个Spring Boot应用程序类,编写一些简单的示例代码:

@SpringBootApplication public class DemoApplication implements CommandLineRunner { @Autowired private MyEntityRepository myEntityRepository; public static void main(String[] args) { SpringApplication.run(DemoApplication.class, args); } @Override public void run(String... args) throws Exception { // 创建一个文档 MyEntity entity = new MyEntity(); entity.setId("1"); entity.setName("John"); myEntityRepository.save(entity); // 根据名称查询文档 List<MyEntity> entities = myEntityRepository.findByName("John"); for (MyEntity e : entities) { System.out.println(e.getId() + ": " + e.getName()); } } }
在application.properties文件中配置Elasticsearch连接信息:

elasticsearch.host=localhost elasticsearch.port=9200
这样,就完成了一个使用Spring Boot连接Elasticsearch的简单示例程序。你可以根据自己的需求进一步扩展和定制。

 ----------------------------

分析:两者生成的代码本质上差别不大,每次刷新之后会有新的结果,有的时候结果也会差不多,在固定的格式上编写的代码,其实都差不多的。文章来源地址https://www.toymoban.com/news/detail-696491.html

到了这里,关于用springboot+elasticserach7的demo,对比sider和百度ai的异同的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【AIGC 讯飞星火 | 百度AI|ChatGPT| 】智能对比

    主页传送门:📀 传送   俗话说,货比三家,今天就来多角度对比下讯飞星火大模型 ,百度AI 和chatGPT三者的智能程度   就GPT而言,描述的越详细得到的答案基本上越准确,相对概念类而言,符合国人诉求的是百度AI 讯飞星火相对比较简单,就是基本的介绍。 以AIGC是什

    2024年02月12日
    浏览(55)
  • 长安链、趣链和百度超级链BaaS服务平台对比

    No. Functions 长安链 趣链 百度超级链 1 服务平台的部署方式 docker docker docker 2 多链 长安链 试用版只支持趣链 内部版支持fabric等 fabric等外部链的支持尚不明确 3 多账本 支持 支持 支持 4 平台上建链 支持 内部版支持 正式版支持 5 纳管/订阅/导入链 支持 支持 正式版支持 6 一个主

    2024年02月09日
    浏览(39)
  • 百度竞价排名推广对比自然排名哪一个更具优势-华媒舍

    在搜索引擎结论网页页面(SERP)中,我们经常会看到一些网站链接及其广告栏。这种连接一般分为两种类型:百度竞价推广排名推广与自然排名。究竟哪个更有优势?本文将对这几种排名形式进行科谱详细介绍。 什么叫百度竞价推广排名推广? 百度竞价排名推广是一种广告

    2024年02月05日
    浏览(61)
  • “百里挑一”AI原生应用亮相,百度智能云千帆AI加速器首个Demo Day来了!

    作者简介: 辭七七,目前大二,正在学习C/C++,Java,Python等 作者主页: 七七的个人主页 文章收录专栏: 七七的闲谈 欢迎大家点赞 👍 收藏 ⭐ 加关注哦!💖💖 自动化、智能化的企业AI智能法务,私人专属的健康孪生体,打破求职信息差的AI职业规划助理,准确、高效、可

    2024年02月04日
    浏览(47)
  • ElasticSerach忘记密码,密码重置

    elasticSearch8.5版本加入了Security安全,这样我们第一次启动的时候会在控制台打印出来自动生成的密码,但是我们可能没有保存,后面就不知道密码了。或者我们设置了密码忘记了怎么办? elasticSearch给我们提供了重置密码功能。 首先进入到bin目录,执行如下命令进行密码重置

    2024年02月11日
    浏览(98)
  • 【创作赢红包】ElasticSerach基础概念知识梳理

    目录 ES概念介绍 1、ES核心概念组成 2、ES数据类型介绍 2.1 字符串型 2.2 数值型 2.3 布尔型 boolean 2.4 二进制类型 binary 2.5 范围类型 2.6 日期型 date 2.7 复杂数据类型 3、特点 4、应用场景举例 Ela ticsearch,简称为ES, ES是一个开源的高扩展的分布式全文搜索引擎,是整个Elastic Stack技

    2023年04月26日
    浏览(56)
  • ElasticSerach+MongoDB:实现文章检索历史功能

    展示用户的搜索记录10条,按照搜索的时间倒序 可以删除搜索记录 保存历史记录,保存10条,多余的则删除最久的历史记录 用户的搜索记录,需要给每一个用户都保存一份,数据量较大,要求加载速度快,通常这样的数据存储到mongodb更合适,不建议直接存储到关系型

    2024年02月07日
    浏览(35)
  • springBoot 简单的demo

    浏览器发送hello请求,返回“hello sping boot 3”

    2024年02月13日
    浏览(22)
  • SpringBoot 整合 RabbitMQ demo

    Rabbit Windows安装教程 本文只做Demo案例的分享,具体知识需自行百度 1.application.properties 配置Rabbit的基本信息 2.pom文件 导入两个maven依赖 第一个是SpringBoot集成的rabbit 第二个是web依赖,用来方便发消息 3.Rabbit配置类 这里用的是主题模式,也就是模糊匹配的模式 这里设置的是只

    2024年02月17日
    浏览(41)
  • SpringBoot整合SSMP小demo

    spring web,mybatis,mysql勾选 加入mp和druid,依赖见SpringBoot基础认识_阳光明媚UPUP的博客-CSDN博客 写个数据表,写个domain包实体类。  写个mappr包接口@Mapper生成实现类,继承mp  新增报错 //mybatis-plus默认生成的id的方式为自己自订的雪花算法 //而数据库提供的id自增的方法  yml中配

    2024年02月14日
    浏览(32)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包