部署Java HttpServlet
的最快方法是什么? 是否有一种解决方案可以让您像在Ruby / PHP / Python中一样以最少的配置快速完成?
我需要一些能让我快速运行servlet并在调试周期中交换它们的东西。我对Java不太熟悉,特别是在部署方面。
我不想花费数小时来设置它,搞乱配置文件和整理依赖项。我只想要一些我可以安装和运行的东西。不那么“面向企业”。
我不使用IDE。
是否存在可以减少部署以在终端中运行某些东西的东西,比如Ruby。一些不痛苦的东西。 某些东西不会让我想跳出窗外。没有数万亿的XML文件。
到目前为止,最好的选择是放弃整个“servlet”的想法,并部署在支持Java的HTTP服务器上。它似乎比涉及servlet的任何东西容易1000倍。
答案 0 :(得分:3)
结帐embedded Jetty。配置都是用Java完成的,因此您不必使用一堆配置文件。它非常快 - 启动大约需要2秒钟,不需要IDE。我通常在终端中运行它,并在我进行更改时将其弹回,但您可以将其配置为动态重新加载更改。如果滚动到该链接的底部,您将看到有关配置servlet的详细信息。
以下是Jetty wiki的一些示例代码,即服务器代码:
public class OneServletContext
{
public static void main(String[] args) throws Exception
{
Server server = new Server(8080);
ServletContextHandler context = new ServletContextHandler(ServletContextHandler.SESSIONS);
context.setContextPath("/");
server.setHandler(context);
context.addServlet(new ServletHolder(new HelloServlet()),"/*");
context.addServlet(new ServletHolder(new HelloServlet("Buongiorno Mondo")),"/it/*");
context.addServlet(new ServletHolder(new HelloServlet("Bonjour le Monde")),"/fr/*");
server.start();
server.join();
}
}
一个示例servlet:
public class HelloServlet extends HttpServlet
{
private String greeting="Hello World";
public HelloServlet(){}
public HelloServlet(String greeting)
{
this.greeting=greeting;
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException
{
response.setContentType("text/html");
response.setStatus(HttpServletResponse.SC_OK);
response.getWriter().println("<h1>"+greeting+"</h1>");
response.getWriter().println("session=" + request.getSession(true).getId());
}
}
答案 1 :(得分:2)
查看JRebel。
答案 2 :(得分:1)
你看过Grails了吗? 它基本上是Rails上的Groovy,字节码是Java,如果重要的话。
的文章答案 3 :(得分:1)
在Eclipse中,您可以直接从工作区有效地运行servlet - 它可以非常干净地链接到TomCat或WebSphere CE。几乎编辑/保存(自动编译)/ debug /
答案 4 :(得分:1)
当然,最快的方法是使用您选择的IDE。 至于最小配置,请查看Servlet 3.0 API中出现的WebServlet注释。使用此批注,您无需向web.xml添加任何其他信息。