| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> Java知识库 -> serverlt理解 -> 正文阅读 |
|
[Java知识库]serverlt理解 |
1.web服务学习 1.1==web的作用== 1.1基于bs架构设计的应用,介于浏览器和服务区之间的应用,==浏览器==发送请求到==服务器==,服务区向==数据库==中请求数据 ? 正在上传…重新上传取消 2.==http==协议 1.http超文本传输协议,用于==浏览器==和==web服务区==之间的==数据传输== 2.http传输有俩中方式比较经典 2.1请求一般包含,==请求行==(类似我们请求的url地址),==请求头==(结构类似于key:value形式),==请求体== 3.get和post请求比较经常使用 1.get请求,有请求行,请求头,==没有请求体==,把请求数据写入到url中,==有长度的限制==,用==&==隔开 2.post请求,有请求行,请求头,==有请求体==,把==数据放在请求体中==,==没有长度的限制== ? 3.tomcat 1.tomcat,web服务,server容器,开源免费,==server是一个容器依赖于tomcat启动== 2.tomcat中的文件作用,==bin用于保存jar包==,==conf用于配置文件信息==,==logs文件的日志信息==,==temp存储临时文件== ,==webapps放置部署文件==,==work临时文件放置== ? 正在上传…重新上传取消 3.webapps放置war包,会自动给我们解压 4.创建tomcat项目 ? 正在上传…重新上传取消 1.选择maven项目,Create from archtype 中创建==mave==开头的==webapp==项目 ? 正在上传…重新上传取消 2.点击加号选择创建tomcat项目,==name==,Tomcat的名称,==applictoin server==: tomcat的路径,==url== 访问URL的路径 port默认端口号 3.使用tomcat插件的方式,启动 5.tomcat访问方式 http;//localhost:8080/webapp/a.html http://localhost:8080这个是tomcat服务 webapp是tomcat名称 a.html是具体文件名 6.serverlt生命周期 ? 正在上传…重新上传取消 1.Servlet由谁创建?Servlet方法由谁调用? Servlet由web服务器创建,Servlet方法由web服务器调用. 2.服务器怎么知道Servlet中一定有service方法? 因为我们自定义的Servlet,必须实现Servlet接口并复写其 方法,而Servlet接口中有service方法 serverlt相当与tomcat的 1.serverlt的生命周期 ==service==调用服务 init创建tomcat服务 destory销毁tomcat服务 serverInfo调用serverlt服务 2.问题 当调用destory会遇到启动立即终止的方式 在控制台中输入mvm tomcat启动 7.serverlt体系 Servlet方法介绍 初始化方法,在Servleti被创建时执行,只执行一次 void init(ServletConfig config) 提供服务方法,每次Servlet被访问,都会调用该方法 void service(ServletRequest req,ServletResponse res) 销毁方法,当Servlet被销毁时,调用该方法。在内存释放或服务器关闭时销毁Servlet void destroy() 获取ServletConfig对象 ServletConfig getServletConfig() 获取Servlet信息 String getServletInfo() 1.==加载==的时候,当第一次调用服务urlParm调用服务的时候会创建servelt 2.实力化 3.销毁 @WebServlet(urlPatterns="/demo3",Loadonstartup 1) public class ServletDemo3 implements Servlet{ private ServletConfig config; /** *初始化方法 *1.调用时机:默认情况下,ServLet被第一次访问时,调用 LoadOnstartup: *2.调用次数:1次 dparam config athrows ServletException */八 QOverride public void init(ServletConfig config)throws ServletException this.configconfig; System.out.println("init..."); doverride public ServletConfig getservletConfig(){ return config; Servlet体系结构 Servlet Servlet体系根接口 GenericServlet Servlet抽象实现类 HttpServlet 对HTTP协议封装的Servlet3实现类 @WebServlet("/demo4") public class ServletDemo4 extends HttpServlet{ QOverride protected void doGet(HttpServletRequest req,HttpServletResponse resp) 我们将来开发B/S架构的web项目,都是针对HTTP协议 //T0D06et请求方式处理逻辑 ,所以我们自定义Servlet,会继承HttpServlet Qoverride protected void doPost(HttpServletRequest req,HttpServletResponse resp) //T0D0Post请求方式处理逻辑 8.server中doGet和doPost方法 实现httpServer方法分别调用doPost和doGet方法 1.具体实现方式,通过request.getMethod()获取其中的对应调用的方法 2.判断是get还是post方式 QOverride public void service(ServletRequest req,ServletResponse res)throws ServletException,IOException //根据请求方式的不同,进行分别的处理 HttpServletRequest request (HttpServletRequest)req; //1.获取请求方式 String method request.getMethod(); //2.判断 if("GET".equals(method)){ //get方式的处理逻辑[ Felse if("POST".equals(method)) //post方式的处理逻辑 3. <servlet> <servlet-name>demo13</servlet-name> //包名字 <servlet-class>com.itheima.web.ServletDemo13</servlet-class> //路径 </servlet> ? public class ServletDemo13 extends HttpServlet QOverride protected void doGet(HttpServletRequest req,HttpServletResponse resp)throws ServletException,IOExcepti System.out.println("demo13 get..."); QOverride protected void doPost(HttpservletRequest req,HttpServletResponse resp)throws ServletException,IOExcept |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/24 4:41:25- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |