IDE创建JavaWeb项目

来源:互联网 发布:中美抗苏 知乎 编辑:程序博客网 时间:2024/06/07 11:40

IDE创建JavaWeb项目

说实在的,IntelliJ的项目创建方式不如其它IDE的直观,反正我一开始是没搞懂(其实搞懂也很简单),另外IntelliJ的不同版本之间 是有差异的,网上找的一些资料并不准确,最好还是直接看官方文档,根据它的Tutorial走走,这次我看的官方文档是针对IntelliJ v12的,而现在我用的是v13,所幸的是差别并不大。

New Project,然后这样选:

那个Versions只能选3.1,貌似之前还能选3.0,这个版本其实是Servlet的版本,最新的版本是3.1,需要用Tomcat8来承 载,如果你选择用Tomcat7来承载的话,会有一个warning说不认识这个版本,使用默认版本云云,忽略这个warning就是。

在下一步中指定项目名,SDK果断选择最新的1.8(Java8):

这样一来你的服务器的运行环境得部署为Java8,不过这个也没啥压力,Java8多了不少很有用的新特性,如果没有什么历史负担的话干嘛不用?

Finish,我们现在来看看整个project的结构:

.idea 这是IntelliJ的相关东西,我们不用管,src目录用于放java源文件,web目录用于放web资源,WEB-INF是java web应用固定的存放配置及类库的目录,index.jsp是我们首页,HelloWorld.iml是IntelliJ的项目文件,打开工程就是打开它 了,External Library是一些外部引用的库,展开看看好多。

现在我们来创建一个Servlet,Servlet是Java的服务器端小程序(其实也可以不小),右击src目录:

然后命名为SayHello:

展开,打开SayHello.java的时候却发现IntelliJ提示找不到符号:

这一定是因为某些包没引用。如何引用?一般都是设置CLASSPATH,告诉java如何去找它的包,而这里我们可以直接指定包的位置。

打开Project Struture设置对话框(快捷键为+<;>),如图:

点加号,选“Jars or directories…”,再找到Tomcat下的servlet-api.jar。

这样就可以了,我们把doPost删掉,用不到,再在doGet方法中写点东西输出,SayHello.java就变成这样:

package com.mycompany;import java.io.IOException;import java.io.PrintWriter;/** * Created by guogangj on 14-5-13. */public class SayHello extends javax.servlet.http.HttpServlet {    protected void doGet(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response) throws javax.servlet.ServletException, IOException {        response.setContentType("text/html");        PrintWriter out = response.getWriter();        out.println("<html>");        out.println("<head>");        out.println("<title>Hello World!</title>");        out.println("</head>");        out.println("<body>");        out.println("<h1>Hello World!</h1>");        out.println("</body>");        out.println("</html>");    }}

java的代码写好了,配置文件也要加点东西,打开web.xml,加上一个“”节点,改完后的web.xml变成这样:

<?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>SayHello</servlet-name>        <servlet-class>com.mycompany.SayHello</servlet-class>    </servlet>    <servlet-mapping>        <servlet-name>SayHello</servlet-name>        <url-pattern>/sayhello</url-pattern>    </servlet-mapping></web-app>
原创粉丝点击