一个简便的方法实现javaee版的eclipse开发动态的WEB工程(javaWEB项目)
1.把开发选项切换到javaEE
2. 可以在window-》shou view 中找到package explorer并把其拖到开发区的左边

(Tomcat环境搭建在这不多说)
3.在servers面板中新建Tomcat服务器,一定要关联到Tomcat安装的根目录
4.新建一个Dynamic Web Project。其中Target Runtime需选择Tomcat6.0(3)
5.开发java WEB应用
6.可以通过右击项目然后选run on server来运行WEB项目

-------------------------------------------------------------------------------------------------------------------------

建立动态的web项目的具体步骤:

打开javaEE版本的eclipse,切换到javaEE,File->new->Dynamic Web Project->填写动态web工程名->Target runtime选择Tomcat6.0(3)->finish;

在src目录下可以建立java类,及包,下面就是src目录下面建立的类:

package com.lanqiao.javatest;

import java.io.IOException;
import java.io.InputStream;
import java.util.Enumeration;

import javax.servlet.Servlet;
import javax.servlet.ServletConfig;
import javax.servlet.ServletContext;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;

public class HServlet implements Servlet{
/*
* 建立第一个servlet:
* servlet是一个接口,是运行在服务器端的java骨架;
* 首先创建一个Servlet类的构造器,然后在WEB-INF下的we.xml配置和映射文件
*
* Servlet容器:运行Servlet,JSP,Filter,等的软件环境
* 可以来创建Servlet,并调用Servlet的相关周期方法;
*
* Servlet生命周期的方法,生命周期相关的方法:一下方法都是Servlet容器负责调用
* 1.构造器:只被调用一次,只有第一次请求Servlet时,创建Servlet实例,调用构造器,这说明Servlet是单实例的!
* 2.init的方法:只被调用一次,在创建好实例后立即被调用。用于初始化Servlet;
* 3.servlet:被多次调用,每次请求都会调用Servlet方法,实际用于调用请求的;
* 4.destroy方法:只被调用一次,在当前Servlet所在的WEB应用被卸载前调用,用于释放当前Servlet所占用的资源。
*
* load-on-startup(配置参数):可以指定Servlet被创建的时机;
* 配置在Servlet节点中;
* <servlet>
<servlet-name>secondServlet</servlet-name>
<servlet-class>com.lanqiao.javatest.SecondServlet</servlet-class>
<load-on-startup>2</load-on-startup>
</servlet>
* 其数值越小越被被早创建
*
* */
@Override
public void destroy() {
System.out.println("destroy");

}
/*
* ServletConfig:封装了Servlet的配置信息,并且可以获取ServletContext对象,其有四个方法;
* 配饰Servlet初始化参数,必须在load-on-startup的前边配置
* 1.获取初始化参数
* getInitParameter(String name):获取指定参数名的初始化参数
* 2.getInitParameterNames():获取参数名组成的Enumeration 对象。
* 3.getServletName() :获取servlet(在web.xml中起的名字)名字的方法
*
* 4.getServletContext():获取servletContext;Context为上下文,获取servlet的上下文;
* servletContext:可以认为是WEB应用的大管家,可以从中获取到当前WEB应用的各个方面的信息:
* (1):获取当前WEB应用的初始化参数(被所有的servlet的使用的)
* 先配置再获取(在web.xml中配置)
* (2):获取当前WEB应用的某一文件的绝对路径
* getRealPath(String Path)
* (3):获取当前WEB应用的名称:getContextPath()
* (4):获取当前WEB应用的某一文件对象的输入流
* getResourceAsStream("jdbc.properties"):文件是在src目录下的文件
* getResourceAsStream("/WEB-INF/classes/jdbc.properties"):第二种方法
* */
@Override
public ServletConfig getServletConfig() {
System.out.println("getservletconfit");
return null;
}

@Override
public String getServletInfo() {
System.out.println("getservletinfo");
return null;
}

@Override
public void init(ServletConfig servletConfig) throws ServletException {
System.out.println("init");
String user=servletConfig.getInitParameter("user");
System.out.println("user:"+user);

Enumeration<String> names=servletConfig.getInitParameterNames();
while(names.hasMoreElements()){
String name=names.nextElement();
String value=servletConfig.getInitParameter(name);
System.out.println("name:"+name+"\t"+"value:"+value);
}

//获取servlet(在web.xml中起的名字)名字的方法
String servletName=servletConfig.getServletName();
System.out.println(servletName);

//获取servletContext对象;
ServletContext servletContext=servletConfig.getServletContext();
String driver=servletContext.getInitParameter("driver");
System.out.println("driver:"+driver);

Enumeration<String> names2=servletContext.getInitParameterNames();
while(names2.hasMoreElements()){
String name=names2.nextElement();
String value=servletContext.getInitParameter(name);
System.out.println("name:"+name+"\t"+"value:"+value);
}

//获取当前WEB应用的某一文件的绝对路径(一定是根目录下的:即是WebContent下的)
String realPath=servletContext.getRealPath("/javaee.test");
System.out.println(realPath);

//获取当前WEB应用的名称:getContextPath()
String contextPath=servletContext.getContextPath();
System.out.println(contextPath);

//获取当前WEB应用的某一文件对象的输入流,其中文件在src目录下建立的
try {
ClassLoader classLoader=getClass().getClassLoader();
InputStream is=classLoader.getResourceAsStream("jdbc.properties");
System.out.println("1:"+is);

} catch (Exception e) {
e.printStackTrace();
}
//第二种方法:
try {
InputStream is2=servletContext.getResourceAsStream("/WEB-INF/classes/jdbc.properties");
System.out.println("2:"+is2);
} catch (Exception e) {
e.printStackTrace();
}

}

@Override
public void service(ServletRequest arg0, ServletResponse arg1) throws ServletException, IOException {
System.out.println("servlce");

}
public HServlet(){
System.out.println("helloworld");
}
}

-------------------------------------------------------------------------------------------------------------

在WebContent->WEB-INF->lib->web.xml(已经存在)建立配置文件,下面就是在web.xml中的一些配置

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5">

<!-- 配置当前WEB应用的初始化参数 (可以写好多个,是全局的)-->
<context-param>
<param-name>driver</param-name>
<param-value>com.mysql.jdbc.Driver</param-value>
</context-param>

<context-param>
<param-name>jdbcUrl</param-name>
<param-value>jdbc:mysql:///test</param-value>
</context-param>

<!-- 配置和映射Servlet(一定要有的) -->
<servlet>
<servlet-name>HServletttt</servlet-name>
<servlet-class>com.lanqiao.javatest.SecondServlet</servlet-class>
<load-on-startup>5</load-on-startup>
</servlet>
<!-- 映射 -->
<servlet-mapping>
<servlet-name>HServletttt</servlet-name>
<url-pattern>/hello</url-pattern>
</servlet-mapping>

<servlet>
<servlet-name>seServlet</servlet-name>
<servlet-class>com.lanqiao.javatest.HServlet</servlet-class>

<!-- 配置Servlet的初始化参数 (局部的)-->
<init-param>
<!-- 分别是初始化参数名字,初始化参数值 -->
<param-name>user</param-name>
<param-value>root</param-value>
</init-param>
<init-param>
<param-name>password</param-name>
<param-value>123lxn</param-value>
</init-param>
<!-- 可以指定Servlet创建的时机 -->
<load-on-startup>2</load-on-startup>

</servlet>

</web-app>

在javaEE下学习web(在eclipse中开发动态的WEB工程,servlet的环境搭建,及servlet的一些方法)的更多相关文章

  1. (转)Maven学习总结(七)——eclipse中使用Maven创建Web项目

    孤傲苍狼只为成功找方法,不为失败找借口! Maven学习总结(七)——eclipse中使用Maven创建Web项目 一.创建Web项目 1.1 选择建立Maven Project 选择File -&g ...

  2. Maven学习总结(七)——eclipse中使用Maven创建Web项目

    一.创建Web项目 1.1 选择建立Maven Project 选择File -> New ->Project,如下图所示:

  3. 转】Maven学习总结(七)——eclipse中使用Maven创建Web项目

    原博文出自于: http://www.cnblogs.com/xdp-gacl/p/4054814.html 感谢! 一.创建Web项目 1.1 选择建立Maven Project 选择File -& ...

  4. Maven学习总结(7)——eclipse中使用Maven创建Web项目

    Maven学习总结(七)--eclipse中使用Maven创建Web项目 一.创建Web项目 1.1 选择建立Maven Project 选择File -> New ->Project,如 ...

  5. Maven——eclipse中使用Maven创建Web项目

    原文:http://www.cnblogs.com/xdp-gacl/p/4054814.html 一.创建Web项目 1.1 选择建立Maven Project 选择File -> New - ...

  6. 利用Eclipse中的Maven构建Web项目(三)

    利用Eclipse中的Maven构建Web项目 1.将Maven Project转换成动态Web项目,鼠标右键项目,输入"Project Facets" 2.依据Dynamic W ...

  7. 在eclipse中使用Maven建web工程项目

    在eclipse中使用Maven建web工程项目: 第一种方式: 右键新建maven工程,勾选创建一个简单工程 填入信息,注意打包方式要改为war 点击完成,创建完的工程目录如下: 项目中没有WEB- ...

  8. eclipse中build path与Web Deployment Assembly的作用,区别

    转自:https://blog.csdn.net/heart_mine/article/details/79402792 以下内容只为做个笔记记录已下,有问题可以留言,欢迎补充. 今天在eclipse ...

  9. 在eclipse中使用Maven建web工程的两种方式

    Eclipse版本:Neon Release (4.6.0) Maven版本:3.3.9 第一种方式: 右键新建maven工程,勾选创建一个简单工程 填入信息,注意打包方式要改为war 点击完成,创建 ...

随机推荐

  1. PAT 解题报告 1052. Linked List Sorting (25)

    1052. Linked List Sorting (25) A linked list consists of a series of structures, which are not neces ...

  2. int 与 Integer--话说数组转集合

    话说是自从JDK5后,而这就可以自动进行类型转换了. 当然,区别还是有的,就是对象和“非对象”什么的.可是,今天进行一个测试,出了一个小问题,现将代码贴下: 代码0:先来一个正常点的,用String进 ...

  3. 使用Mysql修改密码命令更改root的密码

    使用Mysql修改密码命令更改root的密码. 进入Mysql数据库命令行方式有两种方式: 方式一:在Mysql开始菜单里包含Mysql命令行客户端,只要点击输入root的密码即可进入. 方式二:在D ...

  4. raid0

    RAID0把数据分割之后放在各个硬盘上,同时读写以提升数据带宽其实在固态硬盘还没有大量出现在零售市场中之前,玩家想要大幅度提升硬盘系统的性能,最常用的方法就是组建RAID0系统.原理很简单,就以SAT ...

  5. C# Enum Type

    class Program { public enum TimeOfDay { Morining, Afternoon, Evening } static void Main(string[] arg ...

  6. linux下利用nginx部署python网站

    首先目标机器需要安装python nginx uwsgi,其次,需要给Nginx写配置文件,大体内容如下,具体内容可见 http://blog.cn2p.com/web-server/nginx-uw ...

  7. Css3中的变形与动画

    新的转换属性 下面的表格列出了所有的转换属性: 属性 描述 CSS transform 向元素应用 2D 或 3D 转换. 3 transform-origin 允许你改变被转换元素的位置. 3 2D ...

  8. 弱类型变量原理探究(转载 http://www.csdn.net/article/2014-09-15/2821685-exploring-of-the-php)

    N首页> 云计算 [问底]王帅:深入PHP内核(一)——弱类型变量原理探究 发表于2014-09-19 09:00| 13055次阅读| 来源CSDN| 36 条评论| 作者王帅 问底PHP王帅 ...

  9. spark小技巧-mapPartitions

    与map方法类似,map是对rdd中的每一个元素进行操作,而mapPartitions(foreachPartition)则是对rdd中的每个分区的迭代器进行操作.如果在map过程中需要频繁创建额外的 ...

  10. fackbook的Fresco (FaceBook推出的Android图片加载库-Fresco)

    [Android开发经验]FaceBook推出的Android图片加载库-Fresco   欢迎关注ndroid-tech-frontier开源项目,定期翻译国外Android优质的技术.开源库.软件 ...