私はmemcachedの使用法などについて学び、昨日からいくつかの希少なリソースを読んでセットアップしようとしています。私が持っているものを示すことから始めましょう。
- インストールされたmemcachedサーバー
ここで説明するように春用に構成されています:
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:aop="http://www.springframework.org/schema/aop" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.0.xsd"> <import resource="simplesm-context.xml" /> <aop:aspectj-autoproxy /> <bean name="defaultMemcachedClient" class="com.google.code.ssm.CacheFactory"> <property name="cacheClientFactory"> <bean class="com.google.code.ssm.providers.xmemcached.MemcacheClientFactoryImpl" /> </property> <property name="addressProvider"> <bean class="com.google.code.ssm.config.DefaultAddressProvider"> <property name="address" value="127.0.0.1:11211" /> </bean> </property> <property name="configuration"> <bean class="com.google.code.ssm.providers.CacheConfiguration"> <property name="consistentHashing" value="true" /> </bean> </property> </bean> </beans>
スプリングを介してサーバーへの接続が正常に作成されました:
20:06:07,864 WARN [main] (XMemcachedClient.java:645) - XMemcachedClient use Text protocol 20:06:08,112 WARN [main] (AbstractController.java:372) - The Controller started at localhost/127.0.0.1:0 ... 20:06:08,139 WARN [Xmemcached-Reactor-0] (MemcachedConnector.java:239) - Add a session: 127.0.0.1:11211
次のステップはそれをテストすることでした。これはmemcachedについての良い/簡単な説明を提供します:http://www.majordojo.com/2007/03/memcached-howto.php
私はこのビットを試してみたかった:
Class Foo {
public static findById(id) {
if (obj = memcached.get(id)) return obj;
obj = loadFromDatabase(id);
memcached.put(id,obj);
return obj;
}
}
しかし、このサイトのどこにも、どのタイプのオブジェクトがmemcachedであるかは示されていません。だから私は以下を試してみました:
import net.rubyeye.xmemcached.MemcachedClient
Class Foo {
@Autowired
MemcachedClient defaultMemcachedClient;
public static findById(id) {
if (obj = memcached.get(id)) return obj;
obj = loadFromDatabase(id);
memcached.put(id,obj);
return obj;
}
}
ログから取得したエラーは次のとおりです。
nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No matching bean of type [net.rubyeye.xmemcached.MemcachedClient] found for dependency: expected at least 1 bean which qualifies as autowire candidate for this dependency
defaultMemcachedClient
Beanはmemcachedクライアントになるはずだと思いました。明らかにそうではありません。私はここで何をしますか?誰かが考えを持っていますか?リンク?助言?なんでも?