本系列文章旨在记录和总结自己在Java Web开发之路上的知识点、经验、问题和思考,原来已经分享在我的CSDN博客,现在分享在头条,希望能帮助更多码农和想成为码农的人。版权声明:本文为CSDN博主「普通的码农」的原创文章,遵循CC 4.0 by-sa版权协议,转载请附上原文出处链接及本声明。原文链接:https://blog.csdn.net/liyongyan1202/article/details/92665799
目录介绍添加第三方库验证总结介绍
上篇文章介绍了在Eclipse中如何将第三方库(以Spring框架库为例)自定义成用户库并添加到Java工程中,本篇文章介绍的是如何在Web工程中添加第三方库。
虽然在Web工程中也可以用上述方法添加用户库,但将Web工程打包并发布成Web应用的WAR文件时eclipse打开项目文件夹,用户库中的JAR包并不会打到WAR文件中的 WEB-INF/lib 目录中(关于该目录的作用可以参考这篇文章)。
所以,我们需要换一种方式在Web工程添加第三方库。首先要做以下准备工作:
添加第三方库
假设我们建立的Java Web工程,初始的工程结构如下图:
可以看到,目前该工程节点下只有JRE所带的系统库,WEB-INF/lib目录中也没有第三方库,那怎么添加呢?
其实,最简单直接的方式就是直接拷贝。
首先,我们来看看还没有添加第三方库的Build Path的配置页面(现在我们应该很熟悉如何打开这个配置页面了):
没错eclipse打开项目文件夹,上图中红色方框中的这个库其实就是Eclipse专门为Java Web工程所建立的库,但这个库里还没有添加任何第三方JAR包。
前面说了,直接拷贝就行,先转到文件系统中你所下载并加压的Spring框架目录中:
可以选择多个JAR包,我这里选择的是core、beans、context等Spring框架最核心的几个JAR包,注意,javadoc和sources类型的JAR包不需要,它们是文档和源码。
选中之后,然后敲键盘Ctrl + C拷贝。
再转到Eclipse中,点击 选中 test-web工程的WebContent/WEB-INF/lib中的lib节点,表示要将第三方JAR包复制到此处。
现在敲键盘Ctrl + V,奇迹发生了,此时lib节点变成了可以展开的状态,然后Libraries节点底下多了一个上面所说的Eclipse专门为Java Web工程所建立的库Web App Libraries,它也是可以展开的,如下图红色方框所示:
我们可以展开这两个节点看看,里面就是我们拷贝过来的第三方JAR包。
实际上,我们也可以拷贝到文件系统中对应的lib文件夹下,然后再刷新Eclipse中的Project Explorer视图,这种方法的效果是一样的。
我们再打开test-web工程的Build Path的配置页面,这时也可以看到Web App Libraries下面有了我们所添加的第三方JAR包:
验证
我们还需要添加Servlet相关的JAR包,可以参考这篇文章。
然后,新建一个Servlet类并实现GET请求处理的逻辑,最后使用注解的方式配置该Servlet,可以参考这篇文章。
在编写代码中,我们要充分利用Eclipse的智能提示,这样会大大提高我们的编码效率:
可以看到,Eclipse的智能提示中可以找到我们添加的Spring的JAR包中的类,这就表明我们添加的是正确的。
完整的代码是这样的:
import java.io.IOException; import java.io.PrintWriter; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.springframework.context.ApplicationContext; import org.springframework.context.support.ClassPathXmlApplicationContext; @WebServlet(urlPatterns = {"/hi"}) public class HelloWorldServlet extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException { response.setContentType("text/html"); PrintWriter writer = response.getWriter(); writer.print("" + "Hello World! Your IP is " + request.getRemoteHost() + "
" + ""); ApplicationContext context = new ClassPathXmlApplicationContext(""); } }
可以运行并测试一下,看看会产生什么效果。
总结
限时特惠:本站每日持续更新海量各大内部网赚创业教程,会员可以下载全站资源点击查看详情
站长微信: