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

来源:互联网 发布:arrival to earth知乎 编辑:程序博客网 时间:2024/04/20 01:24

从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,不需要添加即可直接运行)



0 0
原创粉丝点击