Combiner Netty et Spring MVC
Comment puis-je configurer Netty de Spring MVC. Quand et où dois-je commencer la Netty serveur tcp? Dois-je init netty une fois que le Printemps commence? Quelqu'un pourrait-il me montrer un exemple, comme au Printemps fichier xml de configuration ou quelque chose eles?
Merci!
La meilleure question qui n'est pas comment, mais cela fait-il sens ? Voir stackoverflow.com/questions/18374277/...
OriginalL'auteur lute | 2013-08-22
Vous devez vous connecter pour publier un commentaire.
Ça dépend vraiment de ce que vous êtes à l'aide de Netty. En supposant que vous l'utiliser comme un serveur HTTP embarqué exécuté sur un autre port, il vous suffit d'initialiser l'intérieur d'un Printemps bean. J'ai obtenu ce dans le passé à l'aide d'un utile Netty/Atmosphère wrapper appelé Nettosphere:
Ce qui suppose le annotation de configuration basée sur au Printemps, vous pouvez facilement obtenir le même résultat à l'aide de XML comme expliqué dans Jonathan réponse.
Bien sûr, vous pouvez préférer utiliser Netty directement, auquel cas le principe est le même, mais vous aurez besoin de creuser dans le Netty guide de l'utilisateur un peu à l'amorçage du serveur correctement.
OriginalL'auteur seanhodges
Il suffit de créer un bean avec
start
etstop
méthodes qui sont responsables de démarrage et d'arrêt de la Netty serveur, puis enregistrer le haricot dans le contexte approprié init et détruire des crochets, par exemple:Ou encore utiliser
@PostConstruct
et@PreDestroy
annotations si vous ne souhaitez pas utiliser le format XML de configuration.OriginalL'auteur Jonathan
Option 1 (Juste le code):
Voici un très bon exemple montrant comment amorcer Netty avec un gestionnaire de soutien de Servlets (qui à son tour va déléguer le travail à Spring MVC) https://github.com/rstoyanchev/netty-spring-mvc
Il vous définissez ServletNettyHandler plus basé sur Java Spring MVC configurer (DispatcherServletChannelInitializer), et le TestController utilise @Contrôleur & @RequestMapping annotations comme il le fait toujours dans ces cas.
Note: pensez à mettre à jour Netty & Printemps version de l'exemple pour le faire fonctionner.
Option 2 (Juste le blog post):
J'ai trouvé un post de blog décrivant le processus. http://www.hypersocket.com/content/?p=12
OriginalL'auteur Anton Shchastnyi
Regarder la Cruzeira projet qui apporte Netty.io pour le Printemps Cadre de la mise en œuvre d'un sous-ensemble de l'API Servlet
https://github.com/fabiofalci/cruzeira
OriginalL'auteur Nickolay Surkov
Fait avec le Printemps 5, vous pouvez configurer un Printemps 5 Webflux application au lieu de cela, il ressemble à un solide réactif alternative. Les lignes suivantes (
Config.start()
) lancer un petit serveur HTTP en parallèle avec l'exécution principal avec une source de contexte.contrôleur de code:
construire.gradle
P. S. cet exemple n'utilise Ressort sans Ressort de Démarrage qui est aussi bon qu'un côté du serveur web intégré, mais vous devriez envisager d'utiliser le Printemps de Démarrage pour une part entière microservice développement.
OriginalL'auteur Boris Treukhov