您好,欢迎访问三七文档
当前位置:首页 > 办公文档 > 工作范文 > (完整版)韩顺平-2011细说Servlet笔记
1第1章B/S与C/S结构1.1背景知识介绍J2EE的13种技术java-servlet-jsp[技术总是有一个演变过程]zip粘贴到word设置1.2回顾一下我们现有的技术java基础(面向对象,集合,界面,线程,文件,网络)jdbc(java的数据库编程)oracle/mysql/sqlserverhtmlcssjavascript(web开发)-网页设计xmlserlvet+jsp-javaweb开发[使用java技术做web开发]javaee体系的介绍servlet项目演示web开发介绍①静态页面(html)②动态页面1.用户可以输入数据,和页面交互(注册,购物,发帖子,付款...)2.不同时间打开页面,内容是变化.3.目前比较流行的左动态页面的技术(servlet/jsp,php,asp.net,asp,cgi)1.3动态网页技术的比较(了解)1.3.1bs和cs的比较(1)BS:browserserver浏览器服务器2(2)csclientserver客户服务为什么需要的web服务器/web究竟是干什么的?1.3.2模拟一个web服务器MyWebServer.javaimportjava.io.*;importjava.net.*;publicclassMyWebServer{3publicstaticvoidmain(String[]args)throwsException{ServerSocketss=newServerSocket(80);Sockets=ss.accept();//提示一句话System.out.println(在9999上等待连接...);OutputStreamos=s.getOutputStream();BufferedReaderbr=newBufferedReader(newFileReader(d:\\hello.html));Stringbuf=;while((buf=br.readLine())!=null){os.write(buf.getBytes());}//关闭流br.close();os.close();s.close();}}第2章Tomcat的安装与详解2.1通过tomcat来讲解BS结构2.1.1安装tomcat服务器解压即可,注意,全英文路径2.1.2配置Tomcat①在环境变量中添加JAVA_HOME=指向你的jdk的主目录(并不是bin文件目录)4②在不配置JAVAHOME的前提下启动tomcat在startup.bat的第25行中添加setJAVA_HOME=JKD路径2.1.3启动tomcat服务器到tomcat主目录下bin/startup.bat52.1.4验证是否安装成功(8080是默认端口如果该端口已经被占用需要修改端口)2.2Tomcat安装后问题解决2.2.1Tomcat无法正常启动的原因分析1.JAVA_HOME配置错误,或者没有配置2.如果你的机器已经占有了8080端口,则无法启动,解决方法(1)你可以8080先关闭netstat–annetstat–anb来查看谁占用该8080(2)主动改变tomcat的端口.到conf/server.xml文件中修改ConnectorconnectionTimeout=20000port=8088(去修给config-server.xml的端口号)protocol=org.apache.coyote.http11.Http11NioProtocolredirectPort=8443/3.能够正常启动,但是会导航到另外一个页面.去修改工具-管理加载项,把默认的导航给禁用即可.4.在访问tomcat时候,一定保证tomcat服务器是启动2.3Tomcat的目录结构文件bin:启动和关闭tomcat的bat文件conf:配置文件--server.xml:该文件用于配置和server相关的信息,比如tomcat启动端口后,配置Host,配置Context即web应用--web.xml:该文件配置与web应用(web应用就相当于是一个web站点)--tomcat-users.xml:该文件用户配置tomcat的用户密码和权限6lib目录:该目录放置运行tomcat运行需要的jar包logs目录:存放日志,当我们需要去查看日志的时候,很有用!,当我们启动tomcat错误时候,可以查询信息.webapps目录:该目录下,放置我们的web应用(web站点),比如:建立web1目录下面放置我们的html文件jsp文件..图片...则web1就被当做一个web应用管理起来(☞特别说明tomcat6.0以后支持tomcat5版本还有别的设置)work:工作目录:该目录用于存放jsp被访问后生成的对应的server文件和.class文件2.3.1如何去访问一个web应用的某个文件2.3.2首页面设置及目录规范结构现在我们要求:把hello.html文件设置成该web应用的首页,则需要把web应用的目录格式做的更加规范:①在web文件夹下配置WEB-INF文件夹②在web.xml文件中添加配置的代码:7welcome-file-listwelcome-filehello1.html/welcome-file/welcome-file-list③通过来访问hello1.htmlweb-inf目录下的classes目录将来是存放class文件lib目录将来时存放jar文件web.xml配置当前这个web应用的信息.2.3.3Tomcat如何去管理虚拟目录需求:当我们把web应用放到webapps目录,tomcat会自动管理,如果我们希望tomcat可以管理其它目录下的web应用?-虚拟目录配置我在d盘有一个web应用.(1)虚拟目录配置步骤:a)找到server.xml文件b)编辑host节点添加Contextpath在server.xml中添加:Contextpath=/myweb2docBase=d:\web2/myweb2:是访问时输入的web名,实际取出的是web2中的资源d:\web2:绝对路径下web2中存放资源如:hello2.html实际访问时输入的地址:绝对路径:从根分区找某个文件相对路径:从该文件位置去找另一个文件C)需要重启tomcat,才能生效.(因为是采用的dom技术讲信息加载到内存中)context的几个属性的说明path:docbase:reloadable;如果设为ture,表示tomcat会自动更新web应用,这个开销大,建议在开发过程中,可以设为true,但是一旦真的发布了,则应当设为false;8upackWAR:如果设为ture,则自动解压,否则不自动解压.①:打war包cd:d/web2然后jar–cvfweb2.war*②:浏览打好的war包Deploy发布后会在webapps中自动生存改文件2.3.4配置域名我们看和一个如何配置自己的主机名:我们在实际访问网站的过程中,不可能使用应用/资源名的方式去访问网站,实际上使用类似的方式去访问网站,这个又是怎么实现的呢?看看ie浏览器访问一个web站点的流程.实现的步骤如下:(1)在C:\WINDOWS\system32\drivers\etc下的host文件添加127.0.0.1(2)在tomcat的server.xml文件添加主机名Hostname==d:\web3”Contextpath=/docBase=d:\web3//Host(3)在d:\web3加入了一个/WEB-INF/web.xml把hello2.html设为首页面如果连端口都不希望带,则可以吧tomcat的启动端口设为80即可.(4)重启生效2.3.5Tomcat体系的再说明图:92.3.6如何配置默认主机在tomcat/conf/server.xml文件Enginename=CatalinadefaultHost=主机名如:Enginename=CatalinadefaultHost=技术?3.1servlet的介绍①servlet其实就是java程序(java类)②该java程序(java类)要遵循servlet开发规范③serlvet是运行在服务端④serlvet功能强大,几乎可以完成网站的所有功能⑤是学习jsp基础3.2tomcat和servlet在网络中的位置3.3Servlet的生命周期3.3.1servlet的生命周期是怎样的/servlet究竟是怎样工作的UML时序图帮助大家理解参看execel103.3.2面试题:请简述servlet的生命周期(工作流程)答:标准版本:①WEB服务器首先会检查是否已经装载并创建了该servlet实例对象。如果是直接进行第④步,否则执行第②步。②装载并创建该Servlet的一个实例对象。③调用Servlet实例对象的init()方法。④创建一个用于封装HTTP请求消息的HttpServletRequest对象和一个代表HTTP响应消息的HttpServletResponse对象,然后调用service()方法并将请求和响应作为参数传递进去。⑤WEB应用被停止或重启之前,Servlet引擎将卸载Servlet,在卸载之前调用Servlet的destroy()方法1.当serlvet第一次被调用的时候,会触发init函数,该函数会把servlet实例装载到内存.init函数只会被调用一次2.然后去调用servlet的service函数3.当第二次后访问该servlet就直接调用service函数.4.当web应用reload或者关闭tomcat或者关机都会去调用destroy函数,该函数就会去销毁serlvet5.Servlet的生命周期11当客户端第一次向web服务器发出一个servlet请求时,web服务器将会创建一个该servlet的实例,并且调用servlet的init()方法;如果当服务器已经存在了一个servlet实例,那么,将直接使用此实例;然后再调用service()方法,service()方法将根据客户端的请求方式来决定调用对应的doXXX()方法;当web应用reload或者关闭tomcat或者关机,web服务器将调用destroy()方法,将该servlet从服务器内存中删除。生命全过程:1.加载2.实例化3.初始化4.处理请求5.退出服务3.4开发servlet有三种方法3.4.1实现servlet接口的方式需求如下:请使用实现接口的方式,来开发一个Servlet,要求该Servlet可以显示Hello,world,同时显示当前时间.步骤1.在webapps下建立一个web应用hspWeb12.在hspWeb1下建立WEB-INF-web.xml[web.xml可以从ROOT/WEB-INF/web.xml拷贝]3.在WEB-INF下建立classes目录(我们的Servlet就要在该目录开发.),建立lib文件夹4.开发MyServlet.javapackagecom.hsp;importjavax.servlet.*;importjavax.servlet.http.*;为了能将servlet-api.jar包引入,需要配置环境变量变量值;E:\tomcat\apache-tomcat-6.0.20\lib\servlet-api.jar记得带上文件名12importjava.io.
本文标题:(完整版)韩顺平-2011细说Servlet笔记
链接地址:https://www.777doc.com/doc-4829472 .html