Rövid útmutató a tavaszi @Enable kommentárokhoz
1. Áttekintés
A tavasz egy sorral érkezik @Engedélyezze olyan kommentárok, amelyek megkönnyítik a fejlesztők számára a Spring alkalmazás konfigurálását. Ezek az annotációk -val együtt használják @ Konfiguráció annotáció.
Ebben a cikkben megnézzük ezeket a megjegyzéseket:
- @EnableWebMvc
- @EnableCaching
- @EnableScheduling
- @EnableAsync
- @EnableWebSocket
- @EnableJpaRepositories
- @EnableTransactionManagement
- @EnableJpaAuditing
2. @EnableWebMvc
A @EnableWebMvc az annotációt használják a Spring MVC engedélyezése egy alkalmazásban és úgy működik, hogy importálja a Spring MVC konfigurációt innen WebMvcConfigurationSupport.
Az XML megfelelője hasonló funkcionalitással .
A konfigurációt a @ Konfiguráció osztály végrehajtása WebMvcConfigurer:
@Configuration @EnableWebMvc public class A SpringMvcConfig megvalósítja a WebMvcConfigurer {@Override public void configureMessageConverters (List konverterek) {converters.add (új MyHttpMessageConverter ()); } // ...}
3. @EnableCaching
A @EnableCaching annotáció lehetővé teszi az annotáció által vezérelt gyorsítótár-kezelést képesség az alkalmazáson belül és lehetővé teszi számunkra a @Cache és @CacheEvict annotációk alkalmazásunkban.
Az XML megfelelője hasonló funkcionalitással az névtér:
@Configuration @EnableCaching public class CacheConfig {@Bean public CacheManager cacheManager () {SimpleCacheManager cacheManager = new SimpleCacheManager (); cacheManager.setCache (Arrays.asList (új ConcurrentMapCache ("alapértelmezett"))); return cacheManager; }}
Ez a feljegyzés a következő lehetőségekkel is rendelkezik:
- mód - jelzi, hogyan kell alkalmazni a gyorsítótárazási tanácsokat
- rendelés - a végrehajtási gyorsítótár tanácsadó megrendelését jelzi, ha egy adott csatlakozási pontban alkalmazzák
- proxyTargetClass - jelzi, hogy alosztály-alapú (CGLIB) proxykat kell-e létrehozni, szemben a szokásos Java interfész-alapú proxykkal
Ezt a konfigurációt ismét a @ Konfiguráció osztály végrehajtása CachingConfigurerSupport osztály:
@Configuration @EnableCaching public class A CacheConfig kiterjeszti a CachingConfigurerSupport {@Bean @Orride public CacheManager cacheManager () {SimpleCacheManager cacheManager = új SimpleCacheManager (); cacheManager.setCaches (Arrays.asList (új ConcurrentMapCache ("alapértelmezett"))); return cacheManager; } @Bean @Orride public KeyGenerator keyGenerator () {return new MyKeyGenerator (); }}
A tavaszi gyorsítótár használatáról további információt ebben a cikkben talál.
4. @EnableScheduling
A @EnableScheduling annotáció lehetővé teszi az ütemezett feladatok képességeit és használatát @Ütemezett annotációk az alkalmazásban. Az XML megfelelője hasonló funkcionalitással az névtér a ütemező tulajdonság.
Ezt a konfigurációt ismét a @ Konfiguráció osztály végrehajtása SchedulingConfigurer osztály:
@Configuration @EnableScheduling public class SchedulingConfig implementálja SchedulingConfigurer {@Orride public void configureTasks (ScheduledTaskRegistrar taskRegistrar) {taskRegistrar.setScheduler (taskExecutor ()); } @Bean (destrMethod = "shutdown") nyilvános végrehajtó taskExecutor () {return Executors.newScheduledThreadPool (100); }}
Ha többet szeretne tudni a tavaszi ütemezésről, olvassa el ezt a cikket.
5. @EnableAsync
A @EnableAsync annotáció lehetővé teszi az aszinkron feldolgozást alkalmazásunkban. Az XML megfelelője hasonló funkcionalitással az névtér a végrehajtó tulajdonság.
@Configuration @EnableAync nyilvános osztály AsyncConfig {...}
A Spring async használatával kapcsolatos további információkért olvassa el ezt a cikket.
6. @EnableWebSocket
A @EnableWebSocket annotáció szokott konfigurálja a webaljzat-kérelmek feldolgozását. A testreszabás a WebSocketConfigurer osztály:
@Configuration @EnableWebSocket public class MyConfiguration implementálja a WebSocketConfigurer {@Orride public void registerWebSocketHandlers (WebSocketHandlerRegistry registry) {register.addHandler (echoWebSocketHandler (), "/ echo") withSockJS (); } @Bean public WebSocketHandler echoWebSocketHandler () {return new EchoWebSocketHandler (); }}
Ha többet szeretne tudni a Spring Websockets használatáról, olvassa el ezt a cikket.
7. @EnableJpaRepositories
A @EnableJpaRepositories annotáció lehetővé teszi a Spring Data JPA adattárakat az annotált konfigurációs osztály csomagjának átkutatásával a tárak számára.
@Configuration @EnableJpaRepositories nyilvános osztály JpaConfig {...}
Néhány lehetőség a kommentárhoz rendelkezésre áll:
- érték - álneve a basePackages () tulajdonság
- basePackages - alapcsomagok a jegyzetelt alkatrészek keresésére
- enableDefaultTransactions - konfigurálja, hogy engedélyezi-e az alapértelmezett tranzakciókat a Spring Data JPA adattáraknál
- entitásManagerFactoryRef - konfigurálja a EntityManagerFactory használandó babdefiníció
8. @EnableTransactionManagement
A @EnableTransactionManagement annotáció lehetővé teszi a Spring annotáció-vezérelt tranzakciókezelési képességét. Az XML megfelelője az névtér.
@Configuration @EnableTransactionManagement nyilvános osztály JpaConfig {...}
A tavaszi tranzakciókezelés használatáról további információt ebben a cikkben talál.
9. @EnableJpaAuditing
A @EnableJpaAuditing annotáció lehetővé teszi az ellenőrzést a JPA-entitásokon.
@Configuration @EnableJpaAuditing public class JpaConfig {@Bean public AuditorAware auditorProvider () {return new AuditorAwareImpl (); }}
Ha többet szeretne tudni a Spring Web Sockets használatáról, olvassa el ezt a cikket.
10. Következtetés
Ebben a gyors cikkben megnéztünk néhányat @Engedélyezze Tavaszi kommentárok és azok felhasználása a Spring alkalmazás konfigurálásában.