Idea 下配置 tomcat 以及 项目的配置

从Eclipse转到IDEA不久,对于idea很多地方还不熟悉,所以遇到问题及时记录,以便以后查阅


1、idea新建servlet项目:File--new project --java项目--选择java ee--勾选web app--设置好名称等就进入第二步(类需要extends HttpServlet)


2、配置tomcat全局设置:点击调试配置--编辑结构--添加一个tomcat(local)--点击configure配置tomcat路径--在Deployment添加一个Artifact名称随意(项目名最好)




3、添加tomcat 依赖:点击项目结构--modules--在dependencies中添加依赖(add加号)-- 选择library-java-选择tomcat



4、至此配置已经完成,开始编写代码:

java类:

package com.servlet.demo;

import javax.servlet.ServletException;
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 一抹灬茶香 on 2016/11/14.
 */
// 扩展 HttpServlet 类
public class Demo extends HttpServlet {

    private String message;

    public void init() throws ServletException {
        // 执行必需的初始化
        message = "Hello World";
    }

    public void doGet(HttpServletRequest request,
                      HttpServletResponse response)
            throws ServletException, IOException {
        // 设置响应内容类型
        response.setContentType("text/html");

        // 实际的逻辑是在这里
        PrintWriter out = response.getWriter();
        out.println("<h1>" + message + "</h1>");
    }

    public void destroy() {
        System.out.println("执行destroy方法");
    }
}
web.xml需要添加映射

<servlet>  
      <servlet-name>HelloWorld</servlet-name>  
      <servlet-class>com.servlet.demo.Demo</servlet-class>  
</servlet>  
<servlet-mapping>  
    <servlet-name>HelloWorld</servlet-name>  
    <url-pattern>/HelloWorld</url-pattern>  
</servlet-mapping> 



5、运行:启动tomcat,打开浏览器输入url即可,运行的结果和url自己看图吧


http://localhost:8080/Demo/        访问的是项目下的index.jsp   

想要访问代码中的mapping,需要加入自己定义的url(在web.xml中配置<url-pattern>):http://localhost:8080/Demo/HelloWorld



说一些题外的:关于tomcat配置好之后无法访问8080首页问题:

需要在第三部的dependencies中添加依赖-- 选择External source-选择tomcat安装路径/webapps/ROOT文件夹之后就可以访问8080首页面了,如果你在

右边的App context 自定义了链接,需要使用自定义的链接访问,只有一个 “/” 这位localhost:8080




在编写web项目时,如果在类前加了注解,则不需要在web.xml中添加url映射 @WebServlet("/CheckBox")

/**
 * Servlet implementation class CheckBox
 */
@WebServlet("/CheckBox")//表示此class映射的url为"/CheckBox",不需要再在web.xml中添加映射,
// 否者重复,报错
public class CheckBox extends HttpServlet {
    private static final long serialVersionUID = 1L;

    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {


 <!--CheckBox 添加注解后不需添加url映射 -->
    <!--
    <servlet>
        <servlet-name>CheckBox</servlet-name>
        <servlet-class>com.servlet.demo.CheckBox</servlet-class>
    </servlet>
    <servlet-mapping>
        <servlet-name>ACheckBox</servlet-name>
        <url-pattern>/CheckBox</url-pattern>
    </servlet-mapping>
    -->

另外,新建html或者jsp时,如果建在项目根目录下,需要在结构中添加新建的文件,具体步骤如下

点击编辑结构--打开下面页面--点击编辑--然后在弹出窗口中点击添加File,选择新建的文件,完成,现在可以运行这个文件了,否者无法打开

(如果将文件新建在web目录下,如图的checkBox2.xml,不需要添加即可直接运行)



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值