web容器

Java面试复习总结(JavaWeb篇1)——JavaWeb的由来和基础知识

你离开我真会死。 提交于 2019-12-20 00:11:55
目录 什么是 Java Web Web开发的历史 开源框架时代 Java Web基础知识 一、HTTP协议 二、服务器 三、JavaWeb项目结构 参考文章 什么是 Java Web 如果你是70、80后的程序员,你一定要看一看这篇文章,保证满满的回忆。如果你是90后,那你更要看看这篇文章,因为你能找到java web发展的历史。 言归正传,Java语言能长期霸占语言排行榜一个重要的原因就是强大的web开发能力,web开发是java的基石(在EJB推出的时候当时的Sun用基石来描述EJB),所以了解java web开发原理是非常重要的。如果仅仅跟大家聊java web开发原理未免有点单薄,今天我将把java web开发包含的主体内容跟头条的读者一起分享一下(一直计划写关于java web的文章,一直也没时间写,今天就当时开个头吧)。 Web开发的历史 web开发的历史其实并不久远,要搞清楚java web开发的特点(主要是优点),首先要了解web开发的历史(简单的回归一下)。早期的web是非常简单的结构,用户发出请求(request),服务器给出回应(response),这个时期的web应用,我们称为web site(网站),特点是一些列静态内容的集合。看一个图示: 图中的服务器保持了一系列html脚本来响应用户的请求,可以说这个时期的web应用还是比较简单的

15个案例,玩转Web运维

拈花ヽ惹草 提交于 2019-12-19 19:19:26
大家好,我是阿铭。 自08年学习Linux运维知识后就走上了运维这条不归路; 我从09年入行运维到目前已经在运维领域摸爬滚打了10余年; 不知不觉我已经从当年的IT小白变身为现在的知识布道者。 这次我分享给大家的主题是“Web运维实战”。 我曾在技术交流群里做过一个小调查,大家给我的反馈是:不需要基础搭建,因为搭建文档网上一搜一“麻袋”;只需要实战,比如配置啊、调优啊、安全啊。 我当然要接受这些建议,以实战经验为重,当然一些基础的理论知识还是要有的,这主要是为了帮助一些零基础的朋友,因为有些知识点并不容易在网上汇总到。 首先我们来讨论什么是Web服务器呢?技术领域中的 WEB服务器,常见的有Apache、Nginx、IIS、Lighttpd、Tomcat、WebSphere、Weblogic、Jboss等,当然还有很多类似的软件,在这里我不再逐一列举。 技术浩瀚如海,我们的精力和时间有限。 为此,我将十余年的Web运维经验,取之精华,集结成15篇文章,以专栏 《阿铭Web运维实战》 的形式展现给大家。 从基础到进阶,从理论到实战,让你的Web领域事业更加开阔。主要包含这几个层面: 第一篇文章介绍HTTP协议相关的基础知识。 对于初学者来讲,由于不了解基础概念,学到后面难免会造成困惑。该篇章会讲述HTTP协议的发展历史、新老版本协议的特性和差异、HTTP协议相关概念解释等。

eclipse部署web项目至本地的tomcat但在webapps中找不到

ⅰ亾dé卋堺 提交于 2019-12-18 12:10:55
一、发现问题 在eclipse中新建Dynamic Web Project,配置好本地的tomcat并写好代码后选择Run on Server,但运行后发现在tomcat的安装目录下的webapps并没有出现所建立的工程名字。 二、验证 很明显项目并没有自动部署到Tomcat的Webapps中而是部署在了别的容器中。在内置浏览器中输入http://localhost:8080/webDemo/login.jsp可正常打开。但在外部浏览器上打开http://localhost:8080时确没有出现所期望的小猫画面。 三、原因 eclipse不像MyEclipse默认将项目部署到tomcat安装目录下的webapps中,而默认部署到工作目录下 的.metadata\.plugins\org.eclipse.wst.server.core\tmp1\wtpwebapps中,tmp1文件夹里面存放着该项目的信息。 四、修改 为了使项目默认部署到tomcat安装目录下的webapps中,show view—>servers—>找到需要修改的tomcat—>右击 ①停止eclipse内的Tomcat服务器(stop) ②删除该容器中部署的项目(add and remove) ③清除该容器相关数据(clean) ④打开tomcat的修改界面(open) ⑤找到servers location

超实用的Java web面试题

大兔子大兔子 提交于 2019-12-18 10:24:02
Java web面试题 想要更多面试题和学习资料的可以私聊联系我,大家一起交流学习! 1、Tomcat的优化经验 答:去掉对web.xml的监视,把jsp提前编辑成Servlet。 有富余物理内存的情况,加大tomcat使用的jvm的内存 2、HTTP请求的GET与POST方式的区别 答:servlet有良好的生存期的定义,包括加载和实例化、初始化、处理请求以及服务结束。这个生存期由javax.servlet.Servlet接口的init,service和destroy方法表达。 3、解释一下什么是servlet; 答:servlet有良好的生存期的定义,包括加载和实例化、初始化、处理请求以及服务结束。这个生存期由javax.servlet.Servlet接口的init,service和destroy方法表达。 4、说一说Servlet的生命周期? 答:servlet有良好的生存期的定义,包括加载和实例化、初始化、处理请求以及服务结束。这个生存期由javax.servlet.Servlet接口的init,service和destroy方法表达。 Servlet被服务器实例化后,容器运行其init方法,请求到达时运行其service方法,service方法自动派遣运行与请求对应的doXXX方法(doGet,doPost)等,当服务器决定将实例销毁的时候调用其destroy方法。

SpringBoot

大兔子大兔子 提交于 2019-12-18 03:37:38
Springboot 一.SpringBoot简介: Spring Boot可以让我们的spring应用变得更轻量化 。例如:你可以紧靠一个java类来运行你的spring应用。你也可以把你的应用打包成jar,并通过java -jar来运行你的Spring Web应用。 Spring Boot的主要优点 : 为Spring开发者更快入门;开箱即用,提供各种默认配置来简化项目配置;内嵌式容器简化Web项目;没有冗余代码生成和XML配置要求等。 二.写第一个SpringBoot项目“Hello World” 1.选择File---New---Project。 2.选择Spring初始化器-Spring Initializr,其他如果没有修改,选择默认即可,点击next。 3.这里我只修改了Group名称,其他根据实际情况修改,点击next。 4.这里选择Web,勾选Spring Web,点击next。 5.这里给项目命名,修改存储路径,点击Finish。 6.生成文件简介 pom.xml: <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi

Javaweb开发入门___1

南楼画角 提交于 2019-12-17 18:18:07
1.基本概念: 1.1web开发的相关知识: web即就是网页的意思,它用来表示Internet主机上供外界访问的资源,Internet上供外界访问的资源科分为: 静态web资源(Html):浏览器中供人浏览的数据是不变的; 动态web资源(jsp/servlet php asp):网页中供人浏览的数据是由程序提供的,不同的时间点,提供的数据是不相同的。 (在Java中动态web资源开发技术,统称为Javaweb) 1.2Web应用程序: web应用程序就是浏览器访问的程序,通常简称为web应用。一个web应用由多个静态web资源和动态web资源组成,如:html、css、js文件,Jsp文件、java程序、支持jar包、配置文件等等。Web应用开发好后,若想供外界访问,需要把web应用所在目录交给web服务器管理,这个过程称之为虚似目录的映射。 1.3Web发展史: 静态web:服务器会直接的读取Html的数据; 缺点: 用户浏览到的数据无法更新 使用JavaScript,VBScript可以让它动起来 动态web: 主要特征:会从服务器获取数据,web页面因人而变 优点: 可以实现真正的用户交互 1.4动态web的实现手段: PHP ASP:微软 IIS JSP/Servlet :B / S架构 ---》性能高;跨平台(使用字节码文件); 1.5一些web服务器: IIS(微软

Web服务器及性能优化

你。 提交于 2019-12-17 14:07:48
一、WEB服务器 1.1 概述: 1.2 区别: 1.2.1 Apache 1.2.2 Tomcat 1.2.3 Jboss 二、浏览器端,关于浏览器端优化 2.1 压缩源码和图片 2.2 选择合适的图片格式 2.3 合并静态资源 2.4 开启服务器端的Gzip压缩 2.5 使用CDN 2.6 延长静态资源缓存时间 2.7 把CSS放在页面头部,把JavaScript放在页面底部 三、服务端优化 3.1 HTML静态化 3.2 图片服务器分离 3.3 数据库集群、库表散列 3.4 缓存 3.5 镜像 3.6 负载均衡 3.6.1 硬件四层交换 3.6.2 软件四层交换 一、WEB服务器 1.1 概述: Apache是世界使用排名第一的Web服务器软件。它可以运行在几乎所有广泛使用的计算机平台上,由于其跨平台和安全性被广泛使用,是最流行的Web服务器端软件之一。 Apache与Tomcat都是Apache开源组织开发的用于处理HTTP服务的项目,两者都是免费的,都可以做为独立的Web服务器运行。 Apache是Web服务器而Tomcat是Java应用服务器。 1.2 区别: 1.2.1 Apache 是C语言实现的,专门用来提供HTTP服务。 特性:简单、速度快、性能稳定、可配置(代理) 1、主要用于解析静态文本,并发性能高,侧重于HTTP服务; 2、支持静态页(HTML)

HttpServletResquest与HttpServletResponse

﹥>﹥吖頭↗ 提交于 2019-12-16 17:46:44
在前面总结过,每当客户端给Web服务器发送一个http请求,web服务器就会针对每一次请求,分别创建一个用于代表请求的request对象、和代表响应的response对象。request和response对象就代表请求和响应,所以我们可以通过request对象获得请求相关的数据和操作。通过response对象进行对响应相关的数据封装和一些其他的操作。 一.HttpServletRequest与HttpServletResponse的实现类 我们会发现,HttpServletRequest与HttpServletResponse都是接口,那么它们在运行的时候的实现类是什么?是由谁负责实例化它们的实现类呢? 通过对上一篇文章的HelloWorldServlet进行调试,可以得到答案。HelloWorldServlet的部分代码的截图如下所示: 这张图是调试时获得的: 通过上面的图我们可以看到,HttpServletRequest与HttpServletResponse的对象req,resp的实际的类型是RequestFacade和ResponseFacade。这两个类都是org.apache.catalina.connector包下面的。也就是我使用的web服务器tomcat的两个类

spring项目中监听器作用-ContextLoaderListener

送分小仙女□ 提交于 2019-12-16 17:29:44
spring项目中监听器作用-ContextLo 1 spring框架的启动入口 ContextLoaderListener < context-param > < param-name >contextConfigLocation </ param-name > < param-value >contextConfigLocationValue > </ param-value > </ context-param > 作用:该元素用来声明应用范围(整个WEB项目)内的上下文初始化参数。 param-name 设定上下文的参数名称。必须是唯一名称 param-value 设定的参数名称的值 初始化过程: 在启动Web项目时,容器(比如Tomcat)会读web.xml配置文件中的两个节点<listener>和<contex-param>。 接着容器会创建一个ServletContext(上下文),应用范围内即整个WEB项目都能使用这个上下文。 接着容器会将读取到<context-param>转化为键值对,并交给ServletContext。 容器创建<listener></listener>中的类实例,即创建监听(备注:listener定义的类可以是自定义的类但必须需要继承ServletContextListener)。 在监听的类中会有一个contextInitialized

2020 年九大顶级 Java 框架

≯℡__Kan透↙ 提交于 2019-12-16 17:28:54
Java 创建于 1995 年,目前有 134861 个网站使用 Java,如 ESPN、SnapDeal、阿里巴巴等。在 24 年的发展历程中,Java 已经证明自己是用于自定义软件开发的顶级通用编程语言。 Java 广泛应用于科学教育、金融、法律和政府等行业。在下面的饼图中,您可以看到 Java 语言在各个行业中的使用情况。 这种开源编程语言是面向对象的,其目的是让应用程序开发人员编写的代码可以“一次编写,随处运行”(WORA)。这使得编译后的 Java 代码可以在每个支持 Java 的平台上运行。 该编程语言的最新版本 Java 13 于 2019 年 9 月发布。根据 TOIBE 排行榜(根据排名最高的 25 个搜索引擎计算),Java 排在第一位。 以下是 2019 年 11 月和 2018 年 11 月各种编程语言的排名: Java 始终排在第一位,这使它成为有史以来最著名的软件编程语言之一。及时的更新和新版本发布使它成为一种充满活力的、有竞争力的编程语言。 仅仅为您的下一个 Web 应用程序开发项目选择这门语言是不够的。在做出正确的选择的同时,您还需要选择正确的 Java Web 框架。您是否知道如何为项目选择合适的 Java 框架? 毫无疑问,这并不容易,需要深入了解为特定行业的业务选择特定的 Java 框架进行软件开发的利弊。 让我们详细研究一下 2020