• Eclipse IDE for Java EE Developers使用和新建工程helloworld


    开发j2ee还是用专门的java ee eclipse,自带了许多开发j2ee的插件,包括:

    This package includes:

    • Data Tools Platform
    • Eclipse Git Team Provider
    • Eclipse Java Development Tools
    • Eclipse Java EE Developer Tools
    • JavaScript Development Tools
    • Maven Integration for Eclipse
    • Mylyn Task List
    • Eclipse Plug-in Development Environment
    • Remote System Explorer
    • Eclipse XML Editors and Tools

     (

     我用的ide是

    Eclipse Java EE IDE for Web Developers.

    Version: Kepler Service Release 1.

    新建一个工程: c dynamic web project.

    创建dynamic web project

    eclipse本身的dynamic web project类似MyEclipse?的web project,

    MyEclipse对Eclipse进行了扩展,如:web project可以添加一些开源的框架支持,比如Struts、Hibernate等等。
    也就是说,web project是Myeclipse扩展后的项目,而dynamic web project是Eclipse自带的分类,在Myeclipse中,web project具有dynamic web project特性并具有一些方便开发的集成功能。

    启动后:

    可以看到有一个Dynamic web project 选项,在eclipse标准版里是没有的。

    创建Server

    通过菜单选择File > New > Other>Server,创建Server,如下图所示。

    单击“下一步”,再单击“完成”。

    二,创建Dynamic Web Project项目

    1,通过菜单选择File > New > Dynamic Web Project,新建项目,项目名HelloWorld,其他值默认。

    2, 项目资源如下图所示。

     

    三,创建JSP文件

    1,创建index.jsp文件,右击项目,New >JSP FILE,如下图所示,单击完成。

    2,在<body></body>中间处插入如下代码:

     <% java.util.Date d =new java.util.Date();%>

    <h1>Today's date is<%= d.toString()%></h1>

    3,右击项目,Run...>Run on Server,选择刚新建的Server。运行效果如下图所示:

    四,创建Servlet文件

    1,新建HelloWorldServlet,右击项目,New >Servlet,如下图所示,单击完成。

    可以看到,servlet文件放在根目录下的src包中

    2,在doGet方法中添加如下代码:

    response.getWriter().write("Hello, world!");

    3,运行Servlet,重新启动Server。运行效果如下:

    说明:

    1.Dynamic Web Project项目的WEB-INF目录下默认没有web.xml文件。除非勾选这个.

     

      Server只是方便开发和调试WEB项目,真实布署WEB应用时,应该修改Tomcat安装目录下的conf/server.xml文件和Web端项目下的WEB-INF/web.xml文件

     

     

    用户登录例子

    1.新建login.jsp

    <%@ page language="java" contentType="text/html; charset=utf8"
        pageEncoding="utf-8"%>
    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
    <title>Login</title>
    </head>
    <body>
    
    
    <form  method="POST" action="login">
         
        <input type="text" name="username"/>
        <input type="text" name="password"/>
        <input type="submit" value="登陆"/>
    
    </form>
    
    </body>
    </html>

    注意我们的action

    2.Servlet,在Web项目的src中右键新建一个类LoginAction 的servlet

    package com.demo;
    
    import java.io.IOException;
    import java.io.PrintWriter;
    
    import javax.servlet.ServletException;
    import javax.servlet.annotation.WebServlet;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    
    /**
     * Servlet implementation class LoginServlet
     */
    @WebServlet("/LoginServlet")
    public class LoginAction extends HttpServlet {
        private static final long serialVersionUID = 1L;
           
        /**
         * @see HttpServlet#HttpServlet()
         */
        public LoginAction() {
            super();
            // TODO Auto-generated constructor stub
        }
    
        /**
         * @see HttpServlet#doGet(HttpServletRequest req, HttpServletResponse res)
         */
        protected void doGet(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException {
            // TODO Auto-generated method stub
            //response.getWriter().append("Served at: ").append(request.getContextPath());
            
            PrintWriter out=res.getWriter();
            
            String username=req.getParameter("username");
            String password=req.getParameter("password");
            
            String ret;
            if(username.equals("admin"))
            {
                if(password.equals("admin"))
                {
                    ret="登陆成功";
                }
                else
                {
                    ret="密码错误";
                }
            }
            else 
            {
                ret="用户名错误";
            }
            
              //返回html页面  
            res.setContentType("text/html;charset=utf-8");  
            out.println("<html>");  
            out.println("<head>");     
            out.println("<title>登录信息</title>");      
            out.println("</head>");    
            out.println("<body>");     
            out.println("welcome欢迎【" + username + "】用户登录成功!!!");    
            out.println("</body>");    
            out.println("</html>");  
            
            
            out.flush();
            out.close();
        }
    
        /**
         * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
         */
        protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
            // TODO Auto-generated method stub
            doGet(request, response);
        }
    
    }

    3.在WebRoot下的WEB-INF的web.xml,部署我们的Servlet,启动服务器。

      <servlet>
              <servlet-name>login</servlet-name> <!-- 名字随便 -->
              <servlet-class>com.demo.LoginAction</servlet-class><!-- servlet类名 -->
      </servlet>
      
      <servlet-mapping>
          <servlet-name>login</servlet-name>
          <url-pattern>/login</url-pattern> <!-- url虚拟访问路径,最后我们通过工程名/login进行访问,像这样http://127.0.0.1:8080/helloworld/login -->
      </servlet-mapping>
      

    4.一定要启动服务器,之后在浏览器中输入你的URL

    http://localhost:8080/helloworld/login.jsp

    上面中我们没有配置类似:*.jsp的访问格式也能够访问jsp页面,为什么?

    tomcat的 conf目录下默认配置文件web.xml文件中有这个配置项,类似这样

        <!-- The mapping for the default servlet -->
        <servlet-mapping>
            <servlet-name>default</servlet-name>
            <url-pattern>/</url-pattern>
        </servlet-mapping>
    
        <!-- The mappings for the JSP servlet -->
        <servlet-mapping>
            <servlet-name>jsp</servlet-name>
            <url-pattern>*.jsp</url-pattern>
            <url-pattern>*.jspx</url-pattern>
        </servlet-mapping>

    可以看到,通过通配符*进行了映射,所以可以访问任意jsp文件。

    参考:

    http://blog.csdn.net/jiuqiyuliang/article/details/36424981

    更多参考:

    http://help.eclipse.org/kepler/index.jsp?topic=%2Forg.eclipse.stardust.docs.wst%2Fhtml%2Fwst-integration%2Fdynamic-web-proj.html 官方文档

    http://blog.csdn.net/wangchenggong88/article/details/6830316

    http://www.blogjava.net/ynstudio/archive/2009/07/01/284960.html

     http://orajc.blog.51cto.com/458434/263296/     eclipse Java EE平台使用指南(一)

    http://blog.sina.com.cn/s/blog_7ee821410101ipt6.html

  • 相关阅读:
    384. 最长无重复字符的子串
    406. 和大于S的最小子数组
    159. 寻找旋转排序数组中的最小值
    62. 搜索旋转排序数组
    20. 骰子求和
    125. 背包问题 II
    92. 背包问题
    1295. 质因数统计
    471. 最高频的K个单词
    1339. 最大区间
  • 原文地址:https://www.cnblogs.com/youxin/p/3482612.html
Copyright © 2020-2023  润新知