tomcat:
1。-WebContent包
-WEB-INF
-classes(编译的class文件放于这里)
-lib
-web.xml
2。在src新建Person
3。手动的Person类对应的class文件(含包)复制到classes目录
4。WebContent目录下新建JSP文件
<%@ page import="com.atguigu.test.Person"%>
<%@ page language="java" import="java.util.*" pageEncoding="ISO-8859-1"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>starting page</title>
<meta http-equiv="Content-type" content="text/html">
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
-->
</head>
<body>
<%
Person person=new Person();
System.out.print(person.getPersonInfo());
%>
</body>
</html>
5。把WebContent目录复制到Tomcat的webapps目录下,
6。在浏览器输入http://localhost:8080/WebContent/hello.jsp
**********************************************************
在javaEE的eclipse开发web工程 firsttomcat
在servers面板中新建tomcat服务器,一定要关联tomcat安装的根目录
新建Dynamic web project
开发javaweb应用
通过run on server运行
**************************************************
Servlet的helloworld
1.创建一个servlet接口的实现类
public class HelloServlet implements Servlet
2.在web.xml文件中配置和映射这个Servlet
<servlet>
<!--Servlet注册的名字-->
<servlet-name>helloServlet</servlet-name>
<!--Servlet的全类名-->
<servlet-class>com_atguigujavaweb.helloservlet</servlet-class>
</servlet>
<servlet-mapping>
<!--需要和某一个servlet节点的servlet-name子节点的文本节点一致-->
<servlet-name>helloServlet</servlet-name>
<!--映射访问路径:代表当前WEB应用的根目录-->
<url-pattern>/hello</url-pattern>
</servlet-mapping>
http://localhost:8080/firsttomcat/hello
对应
/hello ----/表示根目录
Servlet生命周期的方法:
1.构造器:只调用一次,
2.init方法:制被调用一次,在创建实例后立即被调用,用于初始化Servlet
3.service:多次调用,用于响应请求
4.destroy:只调用一次,在当前Servlet所在WEb应用被卸载调用,释放资源
.load-on-startuo 参数
<servlet>
<!--Servlet注册的名字-->
<servlet-name>helloServlet</servlet-name>
<!--Servlet的全类名-->
<servlet-class>com_atguigujavaweb.helloservlet</servlet-class>
<!--制定创建的时机-->
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<!--需要和某一个servlet节点的servlet-name子节点的文本节点一致-->
<servlet-name>helloServlet</servlet-name>
<!--映射访问路径:代表当前WEB应用的根目录-->
<url-pattern>/hello</url-pattern>
</servlet-mapping>
. load-on-startup:制定创建的时机,若为负数则第一次请求被创建,
若为0或正数则当前WEB应用被Servlet容器加载时创建实例,且数组越小越早被创建
ServletConfig:封装Servlet配置信息,并且获取SercletContext对象
1.配置Servlet初始化参数
<servlet>
<!--Servlet注册的名字-->
<servlet-name>helloServlet</servlet-name>
<!--Servlet的全类名-->
<servlet-class>com_atguigujavaweb.helloservlet</servlet-class>
<!-- 配置Servlet初始化参数 -->
<init-param>
<!-- 初始化名字 -->
<param-name>password</param-name>
<param-value>1230</param-value>
</init-param>
<!--制定创建的时机-->
<load-on-startup>1</load-on-startup>
</servlet>
2.获取初始化参数:
getInitParameter(String name) :获取指定参数名的初始化参数
getInitParameterNames(); :获取参数组成的Enumeration对象
System.out.println("init...");
String user=arg0.getInitParameter("user");
System.out.println("user:"+user);
Enumeration<String> names=arg0.getInitParameterNames();
while(names.hasMoreElements()){
String name=names.nextElement();
System.out.println("^^"+name+":"+name);
}
String servletName=arg0.getServletName();
System.out.println(servletName);
*****************************************
ServletContext
1.可以由SerlvetConfig即arg0获取
ServletContext servletcontext=arg0.getServletcontext();
2.该对象代表当前WEB应用:可以认为ServletContext是当前WEB应用
的大管家,可以从中获取到当前WEB应用的各个方面的信息
(1)获取当前WEB应用的初始化参数
设置当前WEB应用的初始化参数:可以为所有Servlet所获取。而Servlet的初始化参数
只用哪个Servlet可以获取。
<context-param>
<param-name>drive</param-name>
<param-value>com.mysql.jdbc.Driver</param-value>
</context-param>
方法:.getInitParameter
.getInitParameterNames
代码:
//获取ServletContext对象
ServletContext servletContext=arg0.getServletContext();
String driver=servletContext.getInitParameter("driver");
System.out.println("driver:"+driver);
Enumeration<String> names2=servletContext.getInitParameterNames();
while(names2.hasMoreElements()){
String name=names2.nextElement();
System.out.println("-->"+name);
}
(2)获取当前WEB应用的某一个文件的绝对路径:
而不是部署前的路径
getRealPath(String path)
代码:
String realPath=servletContext.getRealPath("/note.txt");
System.out.println(realPath);
(3).获取当前WEB应用的名称
getContextPath()
代码:
String contextPath=servletContext.getContextPath();
System.out.println(contextPath);
(4)获取当前WEB应用的某一个文件对应的输入流
getResourcetream(String path) path为当前WEB应用的根目录
代码:
InputStream is2=servletContext.getResourceAsStream("jdbc.properties");
System.out.println("2."+is2);
(5)attribute相关的几个方法:
*******************************************************
get请求和post请求
get请求:传递参数
post请求:主要用于向WEB服务器端程序提交From表单中的数据
如何在Servlet中获取请求信息;
(1)Servlet的service()方法用于应答请求:因为每次请求都用调用service()方法
public void service(ServletRequest arg0, ServletResponse arg1)
throws ServletException, IOException {
// TODO Auto-generated method stub
System.out.println("请求来了。。。");
}
ServletRequest:封装了请求信息,可以从中获取任何请求信息
ServletResponse:封装响应信息。如果想给什么响应,具体可以使用该接口方法实现
这两个接口的实现类都是服务器给与实现的,并在服务器调用service方法传入
ServletRequest:
(1) 获取请求参数:
String getParameter(String name) :根据请求参数的名字返回参数值,单个值
String[] getParameterValues(String name) :根据请求参数的名字返回
请求参数对应的字符串数组
Map getParameterMap() :返回请求参数的健指对:Key:参数名,value:参数值,String 数组类型
Enumeration getParameterNames() :返回参数名对应Enumeration对象,类似ServletConfig即arg0
或ServletContex的getInitParameterNames()方法
(2)获取请求的URL:
(3)获取请求方式:
HttpServletRequest httpservletrequest =(HttpServletRequest)arg0;
String requestURI=httpservletrequest.getRequestURI();
System.out.println(requestURI);
String method=httpservletrequest.getMethod();
System.out.println(method);
3。httpservletrequest是ServletRequest的子接口,针对http请求所定义,里面包含
大量获取http
String queryString=httpservletrequest.getQueryString();
System.out.println(queryString);
String servletPath=httpservletrequest.getServletPath();
System.out.println(servletPath);
代码写在
myeclipse中
firstservlet
eclipse
firsttomcat
1。-WebContent包
-WEB-INF
-classes(编译的class文件放于这里)
-lib
-web.xml
2。在src新建Person
3。手动的Person类对应的class文件(含包)复制到classes目录
4。WebContent目录下新建JSP文件
<%@ page import="com.atguigu.test.Person"%>
<%@ page language="java" import="java.util.*" pageEncoding="ISO-8859-1"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>starting page</title>
<meta http-equiv="Content-type" content="text/html">
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
-->
</head>
<body>
<%
Person person=new Person();
System.out.print(person.getPersonInfo());
%>
</body>
</html>
5。把WebContent目录复制到Tomcat的webapps目录下,
6。在浏览器输入http://localhost:8080/WebContent/hello.jsp
**********************************************************
在javaEE的eclipse开发web工程 firsttomcat
在servers面板中新建tomcat服务器,一定要关联tomcat安装的根目录
新建Dynamic web project
开发javaweb应用
通过run on server运行
**************************************************
Servlet的helloworld
1.创建一个servlet接口的实现类
public class HelloServlet implements Servlet
2.在web.xml文件中配置和映射这个Servlet
<servlet>
<!--Servlet注册的名字-->
<servlet-name>helloServlet</servlet-name>
<!--Servlet的全类名-->
<servlet-class>com_atguigujavaweb.helloservlet</servlet-class>
</servlet>
<servlet-mapping>
<!--需要和某一个servlet节点的servlet-name子节点的文本节点一致-->
<servlet-name>helloServlet</servlet-name>
<!--映射访问路径:代表当前WEB应用的根目录-->
<url-pattern>/hello</url-pattern>
</servlet-mapping>
http://localhost:8080/firsttomcat/hello
对应
/hello ----/表示根目录
Servlet生命周期的方法:
1.构造器:只调用一次,
2.init方法:制被调用一次,在创建实例后立即被调用,用于初始化Servlet
3.service:多次调用,用于响应请求
4.destroy:只调用一次,在当前Servlet所在WEb应用被卸载调用,释放资源
.load-on-startuo 参数
<servlet>
<!--Servlet注册的名字-->
<servlet-name>helloServlet</servlet-name>
<!--Servlet的全类名-->
<servlet-class>com_atguigujavaweb.helloservlet</servlet-class>
<!--制定创建的时机-->
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<!--需要和某一个servlet节点的servlet-name子节点的文本节点一致-->
<servlet-name>helloServlet</servlet-name>
<!--映射访问路径:代表当前WEB应用的根目录-->
<url-pattern>/hello</url-pattern>
</servlet-mapping>
. load-on-startup:制定创建的时机,若为负数则第一次请求被创建,
若为0或正数则当前WEB应用被Servlet容器加载时创建实例,且数组越小越早被创建
ServletConfig:封装Servlet配置信息,并且获取SercletContext对象
1.配置Servlet初始化参数
<servlet>
<!--Servlet注册的名字-->
<servlet-name>helloServlet</servlet-name>
<!--Servlet的全类名-->
<servlet-class>com_atguigujavaweb.helloservlet</servlet-class>
<!-- 配置Servlet初始化参数 -->
<init-param>
<!-- 初始化名字 -->
<param-name>password</param-name>
<param-value>1230</param-value>
</init-param>
<!--制定创建的时机-->
<load-on-startup>1</load-on-startup>
</servlet>
2.获取初始化参数:
getInitParameter(String name) :获取指定参数名的初始化参数
getInitParameterNames(); :获取参数组成的Enumeration对象
System.out.println("init...");
String user=arg0.getInitParameter("user");
System.out.println("user:"+user);
Enumeration<String> names=arg0.getInitParameterNames();
while(names.hasMoreElements()){
String name=names.nextElement();
System.out.println("^^"+name+":"+name);
}
String servletName=arg0.getServletName();
System.out.println(servletName);
*****************************************
ServletContext
1.可以由SerlvetConfig即arg0获取
ServletContext servletcontext=arg0.getServletcontext();
2.该对象代表当前WEB应用:可以认为ServletContext是当前WEB应用
的大管家,可以从中获取到当前WEB应用的各个方面的信息
(1)获取当前WEB应用的初始化参数
设置当前WEB应用的初始化参数:可以为所有Servlet所获取。而Servlet的初始化参数
只用哪个Servlet可以获取。
<context-param>
<param-name>drive</param-name>
<param-value>com.mysql.jdbc.Driver</param-value>
</context-param>
方法:.getInitParameter
.getInitParameterNames
代码:
//获取ServletContext对象
ServletContext servletContext=arg0.getServletContext();
String driver=servletContext.getInitParameter("driver");
System.out.println("driver:"+driver);
Enumeration<String> names2=servletContext.getInitParameterNames();
while(names2.hasMoreElements()){
String name=names2.nextElement();
System.out.println("-->"+name);
}
(2)获取当前WEB应用的某一个文件的绝对路径:
而不是部署前的路径
getRealPath(String path)
代码:
String realPath=servletContext.getRealPath("/note.txt");
System.out.println(realPath);
(3).获取当前WEB应用的名称
getContextPath()
代码:
String contextPath=servletContext.getContextPath();
System.out.println(contextPath);
(4)获取当前WEB应用的某一个文件对应的输入流
getResourcetream(String path) path为当前WEB应用的根目录
代码:
InputStream is2=servletContext.getResourceAsStream("jdbc.properties");
System.out.println("2."+is2);
(5)attribute相关的几个方法:
*******************************************************
get请求和post请求
get请求:传递参数
post请求:主要用于向WEB服务器端程序提交From表单中的数据
如何在Servlet中获取请求信息;
(1)Servlet的service()方法用于应答请求:因为每次请求都用调用service()方法
public void service(ServletRequest arg0, ServletResponse arg1)
throws ServletException, IOException {
// TODO Auto-generated method stub
System.out.println("请求来了。。。");
}
ServletRequest:封装了请求信息,可以从中获取任何请求信息
ServletResponse:封装响应信息。如果想给什么响应,具体可以使用该接口方法实现
这两个接口的实现类都是服务器给与实现的,并在服务器调用service方法传入
ServletRequest:
(1) 获取请求参数:
String getParameter(String name) :根据请求参数的名字返回参数值,单个值
String[] getParameterValues(String name) :根据请求参数的名字返回
请求参数对应的字符串数组
Map getParameterMap() :返回请求参数的健指对:Key:参数名,value:参数值,String 数组类型
Enumeration getParameterNames() :返回参数名对应Enumeration对象,类似ServletConfig即arg0
或ServletContex的getInitParameterNames()方法
(2)获取请求的URL:
(3)获取请求方式:
HttpServletRequest httpservletrequest =(HttpServletRequest)arg0;
String requestURI=httpservletrequest.getRequestURI();
System.out.println(requestURI);
String method=httpservletrequest.getMethod();
System.out.println(method);
3。httpservletrequest是ServletRequest的子接口,针对http请求所定义,里面包含
大量获取http
String queryString=httpservletrequest.getQueryString();
System.out.println(queryString);
String servletPath=httpservletrequest.getServletPath();
System.out.println(servletPath);
代码写在
myeclipse中
firstservlet
eclipse
firsttomcat