java - 如何最好地打包一个网站

标签 java tomcat war

我正在开发一个在 Tomcat 中运行的网站,该网站存储大量成员(member)数据,但我不确定如何最好地打包它。

我希望能够轻松部署一场 war ,而无需先从中移除任何东西。

我的第一个想法是将成员数据分解到 war 之外的自己的目录中,但我的问题是其中一些内容需要在网站中链接(图像等)。

必须有比部署 war 然后复制回数据更好的解决方案。有人有什么建议吗?

最佳答案

您的第一个想法是正确的。将数据存储在外部目录中是最好的解决方案。您可以通过创建可根据图像请求访问外部目录的 servlet 轻松解决图像问题。

我无法发布我的代码,但这里是创建响应的类似代码段。您只需创建扩展 FileServlet 的类并编写代码以从您的目录加载文件。

http://snippets.dzone.com/posts/show/4629

然后,将其添加到您的 web.xml 中:

<servlet>
    <servlet-name>My File Servlet</servlet-name>
    <servlet-class>my.package.FileServlet</servlet-class>
    <load-on-startup>0</load-on-startup>
</servlet>

<servlet-mapping>
    <servlet-name>My File Servlet</servlet-name>
    <url-pattern>/upload/*</url-pattern>
</servlet-mapping>

还有像http://myapp.com/upload/userimage.jpg 这样的每个链接将由 servlet 创建

关于java - 如何最好地打包一个网站,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/996506/

相关文章:

java - 使用证书 .cer 连接到 Java 项目中的 Web 服务

string - 错误WAR包装错误:字符串索引超出范围:11

java - android - 如何在测验中启用下一个级别?

java - Tomcat Bayeux 支持/Tomcat 模块

java - 星云:CalendarCombo。如何设置日期()?

java - 使用自定义类名反序列化具有不同根名称的 json

java - 如何使用与 wars 相同的类加载器制作 tomcat 8 加载 jar ?

java - 已部署但上下文无法从 tomcat 8 启动

java - 无法将 .war 应用程序部署到 GlassFish 3.1.2

war - 如何在应用服务器上安装 FitNesse 作为 war/ear