星期三, 十二月 16, 2015 ? 20:41:24
?
?
?
javax.servlet
javax.servlet.http
?
servlet-api.jar这个jar包是对api文档的实现。
想用这个class文件,用这个接口
?
?
1.建一个java project
2.载入servlet-api.jar这个jar包
3.讲解
? ? javax.servlet
? 是在服务器端运行的小程序,也可以在mail、ftp服务器端运行。
?
? ?service(ServletRequest req,ServletResponse res)是直接被容器调用的
?
要用servlet时一般用其子类GenericServlet(通用Servlet)-->HttpServlet又去实现了GenericServlet
我们要用的就是HttpServlet专门给web server使用的servlet
?
public abstract class HttpServlet{},是abstract类,不可以直接使用它,要实现它的方法
?
在发起了一http请求时,会直接调用service()方法,service()方法会去找doGet()和doPost()方法,所以我们只需要重写doGet()方法和doPost()方法就可以了。
1.什么时候doGet()方法,客户端用get访问这个servlet时,直接在url直接敲url这个地址就是get方式
2.什么时候doPost()方式,在form表单中提交,method=post时;这种时候才会post方式
?
doGet(ServletRequest req,ServletResponse res)
request是封装了客户端的一些信息发送给服务器--->servlet?
response是将服务器端返回的内容发送给客户端
?
在容器中定义一个servlet
?
映射到客户端的访问地址,通过HW去找servlet-->doGet()方法
?
?
自己实现了第一个servlet
1.在myeclipse中新建web project-->引用servlet.jar包-->新建一个servlet类
2.配置web.xml ?中的访问地址和映射
3.访问http://localhost:8080/TestServlet01/httpServlet 即可
?
怎么在本地进行实现tomcat???
import java.io.IOException; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; public class HelloServlet extends HttpServlet{ @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { // TODO Auto-generated method stub System.out.print("doGet"); } }
?配置web.xml
<?xml version="1.0" encoding="UTF-8"?> <web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"> <servlet> <description>This is the description of my J2EE component</description> <display-name>This is the display name of my J2EE component</display-name> <servlet-name>HelloServlet</servlet-name> <servlet-class>HelloServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>HelloServlet</servlet-name> <url-pattern>/httpServlet</url-pattern> </servlet-mapping> </web-app>
?访问:
http://localhost:8080/TestServlet01/httpServlet
?
信息:
信息: validateJarFile(D:\tomcat\apache-tomcat-6.0.44\webapps\TestServlet01\WEB-INF\lib\servlet-api.jar) - jar not loaded. See Servlet Spec 2.3, section 9.7.2. Offending class: javax/servlet/Servlet.class
doGet
?
?
?
服务器调用我们的servlet程序生成的,发什么看什么完了。
?
部署servlet是学java web最基础的内容,得练熟悉了。
?
?
星期三, 十二月 16, 2015 ?22:56:56
servlet生命周期
原文:http://yuzhouxiner.iteye.com/blog/2264638