2011-12-22 18 views
13

Sto provando a utilizzare i dati di primavera e la configurazione di primavera insieme in una piccola applicazione standalone.Scansione Archivi dati Spring di Spring Config?

... 
    public static void main(String[] args) 
    {   
    ApplicationContext ctx = new AnnotationConfigApplicationContext(AppConfig.class); 
    ... 
    } 

1. La mia domanda è come posso scoprire i repository di dati a molla senza l'utilizzo di

<jpa:repositories base-package="foo.repositories" /> 

da config primavera?

2. In caso contrario, posso utilizzare "ClassPathXmlApplicationContext" e "AnnotationConfigApplicationContext" insieme in qualche modo?

risposta

2

Questa risposta non è aggiornata.

Attualmente non esiste ancora l'equivalente per <jpa:repositories … />. Sentiti libero di monitorare il JIRA ticket secondo. La funzione sarà importante per le prossime versioni GA del modulo JPA (1.1) e MongoDB (1.1).

+0

Grazie per la rapida risposta. – cscsaba

1

penso che si dovrebbe dare un'occhiata al contesto: component-scan

<context:component-scan base-package="com.myProject"/> 

Si rileva automaticamente i componenti annotati con @ Repository/@ Service/@ Component. Controllare here per questo.

+0

Usando l'annotazione @Repository su 'interfaccia pubblica Repository ' interfacce appartiene al contesto primavera dati. Comunque grazie per il tuo aiuto e il tuo tempo. – cscsaba

4

Per completezza e per rispondere alla seconda domanda: Sì, è possibile combinare le configurazioni Java e XML. In questo modo non devi aspettare la prossima release JPA di Spring Data.

Basta annotare la classe configurazione con ImportResource, in questo modo:

@Configuration 
@ImportResource("classpath:jpa-config.xml") 
public class AppConfig { 
    ... 
} 
52

È ora possibile utilizzare l'annotazione @EnableJpaRepositories("some.root.package").

Ad esempio:

@Configuration 
@EnableTransactionManagement(proxyTargetClass = true) 
@EnableJpaRepositories("some.root.package") 
@ComponentScan(basePackages = { "maybe.another.root.package" }) 
public class SystemConfiguration { 
    ... 
} 

(Spring Data's announcement)

+0

Questa è ora la risposta corretta. Grazie per l'aiuto! – cspin

Problemi correlati