Existe-t-il un simple framework web Java comme sinatra (pour Ruby) ou web.py (pour python)?
Si vous voulez un strict Java framework Spark pourrait être une alternative:
import static spark.Spark.*;
public class HelloWorld {
public static void main(String[] args) {
get("/hello", (req, res) -> "Hello World");
}
}
Jouer . Je ne l'ai pas essayé moi-même, mais je n'ai entendu que de bonnes choses à ce sujet et semble être assez convivial pour les débutants.
Je pense que la chose la plus simple à faire pour générer du contenu Web via Java est d'écrire un Servlet. Tout comme web.py vous permet de définir une méthode GET
, vous pouvez implémenter un La méthode doGet()
de Servlet et réécrit les données directement au client.
Voici un lien vers le tutoriel Servlets. Vous devrez également savoir comment empaqueter et déployer une application Web; pour cela, je pointe habituellement les gens vers le manuel Tomcat (voir la section intitulée "Première application Web").
Écrire et déployer une application Web Java ne va pas être aussi rapide qu'en Ruby ou Python, mais Java isn 't particulièrement connu pour sa brièveté.
Si vous n'avez pas strictement besoin de Java, consultez Grails . Il s'agit d'un cadre d'application Web construit sur Groovy, qui est un langage dynamique similaire à Python et Ruby qui se compile sur la JVM).
Les serveurs Java EE 6 comme GlassFish le regroupent par défaut.
Si vous utilisez Tomcat, vous pouvez utiliser les implémentations Jersey , Apache CXF ou Restlet .
En utilisant les annotations JAX-RS, le développement Web ressemble à Sinatra ou Merb. BTW vous n'avez pas à utiliser Java comme langue, vous pouvez utiliser Scala, Groovy, JRuby ...
Si vous recherchez uniquement un cadre de présentation en pure Java alors, pour moi, Stripes1 est le plus proche des frameworks Java MVC à la philosophie RoR: simple, élégant et nécessitant une configuration minimale.
1 Stripes a été le pionnier de l'approche Convention sur la configuration pour le développement web Java. Et tandis que d'autres frameworks ont adopté certains de ses principes (comme Spring MVC ou Struts2 avec plugins)) , Je préfère toujours Stripes car il fait une chose et le fait bien.
regardez aussi ces deux: 1. activeweb et 2. dropwizard
Si vous devez développer des applications commerciales ou de base de données OpenXava est une bonne option. OpenXava vous permet de développer une application web complète AJAX écrivant uniquement des classes de domaine, sans génération de code et produisant une application prête pour la production. Petit code, excellent résultat.
Vous voudrez peut-être jeter un œil à ces 2 projets groovy:
https://github.com/webdevwilson/graffiti
https://github.com/bleedingwolf/Ratpack
Vraiment léger comme Sinatra. Pourrait être un peu sur le bord saignant cependant :-) Intéressant et prometteur néanmoins.
Vérifiez SerfJ: Framework de repos le plus simple pour Java :
L'utilisation de SerfJ est le moyen le plus simple de développer Java REST applications Web. Il vous aide à développer votre application sur une architecture MVC élégante, donnant plus d'importance à la convention que par exemple, vous n'aurez pas besoin de fichiers de configuration ou d'annotations pour spécifier quelle vue sert la méthode d'un contrôleur. Cependant, SerfJ est une bibliothèque très flexible, donc si vous voulez sauter par dessus ces conventions, vous pouvez configurer le comportement de vos applications comme vous le souhaitez.
Le framework essaie de répondre à la spécification JSR 311, mais il n'en suit pas tous les points, car le but est d'avoir une bibliothèque très intuitive, et certains aspects de la spécification sont hors de portée de SerfJ.
SerfJ est open source et est publié sous la licence Apache, version 2.0.
Le plus petit serveur Web "utilisable" pour Java qui prend en charge les servlets que je peux trouver est JWS miniature . Et honnêtement, il n'y a aucune raison d'exécuter un Java qui ne prend pas en charge les servlets. Si vous voulez faire du REST, Restlet a un démon HTTP intégré qui signifie que vous pouvez l'exécuter en tant que web autonome serveur .
framework HybridJava est vraiment simple. Bien sûr, il se construit comme une API au-dessus de l'API Servlet, mais traite de la page et du composant au lieu de la demande et de la réponse. En d'autres termes, c'est vraiment MVC.
Étape est un framework pour Scala inspiré par Sinatra.
Je peux vous recommander Struts2 , car j'aime l'architecture du plugin et avec le plugin convention, il est simple et rapide à développer.