三九宝宝网宝宝教育智力培养

简述一下Java中的web容器举几个例子也行

03月18日 编辑 39baobao.com

[去参加java web开发的面试需要具备那些知识点请说的详细一些谢]Ø 熟练掌握Java面向对象编程语言,有良好的编码习惯 Ø 熟练使用Oracle 10g、SqlServer、MySql数据库,熟悉存储过程、视图、触发器等 Ø 熟练使用struts1.x、struts2.x、Sprin...+阅读

目前市场上常用的开源Java Web容器有Tomcat、Resin和Jetty。其中Resin从V3.0后需要购买才能用于商业目的,而其他两种则是纯开源的。可以分别从他们的网站上下载最新的二进制包和源代码。

作为Web容器,需要承受较高的访问量,能够同时响应不同用户的请求,能够在恶劣环境下保持较高的稳定性和健壮性。在HTTP服务器领域,Apache HTTPD的效率是最高的,也是最为稳定的,但它只能处理静态页面的请求,如果需要支持动态页面请求,则必须安装相应的插件,比如mod_perl可以处理Perl脚本,mod_python可以处理Python脚本。

上面说明的三中Web容器,都是使用Java编写的HTTP服务器,当然他们都可以嵌到Apache中使用,也可以独立使用。分析它们处理客户请求的方法有助于了解Java多线程和线程池的实现方法,为设计强大的多线程服务器打好基础。

Tomcat是使用最广的Java Web容器,功能强大,可扩展性强。最新版本的Tomcat(5.5.17)为了提高响应速度和效率,使用了Apache Portable Runtime(APR)作为最底层,使用了APR中包含Socket、缓冲池等多种技术,性能也提高了。APR也是Apache HTTPD的最底层。可想而知,同属于ASF(Apache Software Foundation)中的成员,互补互用的情况还是很多的,虽然使用了不同的开发语言。

Tomcat 的线程池位于tomcat-util.jar文件中,包含了两种线程池方案。方案一:使用APR的Pool技术,使用了JNI;方案二:使用Java实现的ThreadPool。这里说明的是第二种。如果想了解APR的Pool技术,可以查看APR的源代码。

ThreadPool默认创建了5个线程,保存在一个200维的线程数组中,创建时就启动了这些线程,当然在没有请求时,它们都处理“等待”状态(其实就是一个while循环,不停的等待notify)。如果有请求时,空闲线程会被唤醒执行用户的请求。

具体的请求过程是: 服务启动时,创建一个一维线程数组(maxThread=200个),并创建空闲线程(minSpareThreads=5个)随时等待用户请求。 当有用户请求时,调用 threadpool.runIt(ThreadPoolRunnable)方法,将一个需要执行的实例传给ThreadPool中。其中用户需要执行的实例必须实现ThreadPoolRunnable接口。 ThreadPool首先查找空闲的线程,如果有则用它运行要执行ThreadPoolRunnable;如果没有空闲线程并且没有超过maxThreads,就一次性创建minSpareThreads个空闲线程;如果已经超过了maxThreads了,就等待空闲线程了。总之,要找到空闲的线程,以便用它执行实例。找到后,将该线程从线程数组中移走。 接着唤醒已经找到的空闲线程,用它运行执行实例(ThreadPoolRunnable)。 运行完ThreadPoolRunnable后,就将该线程重新放到线程数组中,作为空闲线程供后续使用。

由此可以看出,Tomcat的线程池实现是比较简单的,ThreadPool.java也只有840行代码。用一个一维数组保存空闲的线程,每次以一个较小步伐(5个)创建空闲线程并放到线程池中。使用时从数组中移走空闲的线程,用完后,再“归还”给线程池。

java jSon实例编写

是这么个过程

1、在页面用js发出个ajax请求,请求类型最好写成json,建议使用jquery的ajax方法,省事。请求的路径要配在web.xml中

2、这个请求路径制定的是一个servlet,就是一个java类,继承自httpservlet。这个servlet里可以通过request对象获取到输入参数,根据输入参数和自己具体的逻辑拼出个字符串,当然是json格式的。然后输出。这个不会写说明你需要补一补java web开发的基础知识。

3、在页面的ajax请求的success方法中,直接可以获取到返回的json对象,然后就根据你的json格式处理吧。 $.ajax({ url: 'ajax/test',//这个是servlet请求路径 success: function(data) { //data就是servlet输出的json格式字符串,这里会自动转化为json对象 alert('Load was performed.'); } });

java编程实例

我是Java初学者,我看了你的问题后想了很久终于把它做出来了,你看看吧,方法不是很好,但能满足你的要求: import java.util.Scanner; public class Check2{ int t; char[] chs = new char[500]; //输入的句子不能超过500个字符 Check2() { String str; Scanner sc = new Scanner(System.in); System.out.println("请输入字符串(输入的字符串不能超过500个字符):"); str = sc.nextLine(); t=str.length(); for (int i = 0; i < t; i ++) { chs[i] = str.charAt(i); //将输入的字符串装入数组 } } } class FuZhi{ char[] letter=new char[52]; //将52个字母(含大小写)装入数组 FuZhi(){ char p; int i=0,j=26; for(p='A';p<='Z';p++){ letter[i]=p; //这句刚才写掉了,加上去后程序就完整了 i++; //将A-Z装入数组 } for(p='a';p<='z';p++){ letter[j]=p; //将a-z装入数组,并且从数组的第26个开始装入(letter[0]-letter[25]已被装入了字母) j++; } } } class display{ public static void main(String[] args){ char temp; int t; int[] n= new int [52]; //用于统计每个字符出现的次数 Check2 k =new Check2(); FuZhi m=new FuZhi(); for(int j=0;j<52;j++){ t=0; //令t为0,,并且使上一个字母统计完成后 //将其再次初始化(如A统计完成后,当程序统计B出现的次数时,使B的初始次数为0) for(int i=0;i

Java Web开发实战1200例第Ⅰ卷定价多少?有什么内容

Java Web开发实战1200例(第Ⅰ卷) 作者:卢瀚、王春斌 --------------------------------------------------------------------------------图书详细信息:ISBN:9787302243571定价:96元印次:1-1装帧:平装印刷日期:212-13--------------------------------------------------------------------------------图书简介:《Java Web开发实战1200例》包括第I卷、第II卷共计1200个例子,本书是第I卷,共计600个例子。本书以开发人员在项目开发中经常遇到的问题和必须掌握的技术为中心,说明了应用Java Web进行程序开发的各个方面的知识和技巧,主要包括Java Web编程基础、文件操作管理、图形图像与多媒体技术、窗体应用技术、JSP操作Word与Excel等。全书分6篇23章,共计600个实例和600个经验技巧。每个实例都是经过作者精心筛选的,具有很强的实用性,其中一些实例是开发人员难于寻觅的解决方案。

本书两卷共计1200个例子,包括了开发中各个方面最常用的实例,是目前市场上实例最全面的开发类图书;本书实例来源于多位工程师的多年积累,具有很强的实用性。本书附带有配套DVD光盘,光盘中提供有部分实例的视频和大部分源代码,读者稍加修改即可应用。本书适合Java Web的初学者,如高校学生、求职人员作为练习、速查、学习使用,也适合Java Web程序员参考、查阅。...

以下为关联文档:

基于java web的图书管理系统的设计与实现的开题报告怎么写原发布者:朝朝暮暮歌题目基于JavaWeb的图书管理系统的设计与实现指导老师******专业班级姓名*******学号*****年月*日摘要:计算机信息处理系统的引进已彻底改变了许多系统的经...

体育大学比较好点的请例举几个体育大学全国排名。供你参考排名 校名 1 武汉体育学院 2 北京体育大学 3 上海体育学院 4 成都体育学院 5 广州体育学院 6 沈阳体育学院 7 西安体育学院 8 天津体育学院 9 首...

举几个信息管理的例子MIS 一、定义 MIS(Management Information System)即管理信息系统,是一个由人、计算机及其他外围设备等组成的能进行信息的收集、传递、存贮、加工、维护和使用的系统。其主...

如何做用java做基于web的学生成绩管理系统Java jdk , Tomcat , mysql 或者其他的数据库 ,数据库管理工具(Navicate for mysql 等), myeclipse(尽量最新版本) 这些软件尽量为最新的 。 Tomcat配置java jdk /bin下的 JAVA_HO...

线程在Java Web项目中有哪些应用首先对java的线程类Thread来进行说明: Thread是针对是java其本身所具有的,但并不能说其没有调用操作系统,其最底层的时间片调度是按照操作系统来执行的。 Thread下可以创建Thre...

Java在怎样在web应用的原来有种技术叫 java Aplte ,这是一种java程序 当客户端电脑装载了jvm(java虚拟机)游览器就可以在页面中调用这种java程序,现在很少用了。更多的是JavaEE javaEE包括很多,jsp、...

java编程中的框架都有什么?能系统的给我介绍一下吗MVC: (模型-视图-控制器,主要负责流程控制) Struts 1.x WebWork Struts 2.0 O/R Mapping: (对象/关系 映射,主要负责持久化) Hibernate iBATIS 另外还有一个轻量级框架是必须要提的,...

Java Web开发实战1200例第Ⅰ卷定价多少Java Web开发实战1200例第Ⅰ卷定价多少,学习Java Web买什么书看比较好:Java Web开发实战1200例(第Ⅰ卷) 作者:卢瀚、王春斌 --------------------------------------------------...

急!求几个理科出身的成功管理者的例子急!求几个理科出身的成功管理者的例子,成功的管理者:在传媒领域,他轻松自如地舞动着研究与运营的双节棍。 他出版过四本深受行业人士追捧的传媒研究专著,现任两所重点大学的兼职...

推荐阅读
图文推荐