gpt4 book ai didi

servlets - jedis 在 servlet 中的使用

转载 作者:可可西里 更新时间:2023-11-01 11:38:10 29 4
gpt4 key购买 nike

import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
import redis.clients.jedis.*;
public class Welcome extends HttpServlet
{
Jedis jedis;

public void init(ServletConfig sc) throws ServletException
{

Jedis jedis = new Jedis("localhost");
}
public void doGet(HttpServletRequest request,HttpServletResponse response)throws IOException,ServletException
{
int count=0;
PrintWriter out=response.getWriter();
jedis.set("k1","123");//This statement is not working
}
public void destroy(){}
}

我一直在尝试使用 jedis 访问 redis 中的键和值。它适用于普通的 Java 代码。但是当涉及到 servlet 时,它就不起作用了。我找不到原因。请详细回答我如何在 servlet 中使用 jedis.set()。

最佳答案

即便如此,我们也不应该使用 Jedis 对象作为实例变量,因为线程安全。取而代之的是,我们通过实现 ContextListener 或资源注入(inject)在 ServletContext 中使用连接对象。我认为我们在使用 Servlet 实例时总是考虑线程安全。单个 Jedis 实例不是线程安全的!或者;使用 JedisPool。它是线程安全的。

JedisPool pool = new JedisPool(new JedisPoolConfig(), "localhost");

关于servlets - jedis 在 servlet 中的使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28539269/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com