当前位置:   article > 正文

基于浏览器的插件sider,使用chatgpt3.5生成的连接Redis的代码_siderchatgpt

siderchatgpt

 一.安装

首先在浏览器安装Sider插件,具体安装步骤https://www.423xz.com/gaoxiao/3949.html

收费情况:每天有几次的免费使用chatgpt3.5的次数,chatgpt4需要付费了。

二.使用步骤:

安装后使用,具体步骤:

1.找到扩展

 2.找到对应的sider

 3.选择3.5版本,在输入框输入提示词

 三.通过提示词,生成具体内容

我这里想生成springboot连接redis的代码,使用模板方法。为了更加精确,我直接指定了具体的版本号,避免歧义。

提示词:

用spring boot2.5编写连接redis4.0的demo,使用模板方法。

获得回答结果:

  1. 下面是一个使用Spring Boot 2.5连接Redis 4.0的示例代码,使用RedisTemplate作为模板方法:
  2. 首先,确保在pom.xml文件中添加以下依赖:
  3. <dependencies>
  4. <!-- Spring Boot -->
  5. <dependency>
  6. <groupId>org.springframework.boot</groupId>
  7. <artifactId>spring-boot-starter-data-redis</artifactId>
  8. </dependency>
  9. </dependencies>
  10. 接下来,在application.properties文件中配置Redis连接信息:
  11. # Redis
  12. spring.redis.host=localhost
  13. spring.redis.port=6379
  14. 然后,创建一个Redis配置类,用于配置Redis连接:
  15. import org.springframework.beans.factory.annotation.Value;
  16. import org.springframework.context.annotation.Bean;
  17. import org.springframework.context.annotation.Configuration;
  18. import org.springframework.data.redis.connection.RedisStandaloneConfiguration;
  19. import org.springframework.data.redis.connection.jedis.JedisConnectionFactory;
  20. import org.springframework.data.redis.core.RedisTemplate;
  21. import org.springframework.data.redis.serializer.GenericToStringSerializer;
  22. @Configuration
  23. public class RedisConfig {
  24. @Value("${spring.redis.host}")
  25. private String redisHost;
  26. @Value("${spring.redis.port}")
  27. private int redisPort;
  28. @Bean
  29. public JedisConnectionFactory jedisConnectionFactory() {
  30. RedisStandaloneConfiguration redisStandaloneConfiguration = new RedisStandaloneConfiguration(redisHost, redisPort);
  31. return new JedisConnectionFactory(redisStandaloneConfiguration);
  32. }
  33. @Bean
  34. public RedisTemplate<String, Object> redisTemplate() {
  35. RedisTemplate<String, Object> redisTemplate = new RedisTemplate<>();
  36. redisTemplate.setConnectionFactory(jedisConnectionFactory());
  37. redisTemplate.setValueSerializer(new GenericToStringSerializer<>(Object.class));
  38. return redisTemplate;
  39. }
  40. }
  41. 最后,创建一个使用RedisTemplate的示例类:
  42. import org.springframework.beans.factory.annotation.Autowired;
  43. import org.springframework.data.redis.core.RedisTemplate;
  44. import org.springframework.stereotype.Component;
  45. @Component
  46. public class RedisDemo {
  47. private final RedisTemplate<String, Object> redisTemplate;
  48. @Autowired
  49. public RedisDemo(RedisTemplate<String, Object> redisTemplate) {
  50. this.redisTemplate = redisTemplate;
  51. }
  52. public void setValue(String key, Object value) {
  53. redisTemplate.opsForValue().set(key, value);
  54. }
  55. public Object getValue(String key) {
  56. return redisTemplate.opsForValue().get(key);
  57. }
  58. }
  59. 现在,你可以在其他类中使用RedisDemo类来操作Redis了:
  60. import org.springframework.beans.factory.annotation.Autowired;
  61. import org.springframework.boot.SpringApplication;
  62. import org.springframework.boot.autoconfigure.SpringBootApplication;
  63. @SpringBootApplication
  64. public class DemoApplication {
  65. private final RedisDemo redisDemo;
  66. @Autowired
  67. public DemoApplication(RedisDemo redisDemo) {
  68. this.redisDemo = redisDemo;
  69. }
  70. public static void main(String[] args) {
  71. SpringApplication.run(DemoApplication.class, args);
  72. }
  73. public void run(String... args) {
  74. String key = "myKey";
  75. String value = "myValue";
  76. redisDemo.setValue(key, value);
  77. Object retrievedValue = redisDemo.getValue(key);
  78. System.out.println(retrievedValue);
  79. }
  80. }
  81. 这是一个简单的使用Spring Boot 2.5连接Redis 4.0的示例,使用了模板方法RedisTemplate来操作Redis。你可以根据自己的需求进行修改和扩展。

 对回答结果分析:

答案确实把关键核心内容写出来了,但是要直接使用,需要自己放到项目中,可以作为辅助编程。

但是也需要注意,这里的连接方法非常简单,只有一个set 和get  value,并没有具体针对详细数据类型的操作方法,

四.针对结果优化改进

因为上面的结果有些笼统,我就继续要求针对详细的数据类型进行操作。为了测试是否具有上下文的理解能力,我直接讲针对详细数据类型的操作,不做其他的提示,看效果是具有上下文理解能力的,给出了更加详细的结果

提示词2:

方法再详细一些,增加针对具体数据类型的操作方法

 回答结果:

  1. 好的,下面是一个更详细的示例,包括了针对具体数据类型的操作方法:
  2. 首先,确保在pom.xml文件中添加以下依赖:
  3. <dependencies>
  4. <!-- Spring Boot -->
  5. <dependency>
  6. <groupId>org.springframework.boot</groupId>
  7. <artifactId>spring-boot-starter-data-redis</artifactId>
  8. </dependency>
  9. </dependencies>
  10. 接下来,在application.properties文件中配置Redis连接信息:
  11. # Redis
  12. spring.redis.host=localhost
  13. spring.redis.port=6379
  14. 然后,创建一个Redis配置类,用于配置Redis连接:
  15. import org.springframework.beans.factory.annotation.Value;
  16. import org.springframework.context.annotation.Bean;
  17. import org.springframework.context.annotation.Configuration;
  18. import org.springframework.data.redis.connection.RedisStandaloneConfiguration;
  19. import org.springframework.data.redis.connection.jedis.JedisConnectionFactory;
  20. import org.springframework.data.redis.core.RedisTemplate;
  21. import org.springframework.data.redis.serializer.GenericToStringSerializer;
  22. import org.springframework.data.redis.serializer.StringRedisSerializer;
  23. @Configuration
  24. public class RedisConfig {
  25. @Value("${spring.redis.host}")
  26. private String redisHost;
  27. @Value("${spring.redis.port}")
  28. private int redisPort;
  29. @Bean
  30. public JedisConnectionFactory jedisConnectionFactory() {
  31. RedisStandaloneConfiguration redisStandaloneConfiguration = new RedisStandaloneConfiguration(redisHost, redisPort);
  32. return new JedisConnectionFactory(redisStandaloneConfiguration);
  33. }
  34. @Bean
  35. public RedisTemplate<String, Object> redisTemplate() {
  36. RedisTemplate<String, Object> redisTemplate = new RedisTemplate<>();
  37. redisTemplate.setConnectionFactory(jedisConnectionFactory());
  38. redisTemplate.setKeySerializer(new StringRedisSerializer());
  39. redisTemplate.setValueSerializer(new GenericToStringSerializer<>(Object.class));
  40. return redisTemplate;
  41. }
  42. }
  43. 然后,创建一个使用RedisTemplate的示例类:
  44. import org.springframework.beans.factory.annotation.Autowired;
  45. import org.springframework.data.redis.core.RedisTemplate;
  46. import org.springframework.stereotype.Component;
  47. import java.util.List;
  48. import java.util.Map;
  49. import java.util.Set;
  50. @Component
  51. public class RedisDemo {
  52. private final RedisTemplate<String, Object> redisTemplate;
  53. @Autowired
  54. public RedisDemo(RedisTemplate<String, Object> redisTemplate) {
  55. this.redisTemplate = redisTemplate;
  56. }
  57. public void setValue(String key, Object value) {
  58. redisTemplate.opsForValue().set(key, value);
  59. }
  60. public Object getValue(String key) {
  61. return redisTemplate.opsForValue().get(key);
  62. }
  63. public void setList(String key, List<Object> values) {
  64. redisTemplate.opsForList().leftPushAll(key, values);
  65. }
  66. public List<Object> getList(String key) {
  67. return redisTemplate.opsForList().range(key, 0, -1);
  68. }
  69. public void setHash(String key, Map<String, Object> values) {
  70. redisTemplate.opsForHash().putAll(key, values);
  71. }
  72. public Map<Object, Object> getHash(String key) {
  73. return redisTemplate.opsForHash().entries(key);
  74. }
  75. public void setSet(String key, Set<Object> values) {
  76. redisTemplate.opsForSet().add(key, values.toArray());
  77. }
  78. public Set<Object> getSet(String key) {
  79. return redisTemplate.opsForSet().members(key);
  80. }
  81. }
  82. 现在,你可以在其他类中使用RedisDemo类来操作Redis了:
  83. import org.springframework.beans.factory.annotation.Autowired;
  84. import org.springframework.boot.SpringApplication;
  85. import org.springframework.boot.autoconfigure.SpringBootApplication;
  86. import java.util.Arrays;
  87. import java.util.HashMap;
  88. import java.util.HashSet;
  89. import java.util.Map;
  90. import java.util.Set;
  91. @SpringBootApplication
  92. public class DemoApplication {
  93. private final RedisDemo redisDemo;
  94. @Autowired
  95. public DemoApplication(RedisDemo redisDemo) {
  96. this.redisDemo = redisDemo;
  97. }
  98. public static void main(String[] args) {
  99. SpringApplication.run(DemoApplication.class, args);
  100. }
  101. public void run(String... args) {
  102. String key = "myKey";
  103. String value = "myValue";
  104. redisDemo.setValue(key, value);
  105. Object retrievedValue = redisDemo.getValue(key);
  106. System.out.println(retrievedValue);
  107. String listKey = "myList";
  108. redisDemo.setList(listKey, Arrays.asList("value1", "value2", "value3"));
  109. List<Object> retrievedList = redisDemo.getList(listKey);
  110. System.out.println(retrievedList);
  111. String hashKey = "myHash";
  112. Map<String, Object> hashValues = new HashMap<>();
  113. hashValues.put("field1", "value1");
  114. hashValues.put("field2", "value2");
  115. hashValues.put("field3", "value3");
  116. redisDemo.setHash(hashKey, hashValues);
  117. Map<Object, Object> retrievedHash = redisDemo.getHash(hashKey);
  118. System.out.println(retrievedHash);
  119. String setKey = "mySet";
  120. Set<Object> setValues = new HashSet<>(Arrays.asList("value1", "value2", "value3"));
  121. redisDemo.setSet(setKey, setValues);
  122. Set<Object> retrievedSet = redisDemo.getSet(setKey);
  123. System.out.println(retrievedSet);
  124. }
  125. }
  126. 这是一个更详细的示例,包括了针对具体数据类型的操作方法。你可以根据自己的需求进行修改和扩展。

截个图:

 结果分析:

增加了hash,list,set三种数据类型的操作方法,复杂的数据类型的也没有,不过基本也够用。

如果小伙伴们感兴趣,也可以安装sider,来体验chatgtp所带来的便利奥,它确实拥有上下文的理解能力,只是我们也需要做好关键词的提示,并且要对结果进行分析后再使用,毕竟就算跟人交流,也不一定会得到完全满意的答复,对chatgtp也可能需要对回答内容进行鉴别,对回答的不满意的要接着提出来,让她继续给出优化的答案。当然提示词要学习一下怎样来说也很关键。

再就是作为代码生成,最终还是需要拿到开发工具中使用的,可以具体连接一下,测试一下生成代码的准确性。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/正经夜光杯/article/detail/735158
推荐阅读
相关标签
  

闽ICP备14008679号