IDEA与Tomcat创建并运行Java Web项目及servlet的简单实现

创建Web项目

1、 File -> New Project ,进入创建项目窗口

2、在 WEB-INF 目录下点击右键, New -> Directory ,创建  classes 和  lib 两个目录

3、 File -> Project Structure ,进入 Project Structure窗口

4、点击 Modules  -> 选中项目“ JavaWeb ” -> 切换到  Paths 选项卡 -> 勾选 “ Use module compile output path ”,将 “ Output path ” 和 “ Test output path ” 都改为之前创建的classes目录

5、点击 Modules -> 选中项目“ JavaWeb ” -> 切换到  Dependencies 选项卡 -> 点击右边的“ + ”,选择 “ JARs or directories ”

注意: Java Web项目是需要依赖 上图看到的 JDK 与 Tomcat包(Servlet模块就在里面)的!

6、配置打包方式 Artifacts :点击  Artifacts选项卡 ,IDEA会为该项目自动创建一个名为“ JavaWeb:war exploded ”的打包方式,表示 打包成war包,并且是文件展开性的,输出路径为当前项目下的 out 文件夹, 保持默认即可 。另外勾选下“ Build on make ”,表示编译的时候就打包部署,勾选“ Show content of elements ”,表示显示详细的内容列表。

【参考】:

Intellij IDEA 14.x 中的Facets和Artifacts的区别

Java的打包jar、war、ear包的作用与区别

Intellij IDEA 14.x 菜单项中Compile、Make和Build的区别

二、配置 Tomcat

1、 Run -> Edit Configurations ,进入“ Run Configurations ”窗口

2、点击" + "->  Tomcat Server ->  Local ,创建一个新的Tomcat容器

3、在" Name "处输入新的服务名,点击“ Application server ”后面的“ Configure...”,弹出 Tomcat Server 窗口,选择本地安装的Tomcat目录 ->  OK

4、在“ Run Configurations ”窗口的“ Server ”选项板中,去掉勾选“ After launch ”,设置“ HTTP port ”和“ JMX port ”,点击  Apply ->  OK ,至此Tomcat配置完成。

三、在 Tomcat中部署并运行项目

1、 Run ->  Edit Configurations ,进入“ Run Configurations ”窗口,选择之前配置好的Tomcat,点击“ Deployment ”选项卡,点击“ + ” -> “ Artifact ”-> 选择创建的web项目的 Artifact

2、修改“ Application context ”->  Apply ->  OK

3、运行Tomcat,在浏览器中查看运行结果

 

servlet的简单实现:

1. 编写servlet源文件
在src目录下新建HelloWorld.java,并编写一下代码并进行编译:

package servlet.study;

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;

/**
 * Created by lijia on 2015/12/23.
 */
//@WebServlet(name = "Servlet")
//@WebServlet("/servlet")
public class ServletDemo1 extends HttpServlet {
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        response.setContentType("text/html");
        PrintWriter out = response.getWriter();
        out.println("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\">");
        out.println("<HTML>");
        out.println("  <HEAD><TITLE>A Servlet</TITLE></HEAD>");
        out.println("  <BODY>");
        out.print("    This is ");
        out.print(this.getClass());
        out.println(", using the GET method");
        out.println("  </BODY>");
        out.println("</HTML>");
        out.flush();
        out.close();
    }

    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        response.setContentType("text/html");
        PrintWriter out = response.getWriter();
        out.println("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\">");
        out.println("<HTML>");
        out.println("  <HEAD><TITLE>A Servlet</TITLE></HEAD>");
        out.println("  <BODY>");
        out.print("    This is ");
        out.print(this.getClass());
        out.println(", using the POST method");
        out.println("  </BODY>");
        out.println("</HTML>");
        out.flush();
        out.close();
    }
}

编译后会发现在classes目录下生成了HelloWorld.class文件

 

 
2. 部署servlet
方法一:
    在WEB-INF目录下web.xml文件的<web-app>标签中添加如下内容:
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
         version="3.1">
    <servlet>
        <servlet-name>ServletDemo1</servlet-name>
        <servlet-class>servlet.study.ServletDemo1</servlet-class>
    </servlet>

    <servlet-mapping>
        <servlet-name>ServletDemo1</servlet-name>
        <url-pattern>/da</url-pattern>
    </servlet-mapping>
</web-app>

方法二:
在HelloWorld文件的类前面加上:@WebServlet("/da")

3. 运行servlet
点击运行按钮

控制台出现successfully则tomcat服务启动成功!打开浏览器输入:localhost:8080/JavaWebDemo2/da即可查看servlet运行状态了.

posted @ 2015-12-23 15:19  走在大牛的路上  阅读(3082)  评论(0编辑  收藏  举报