idea community 社区版创建java servlet

准备工具

  • 官网上下载的Tomcat 9.x一个
  • JDK10
  • 官网上下载的IDEA community版本一个

环境配置

tomcat配置虚拟目录

  • 解压官网下载的Tomcat压缩包,进入Tomcat的根目录,再进入conf文件夹,打开server.xml配置文件,在文件末尾的标签里,使用标签添加你的项目目录路径;PS:配置虚拟目录的做法比直接放入webapp要好,可以减少Tomcat的启动时间
<Server>

      ..........

      <Host name="localhost"  appBase="webapps"
            unpackWARs="true" autoDeploy="true">

        
        

        
        <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
               prefix="localhost_access_log" suffix=".txt"
               pattern="%h %l %u %t "%r" %s %b" />
    
        <Context path="/HelloServlet" docBase="D:\tempBox\PureServlet\WebContent"/>
      Host>
    Engine>
  Service>
Server>

idea创建项目工程

没什么特别的,就是java工程,一直next下去就可以了

idea community 社区版创建java servlet_第1张图片

建立web目录结构

  • 新建的java工程肯定是不能跑的,我们要用Tomcat跑起项目,就需要建立符合规定的目录结构,这里使用servlet 2.x的规范来建立目录(其实servlet 3.x也会读web.xml,不过如果没有,就会使用反射读取项目里的注解来装配web工程)

  • 目录结构如下
    idea community 社区版创建java servlet_第2张图片

PS:目录结构是规定好的,每个目录的意义可以参考其他博客,这里不做详解

  • 添加依赖包
    lib文件夹就是给我们加包的,一个工程总要加依赖包,不然会编译报错,普通的java工作直接在项目根目录下新建lib文件夹,右键add as library就可以导入IDEA的工程构建了,这里同样的操作,不同的只是移动了下位置,放在了WEN-INF包里(部署好的web应用在处理请求时会调用这个位置的包)添加的包为servlet-api-2.5.jar,Maven仓库里搜索一下就有了,下载然后copy进lib文件夹,右键add as library

demo代码编写

编写HelloWorldController.java

package cn.css.servlet.Controller;

import javax.servlet.*;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.PrintWriter;

public class HelloWorldController extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws IOException {
        doPost(req, resp);
    }

    @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws IOException {
        resp.setContentType("text/html;charset=utf-8");
        PrintWriter out = resp.getWriter();
        out.write("hello~hello~i am here");
    }
}

编译

上面我们注意到,有个包叫classes,这个包就是放编译后的java类的,但社区版的IDEA并没有提供相关的web功能,所以我们只能利用IDEA的原始Build功能,然后将编译后的class源码放入classes文件夹里……..T_T

  • 编译
    1. 默认编译后的目录
      idea community 社区版创建java servlet_第3张图片
    2. 编译后出现class文件
      idea community 社区版创建java servlet_第4张图片
    3. 剪切out下的cn包,放到classes文件夹下
      idea community 社区版创建java servlet_第5张图片

配置web.xml文件


<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>helloservlet-name>
        
        <servlet-class>cn.css.servlet.Controller.HelloWorldControllerservlet-class>
    servlet>
    
    <servlet-mapping>
        
        <servlet-name>helloservlet-name>
        
        <url-pattern>/hellourl-pattern>
    servlet-mapping>
web-app>

手动启动Tomcat

  • 启动的方式很多,既可以进入bin目录打开startup.bat文件启动Tomcat,也可以配置环境变量,直接IDEA的控制台走起,百度很多,这里不一一讲解

  • 打开浏览器,输入地址:http://localhost:8080/HelloServlet/hello,出现效果
    idea community 社区版创建java servlet_第6张图片

你可能感兴趣的:(J2EE)