mam kolejną sytuację: Connection manager
powinien mieć za każdym razem jeden obiekt ConnectionServer
i nowych obiektów DataBean
Więc stworzyliśmy te ziarna i skonfigurowany się, że sprężyny xml .Wiosna: Tworzenie nowej instancji fasola dla każdego wywołania metody get
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:context="http://www.springframework.org/schema/context"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd">
<bean id="dataBena" class="com.test.DataBean" scope="prototype"/>
<bean id="servCon" class="com.test.ServerCon"/>
<!--<bean id="test" class="com.test.Test"/>-->
<context:component-scan base-package="com.test"/>
</beans>
i dodaje zakres prototype
dla DataBean
Po to stworzyłem prosty util/klasy komponentów zwany test
@Component
public class Test {
@Autowired
private DataBean bean;
@Autowired
private ServerCon server;
public DataBean getBean() {
return bean.clone();
}
public ServerCon getServer() {
return server;
}
}
BUT, za każdym razem z wywołaniem metody klonowania getBean ja() ta fasola, i to jest dla mnie problem. Czy mogę to zrobić z konfiguracji wiosna bez użycia metody klonowania? Dzięki.
Wystarczy dodać [cglib.jar] (http://repo1.maven.org/maven2/cglib/cglib/2.2.2/cglib-2.2.2.jar) do swojej zmiennej CLASSPATH. –
i asm-all-3.3.1.jar też :), Dzięki wszystkim działa dobrze! –
Jak byś sobie z tym poradził, gdyby 'DataBean' miał charakter ogólny i gdyby w środku był' Service ', który jest' @ Autowired' w zależności od typu ''? –