问答详情
源自:5-2 Shiro会话管理2

spring-redis文件有问题。

https://img4.mukewang.com/5d42aa2f0001269f08180244.jpg

报错:NOAUTH Authentication required,

解决:我在redis配置文件中,配有

requirepass mypassword

如果我注释掉,也能解决问题,但是又不想注释,那就修改spring-redis.xml文件吧,

最初一版:

<bean class="redis.clients.jedis.JedisPool" id="jedisPool">
    <constructor-arg name="poolConfig" ref="jedisPoolConfig"/>
    <constructor-arg name="host" value="127.0.0.1"/>
    <constructor-arg name="port" value="6389"/>
  <!--  <constructor-arg name="timeout" value="60000"/>
    <constructor-arg name="password" value="mypassword"/>-->
</bean>

启动报错上面的错误。

修改版:

<bean class="redis.clients.jedis.JedisPool" id="jedisPool">
    <constructor-arg name="poolConfig" ref="jedisPoolConfig"/>
    <constructor-arg name="host" value="127.0.0.1"/>
    <constructor-arg name="port" value="6389"/>
  <!--  <constructor-arg name="timeout" value="60000"/>-->
    <constructor-arg name="password" value="mypassword"/>
</bean>

启动时报错。

一直尝试,又看了JedisPool源码,猜测是不是和入参顺序有关

最终一版,就成功了;

<bean class="redis.clients.jedis.JedisPool" id="jedisPool">
    <constructor-arg name="poolConfig" ref="jedisPoolConfig"/>
    <constructor-arg name="host" value="127.0.0.1"/>
    <constructor-arg name="port" value="6389"/>
     <constructor-arg name="timeout" value="60000"/>
    <constructor-arg name="password" value="mypassword"/>
</bean>


提问者:慕慕0467570 2019-08-01 17:09

个回答

  • qq_默许凵_04107152
    2019-09-10 09:39:21

    给力吖


  • 顽皮地牛
    2019-08-01 21:38:58

    与顺序没关系,通过字段名称映射的,你可以将配置信息直接配置到properties文件中,然后直接让Spring加载进来即可