第八天的学习内容如下:http://www.cnblogs.com/tobecrazy/p/3468458.html
Java servlet 技术
Servlet是使用java servlet应用程序接口以及相关类和方法给所构成的java程序,它在服务器端的servlet容器中运行。
Servlet程序与传统java应用程序的差别在于servlet是由J2EE中的的servlet加载并执行的,不能直接在命令行方式执行。Servlet仅能处理HTTP请求,然后返回一系列处理结果,并动态生成web页面。
使用myeclipse创建servlet程序
首先新建一个web项目,然后new->servlet
然后在弹出的对话框输入如下信息:
选择next将servlet的URL设置为/userInfoServletAction.action如图
最后点击finish myeclipse会自动创建一个servlet class生成web.xml
在index.jsp添加如下代码:
<!-- form method="post" action="/myservlet/userInfoServletAction.action" --> < form method="post" action="${pageContext.request.contextPath}/userInfoServletAction.action" > <input type="text" name="Name" /> <input type="submit" name="sub"/> </form>
${pageContext.request.contextPath}是使用EL表达式动态获取web应用程序上下文路径在等效于 “/myservlet” ,可以直接使用注释的那段代码
加载myservlet项目,运行结果如下:
This is class myservlet.userInfoServlet, using the POST method
此时地址栏:
http://localhost:8080/myservlet/userInfoServletAction.action
Servlet对象声明周期
Servlet对象工作原理:
每当客户端浏览器第一次访问web服务器中某个servlet程序类对象实例发送HTTP请求,servlet容器首先解析web客户端HTTP请求和创建出一个servletRequest对象和一个ServletResponse对象,然后Servlet容器搜索web应用程序根目录下的web-inf目录中的lib(其中存放了web应用程序的相关jar包)和class文件,并基于web.xml配置搜索Servlet程序中的*.class文件,最后通过反射机制采用Class.forName(“Servlet实现类类名”) 创建出Servlet类实例,并缓存在Servlet容器对象缓存池