1.java web工程创建

(1)File--->new--->project

(2)选择java enterprise,按照下图操作

(3)点击next后,会进入如下界面,修改工程名后,点击finish,工程创建完成。

(4)工程目录如下图所示

(5)在web/WEB-INF下创建两个文件夹:classes和lib

classes用来存放编译后输出的class文件,lib用于存放第三方jar包。

<1>配置class路径

File -> Project Structure (快捷键:Ctrl + Shift + Alt + S) -> 选择Module :
 选择 Paths -> 选择"Use module compile output path" -> 将Output path和Test output path都选择刚刚创建的classes文件夹。
<2>配置jar包路径
选择刚刚创建的lib文件夹
选择“jar directory” -> 接着返回一路OK就行了
注意(天坑):往lib目录下添加jar包后,jar可能无法识别。
解决方案:
方法一:取消或添加勾选export
方法二:在Compile和Provide之间切换
以上两种方法选其一就可以了,达到刷新jar包路径的目的(apply按钮会点亮)
 

2.生成servlet

(1)src(右击)--->new--->servlet

(2)设置servlet名称

(3)servlet后续配置

方法一:

在类名前加入如下内容

@WebServlet(name = "LoginServlet",urlPatterns = "/LoginServlet")

其中urlPatterns为url访问时设置的链接

方法二:(不推荐)

servlet在web.xml文件中增加如下配置

<servlet>
<servlet-name>ServletTest01</servlet-name>
<servlet-class>ServletTest01</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>ServletTest01</servlet-name>
<url-pattern>/demo/ServletTest01</url-pattern>
</servlet-mapping>

5.重启tomcat, 就可以在http://127.0.0.1:8080/FirstServlet/demo 这个地址看到我们的servlet页面了。

需要注意这个url的路径,FirstServlet是在webapps的目录名,demo是在web.xml中的servlet-mapping中控制的

6.测试利用servlet连接服务器是否成功

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.HashMap;
import java.util.Map;
import net.sf.json.JSONObject; @WebServlet(name = "LoginServlet",urlPatterns = "/LoginServlet")
public class LoginServlet extends HttpServlet {
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
processRequest(request,response);
} @Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
doPost(req, resp);
}

  //测试服务器连接通不通
protected void processRequest(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
try (PrintWriter out = response.getWriter()) {
/* TODO output your page here. You may use following sample code. */
out.println("<!DOCTYPE html>");
out.println("<html>");
out.println("<head>");
out.println("<title>Servlet LoginServlet</title>");
out.println("</head>");
out.println("<body>");
out.println("<h1>Servlet LoginServlet at " + request.getContextPath() + "</h1>");
out.println("</body>");
out.println("</html>");
}
}
}

利用以下url访问服务器

http://118.25.152.62:8080/MyJavaWebTest02_war/LoginServlet

若成功连接servlet,则会出现如下界面

7.将java web工程达成war包的形式

(1)配置打包方式Artifacts

点击Artifacts选项卡 IDEA会为我们的项目自动创建一个名字叫“csdn:war exploded”的打包方式,如下:

(2)生成war包

<1>build-->build artifacts

<2>点击build即可

<3>生成的war包位置

最新文章

  1. Repository 仓储,你的归宿究竟在哪?(一)-仓储的概念
  2. JFreechart 在linux下不显示及中文乱码问题
  3. windows里面的批处理命令不停地处理同一条命令
  4. HTML5+JS 《五子飞》游戏实现(六)鼠标响应与多重选择
  5. List,Set,Map用法以及区别
  6. Error: Cannot find module &#39;express&#39;
  7. Think PHP 提示验证码输入错误
  8. ORMBase对象/关系型数据库映射在MVC中的应用(二)
  9. how to use a xml_id in field domain
  10. [Angualr 2] Watch for changes
  11. 小公司生存,一般活过第一年,就能撑3年(读书笔记:成败关键,关键是你是否拥有现金流客户)good
  12. Python之路第六天,进阶-算法
  13. MPICH3环境配置
  14. 采用Sambaserver由win平台,linux平台上传文件
  15. 用c++实现高精度加法
  16. 5分钟搞定iOS抓包Charles,让数据一清二楚
  17. 知物由学 | 基于DNN的人脸识别中的反欺骗机制
  18. windows快速打开命令窗口方式[利刃篇]
  19. DMA及cache一致性的学习心得 --dma_alloc_writecombine【转】
  20. Python3学习之路~4.4 软件目录结构规范

热门文章

  1. appium_server_v1.4.16版本不适配android7.0系统,运行报错“Attempt to re-install io.appium.settings without first uninstalling”
  2. Python爬虫实战一之爬取糗事百科段子
  3. python 文件操作(二)
  4. data cleaning
  5. mongodb ---- findAndModify 写法
  6. CodeForces 690C1 Brain Network (easy) (水题,判断树)
  7. WCF服务编程 读书笔记——第2章 服务契约
  8. SQL server 累加求和
  9. HashSet小试牛刀
  10. Linux基础--安装搭建tomcat+java+mysql