web容器

JavaWeb面试题(转)

喜你入骨 提交于 2019-12-04 04:25:16
1、Tomcat的优化经验 答:去掉对web.xml的监视,把JSP提前编辑成Servlet;有富余物理内存的情况下,加大Tomcat使用的 JVM 内存。 2、什么是Servlet? 答:可以从两个方面去看Servlet: a、API:有一个接口servlet,它是servlet规范中定义的用来处理客户端请求的程序需要实现的顶级接口。 b、组件:服务器端用来处理客户端请求的组件,需要在web.xml文件中进行配置。 3、Servlet的生命周期,并说出Servlet和CGI的区别? 答:servlet有良好的生存期的定义,包括加载和实例化、初始化、处理请求以及服务结束。 这个生存期由 java x.servlet.servlet接口中的init、service、destroy方法表达。 web容器加载servlet,生命周期开始。通过调用servlet的init()方法进行servlet的初始化。通过调用service()方法实现 根据请求的不同调用不同的do**()方法。结束服务,web容器调用servlet的destroy()方法。 区别: Servlet处于服务器进程中,它通过多线程运行service()方法,一个实例可以服务于多个请求,并且实例一般不会被销毁;而 CGI对每个请求都产生一个新的进程,服务完成后就销毁,所有效率低于Servlet。 4

java web中各种context的关系

China☆狼群 提交于 2019-12-04 04:24:02
我举得这篇文章解决了我的很多疑惑,理清了我以前不太清楚的Context关系,读懂这篇文章很有助于理解源码, 原文链接在这里: https://www.jianshu.com/p/2537e2fec546 我把它转载在自己博客里,害怕以后找不到,原文如下 网上博客中看到一句话,很形容的描绘了web程序和上下文的关系,这里引用一下来说明:如果对“上下文”不太了解的,我这边说下,程序里面所谓的“上下文”就是程序的执行环境,打个比方:你有家吧?如果家都没有就别学编程了,租的也行啊!你就相当于web程序,家就相当于web程序的上下文,你可以在家里放东西,也可以取东西,你的衣食住行都依赖这个家,这个家就是你生活的上下文环境。 该博客地址: Spring和SpringMVC配置中父子WebApplicationContext的关系 Spring启动过程 第一步:  首先,对于一个web应用,其部署在web容器中,web容器提供其一个全局的上下文环境,这个上下文就是 ServletContext ,其为后面的spring IoC容器提供宿主环境; 第二步:  其次,在web.xml中会提供有contextLoaderListener。在web容器启动时,会触发容器初始化事件,此时contextLoaderListener会监听到这个事件,其contextInitialized方法会被调用

一起学Spring之Web基础篇

狂风中的少年 提交于 2019-12-04 01:41:46
概述 在日常的开发中Web项目集成Spring框架,已经越来越重要,而Spring框架已经成为web开发的主流框架之一。本文主要讲解Java开发Web项目集成Spring框架的简单使用,以及使用Spring和不使用Spring框架,两者之间的差异。 仅供学习分享使用,如有不足之处,还请指正。 页面访问流程图 本示例的页面访问流程图如下所示: 不使用Spring框架的开发流程 步骤如下: 1. 新增Service和Dao对应的类及接口实现 如下所示:在Service中对Dao进行了强关联 1 package com.hex.Dao; 2 3 /** 4 * 学生Dao 5 * @author Administrator 6 * 7 */ 8 public interface IStudentDao { 9 public String GetStudentById(int id); 10 } 11 //////////////////////////////////////// 12 package com.hex.Dao; 13 14 /** 15 * 学生Dao 16 * @author Administrator 17 * 18 */ 19 public class StudentDaoImpl implements IStudentDao { 20 21 /** 22 *

基于WEB的高校学生考勤管理信息系统设计与实现(笔记6)

眉间皱痕 提交于 2019-12-04 01:29:41
一、基本信息 标题:基于WEB的高校学生考勤管理信息系统设计与实现 时间:2014 来源:电子科技大学 关键字:考勤;评教;WEB;JavaEE; 二、研究内容 主要介绍一套WEB工作模式设计的高校学生考勤管理信息系统。通过前期可行性分析和详细的需求分析后,确定本系统实现的主要功能。针对本人在日常工作中需要涉及和处理的师生交流、请假管理、考勤管理等学生教学管理方面的相关工作信息管理,本人设计出相应的功能模块实现对相关数据的统计分析和处理,将原先由辅导员负责的学生请假、考勤等学生管理工作,由教务处负责课表的排定等工作、由教师负责的课程作业布置、学生上课点名等教学工作统一到学生考勤管理信息系统。在技术选择上,考虑到系统的稳定性、安全性和可靠性以及与现有软硬件资源的配套,本系统采用基于JavaEE平台开发的方式。系统页面展现使用 HTML、JavaScript、CSS 和 AJAX 技术,服务器端编程采用 JSP/Servlet技术。为保证系统的可维护性和代码模块的可重用性,在系统开发过程中引入主流的 SSH 框架。 通过使用针对学生的网上考勤管理系统,实现了学院所有部门的统一组织,统一管理,为各部门进行交流时提供了方便。系统可以规范教学管理,优化教风、学风,提高教育质量,以此来促进教学质量的提高。解决成都东软学院目前存在的实际问题,提高教辅、学生管理工作者的工作效率,减少中间处理环节

Spring-MVC

喜你入骨 提交于 2019-12-04 00:02:22
Spring MVC的介绍   Spring Web MVC是一种基于Java的实现了Web MVC设计模式的请求驱动类型的轻量级Web框架,   即使用了MVC架构模式的思想,将web层进行职责解耦,基于请求驱动指的就是使用请求-响应模型,   框架的目的就是帮助我们简化开发,Spring Web MVC也是要简化我们日常Web开发 MVC设计模式 MVC 是一种著名的设计模式,特别是在 Web 应用程序 领域。模式全都是关于将包含业务数据的模块与显示模块的视图解耦的。这是怎样发生的? 视图(例如,JSP 页面) 怎样能够与其模型(例如,包含数据的 JavaBean)解耦?记得这句格言么?一个层次的重定向几乎可以解决计算机业中的所有问题。确实,在模型和视图之间引入重定向层可以解决问题。此重定向层是控制器。 控制器将接收请求,执行更新模型的操作,然后通知视图关于模型更改的消息。 依赖于模型的状态并且依赖于请求的控制器可以决定要显示哪个视图。 Spring MVC框架的优势(特点) 1、清晰的角色划分:           前端控制器(DispatcherServlet)、           请求到处理器映射(HandlerMapping)、           处理器适配器(HandlerAdapter)、           视图解析器(ViewResolver)、      

C#开源项目

橙三吉。 提交于 2019-12-03 23:03:10
一、Ajax框架 Ajax.NET Professional (AjaxPro)是最先把AJAX技术在微软.NET环境下的实现的AJAX框架之一。它在客户端脚本之上创建代理类来调用服务器端的方法。 MagicAjax.NET是一款在ASP.NET下创建Web页面提供AJAX技术的框架。它使开发人员很容易把AJAX整合到他们的页面而不需要替换ASP.NET控件或自己写javascript脚本代码。 Anthem.NET是为ASP.NET开发环境提供的开源AJAX工具包,它可以运行于ASP.NET 1.1和2.0。 二、工作流(workflow) Workflow.Net是使用微软.Net技术基于wmfc标准的创建工作流引擎。 NetBPM是JBpm移植到.net平台下的一款开源工作流软件。NetBpm可以很容易和.Net应用程序集成在一起,可以创建,执行和管理工作流程序。 Bpm Tool支持将业务模型转换成软件模型。业务开发人员可以使用模型驱动的方法设计,实现,执行和跟踪业务流程。因此开发人员能够更容易的关注业务逻辑的变化。 其实微软自己的WPF做WorkFlow也很厉害。 三、文本编辑 FCKeditor是一款功能强大的开源在线文本编辑器(DHTML editor),它使你在web上可以使用类似微软Word 的桌面文本编辑器的许多强大功能

使用ASP.NET Core 3.x 构建 RESTful API - 1.开始

余生颓废 提交于 2019-12-03 22:21:17
以前写过ASP.NET Core 2.x的REST API文章,今年再更新一下到3.0版本。 预备知识:ASP.NET Core 和 C# 工具:Visual Studio 2019最新版( VSCode 、 VS for Mac ,Rider等也凑合), POSTMAN Web API Web API 通常是指“使用 HTTP 协议并通过网络调用的API”,由于它使用了 HTTP 协议,所以需要通过URI信息来指定端点。 API是 Application Programming Interface 的缩写,是软件的外部接口。也就是说,针对某个软件,人们可以知道它的外部功能,但并不知道(也不需要知道)它的内部运作细节,为了从外部调用某些功能,需要指定软件的调用规范等信息,这样的规范就是API。 所以Web API 就是一个 Web 系统,通过访问URI可以与其进行信息交互。 大多数的 Web API 并不是 RESTful API REST 一词是在 2000 年首次出现的,它是由Roy Fielding 博士在《架构风格以及基于网路的软件架构设计》这篇论文中提到的。他为REST风格的API制定了一套约束规范或者叫 架构风格 。 所以准确的说,只有符合了Roy Fielding 架构风格的Web API 才能称作是 RESTful API 。但是在实际开发中

构建Gradle范例项目之构建web项目

廉价感情. 提交于 2019-12-03 20:56:05
Gradle提供了开箱即用的插件,用来组装WAR文件和将web应用部署到本地Servlet容器中。Gradle对构建和运行web应用都提供了扩展性支持。这里我们学习使用两个web应用程序部署插件: War 和 Jetty 。 War插件扩展自Java插件 ,为web应用部署和组装War包添加了约定和支持。Jetty是一个流行的轻量级开源web容器,它通过将一个HTTP模块添加到应用中来提供一个嵌入式实现。Gradle的 Jetty插件扩展了War插件 ,为部署一个web应用到嵌入式容器和运行web应用提供了对应的任务。 War插件 我们之前提到过War插件扩展自Java插件。实际上,这意味着 你不需要在构建脚本中应用Java插件。它会自动由War插件引入 。 不过即便你也应用了Java插件,这也不会对你的项目带来其他影响 。应用插件是一个幂等操作,因为 某一个指定的插件只会执行一次 。当创建build.gradle文件中,使用插件只需要像这样: apply plugin: 'war' web应用默认约定的源代码目录是 src/main/webapp 。 另外,实现web应用所需要的类不可能完全是java标准api,很多可能是 第三方库 里的api。在运行构建之前,你需要确保声明了外部依赖。War插件引入了 两个新的依赖配置项 。例如,Servlet依赖使用到的配置项是

WebService教程详解(一)

扶醉桌前 提交于 2019-12-03 20:07:50
Web Services 可以将应用程序转换为网络应用程序。 通过使用 Web Services,您的应用程序可以向全世界发布信息,或提供某项功能。 Web Services 可以被其他应用程序使用。 通过 Web Services,您的会计部门的 Win 2k 服务器可以与 IT 供应商的 UNIX 服务器相连接。 基本的 Web Services 平台是 XML+HTTP。 Web services 使用 XML 来编解码数据,并使用 SOAP 来传输数据。 什么是webService WebService,顾名思义就是基于Web的服务。它使用Web(HTTP)方式,接收和响应外部系统的某种请求。从而实现远程调用. 1:从WebService的工作模式上理解的话,它跟普通的Web程序(比如ASP、JSP等)并没有本质的区别,都是基于HTTP传输协议的程序。 2:WebService所使用的数据均是基于XML格式的。目前标准的WebService在数据格式上主要采用SOAP协议。SOAP协议实际上就是一种基于XML编码规范的文本协议。 webService的技术支持 Web Service平台需要一套协议来实现分布式应用程序的创建。任何平台都有它的数据表示方法和类型系统。要实现互操作性,Web Service平台必须提供一套标准的类型系统,用于沟通不同平台

了解tomcat

社会主义新天地 提交于 2019-12-03 15:54:54
以Tomcat为例了解Servlet容器是如何工作的? 一个Web工程在Servlet容器中是如何启动的? Servlet容器如何解析你在web.xml中定义的Servlet? 用户的请求是如何被分配给指定的Servlet的? Servlet容器如何管理Servlet生命周期? 先从Servlet容器聊起 Servlet和Servlet容器,从名字上来猜,就想水和器皿,之所以独立出两个东西,完全是为了满足工业化生产,也就是说是为了解耦,通过标准接口来让这两个东西协作从而完成实际需求。 目前成熟的Servlet容器产品很多,像Jetty,Tomcat都是java web开发人员耳熟能详的。我们下面就以Tomcat为例来讲一下Servlet容器如何管理Servlet的。 从上图可以看出,Tomcat的容器分为四个等级,真正管理Servlet的是Context容器,可以看到,一个Context对应一个web工程,这在Tomcat配置文件里也可以很容易的发现这一点: <Context path="/projectOne " docBase="D:\projects\projectOne" reloadable="true" /> Servlet容器的启动过程 我们已经知道,一个Web项目对应一个Context容器,也就是Servlet运行时的Servlet容器