jsp_web编程全部

上传人:ths****59 文档编号:54560545 上传时间:2018-09-14 格式:PPT 页数:63 大小:445.50KB
返回 下载 相关 举报
jsp_web编程全部_第1页
第1页 / 共63页
jsp_web编程全部_第2页
第2页 / 共63页
jsp_web编程全部_第3页
第3页 / 共63页
jsp_web编程全部_第4页
第4页 / 共63页
jsp_web编程全部_第5页
第5页 / 共63页
点击查看更多>>
资源描述

《jsp_web编程全部》由会员分享,可在线阅读,更多相关《jsp_web编程全部(63页珍藏版)》请在金锄头文库上搜索。

1、JAVA JSP_WEB编程,Servlet 373353263,背景知识,常用的Web服务器 IIS 微软的 跑asp Apache Tomcat 免费好用的 严格来说它只能叫容器 不能跑包装了业务逻辑的组建如:EJB WebLogic BA收费 Tongweb 国产 注意:目前大家对Web服务器 应用服务器都混合叫了通常的动态网页技术 CGI (Common GateWay Interface) API常用的有(NSAPI,ISAPI) ASP(Active Server Page)vb脚本语言 PHP(Personal Home Page)动态脚本语言的经典代表 JSP/Servlet

2、(Java Server Page),LAMP,tomcat启动与停止,startup shutdown catalina start catalina stop catalina debug 调试错误的时候 run exit help 设置环境变量JAVA_HOME shutdown.bat小心使用,tomcat目录结构,bin: 存放各种平台下启动和关闭Tomcat的脚本文件。 startup.bat是windows下启动tomcat的文件, shutdown.bat是关闭tomcat的文件。 common: 在common目录下的lib目录,存放Tomcat服务器和所有web应用都能访问

3、的JAR。 shared: 在shared目录下的lib目录,存放所有web应用能访问的,但Tomcat不能访问的JAR。 server: 在server/webapps目录中,存放Tomcat自带的两个APP-admin和manager应用,来管理Tomcat-web服务用的。 work : Tomcat把各种由jsp生成的servlet文件放在这个目录下。 temp : 临时活页夹,Tomcat运行时候存放临时文件用的。 logs : 存放Tomcat的日志文件 webapps: web应用的发布目录,把 java开发的web站点或war文件放入这个目录下就可以通过tomcat服务器访问了

4、。 conf : Tomcat的各种配置文件,最重要的是 server.xml.,Tomcat配置文件,conf/server.xml 服务器的主配置文件 conf/web.xml 定义所有Web应用的配置(缺省的Servlet定义和MIME类型定义) conf/tomcat-user.xml 定义了tomcat用户的信息(用于权限与安全),conf/server.xml,顶层类元素: 位于整个配置文件的顶层, ; 连接器类元素Connectors : 客户和服务(容器类元素)间的通讯接口。接受客户请求,返回响应结果; 容器类元素Containers: 处理客户请求并且生成响应结果,包含3个:

5、 嵌套类元素Nested Components: 可以加入到容器中的元素,包括: 等 一个包含一个或多个,一个包含唯一一个和一个或多个,多个 共享一个;一个包含多个,每个 定义一个虚拟主机,包含一个或多个web应用; 元素是代表一个在虚拟主机上运行的Web应用。 Please note that for tomcat 5.x, unlike tomcat 4.x, it is NOT recommended to place elements directly in the server.xml file. Instead, put them in the META-INF/context.x

6、ml directory of your WAR file or the conf directory as described above.,server.xml的层次结构,HTTP协议基础,HTTP(Hypertext Transfer Protocol, 超文本传输协议) HTTP是以明文方式发送数据的 用于从WWW服务器传输超文本到本地浏览器的传输协议。 HTTP协议是以TCP/IP为基础的高层协议。 现在广泛使用的版本HTTP/1.2,Web Application的概念 j2ee规范,Web Application Name WEB-INF web.xml 该web app的配置文

7、件 lib 该web app用到的库文件 classes 存放编译好的servlet META-INF 存放该web app的上下文信息,符合J2EE标准 Web Application可以直接放在webapp下面 也可以通过配置文件指定到其他目录 里面 ,Tomcat的目录结构,bin/ 二进制可执行文件和脚本catalina start stopcatalina debug run exit common/ Catalina本身和web应用可加载的类目录 conf/ 配置文件目录 logs/ 日志目录 server/ 服务器所需的类库目录 shared/ Web App共享的类库 weba

8、pps/ Web应用所存放的目录applications work/ Tomcat的工作目录(存放jsp产生的class文件) temp/ 存放临时产生的文件,Servlet简介,Servlet是服务器小应用程序 用来完成B/S架构下,客户端请求的响应处理 平台独立,性能优良,能以线程方式运行 Servlet API为Servlet提供了统一的编程接口 Servlet一般在容器中运行 常见的Servlet容器 Tomcat Jetty / Resin,Servlet示例 HelloWorldServlet.java,需求: 编写一个生成纯文本的简单的Servlet类。 目的: 了解Servle

9、t的基本概念 在web.xml的配置,HelloWorldServletHelloWorldServletHelloWorldServlet/HelloWorldServlet,web app根路径(url) 必须/开头,客户端,访问:请求:request,Web服务器:tomcat,得到请求的地址:,Web。xml,servlet,请求结果:Response,请求结果:Response 返回给客户端,客户端,请求request,服务器端的应 用服务器 (tomcat),Web.xml,返回给客户端,返回Response,Servlet:处理业务逻辑,访问,创建Servlet,XXX exte

10、nds HttpServlet Override doGet doPost copy to WEB-INF/classes web.xml/ restart server,Servlet的生命周期,生命全过程: 加载 ClassLoader(创建servlet对象 永远只有这一个60分) 实例化 new 初始化 init(ServletConfig)只调用一次 处理请求 service doGet doPost 以多线程方式来处理请求 线程池 退出服务 destroy() web应用程序退出是调用该方法 重新加载 重启 只有一个对象 API中的过程: init()/只执行一次, 第一次初始化的

11、时候 public void init(ServletConfig config) throws ServletException service() public void service(ServletRequest req, ServletResponse res) throws ServletException, java.io.IOException doGet。Dopost。destroy()/webapp 退出的时候 public void destroy(),TestLifeCycleServlet.java,init,init(servletconfig config) 看a

12、pi Servlet GenericServlet, this.config = config 有两个init方法? init(); 重写必须得super.init(config) 不然不能使用this.getServletConfig 当然也就不能用getInitParameter(); 我们只需要重写init();,TestInitServlet.java,客户端,Request:/TestLifeCycleServlet,Tomcat:new出 一个对象Init():获得servlet 配置信息获得相应的服务: GenericServlet:中的service(ServletReques

13、t再调用:HttpServlet service(HttpServletRequest req,Web。xml,Servlet:,自己的servlet,HttpServlet,GenericServlet,Servlet编程接口,GenericServlet是所有Servlet的鼻祖 用于HTTP的Servlet编程都通过继承 javax.servlet.http.HttpServlet 实现 请求处理方法:(分别对应http协议的7种请求) 1、doGet 响应Get请求,常用 2、doPost 响应Post请求,常用 3、doPut 用于http1.1协议 4、doDelete 用于htt

14、p1.1协议 5、doHead 仅响应Get请求的头部。 6、doOptions 用于http1.1协议 7、doTrace 用于http1.1协议 实例的个数: 在非分布的情况下,通常一个Servlet在服务器中有一个实例,示例:使用doGet和doPost方法处理请求,要求: 编写一个带有doGet和doPost方法的Servlet 目的: 掌握基本的Servlet请求处理技术 要点: public void doGet(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException

15、 public void doPost(HttpServletRequest req, HttpServletResponse res) throws ServletException,IOException 读取指定的参数:ThreeParams.html/ThreeParams.java 读取所有的参数:ShowParameters.java/ShowParametersForm.html 获取表单信息 通过HttpServletRequest的getParameter()方法来获得客户端传递过来的数据 getParameter()方法返回一个字符串类型的值 getParameterNam

16、es()返回Enumeration类型的值,getParameterValues()返回一个字符串数组,不要通过本地文件访问,ThreeParams.java,ShowParameters.java,HTTP的状态处理,HTTP是无状态 有状态:Server知道Client以前在我这儿做过什么事儿,处理Cookie,Http协议的无连接性要求出现一种保存C/S间状态的机制 Cookie:保存到客户端的一个文本文件,与特定客户相关 Cookie以“名-值”对的形式保存数据 创建Cookie:new Cookie(name,value) 可以使用Cookie 的setXXX方法来设定一些相应的值 setName(String name)/getName() setValue(String value)/getValue() setMaxAge(int age)/getMaxAge() 利用HttpServletResponse的addCookie(Cookie)方法将它设置到客户端 利用HttpServletRequest的getCookies()方法来读取客户端的所有Cookie,返回一个Cookie数组 设置Cookie SetCookies.java 读取Cookie ShowCookies.java,

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号