Re: 应用服务器是怎么写的?

oldwatch
一条叫java的鱼◎城内风光独好 2011-01-17 字数 18

拿java一行一行写呗

【 在 RosejQue (罗丝洁) 的大作中提到: 】

: 弱问一下 那个JBoss啊Spring啊Tomcat啊WebLogic啊都是用什么写的?要用到哪些东西?

Programming 编程技术
11 个回复
recoba
雷科巴-漂流 2011-01-17

spring不是应用服务器,是开发框架

应用服务器都是从  socket服务器开始写起,然后写 http服务,然后 jsp.....

【 在 RosejQue (罗丝洁) 的大作中提到: 】

: 弱问一下 那个JBoss啊Spring啊Tomcat啊WebLogic啊都是用什么写的?要用到哪些东西?

JulyClyde
我的月份又来了 2011-01-17

嗯,我想问一下,应用服务器怎么把jsp页面load进来的?

另外:一般说应用服务器都是ejb吧?jsp的好像不这么叫

【 在 recoba (雷科巴-漂流) 的大作中提到: 】

: spring不是应用服务器,是开发框架

: 应用服务器都是从  socket服务器开始写起,然后写 http服务,然后 jsp.....

wxstorm
企鹅 2011-01-17

jsp就是一个class

【 在 JulyClyde (信RFC1149得自由) 的大作中提到: 】

: 嗯,我想问一下,应用服务器怎么把jsp页面load进来的?

: 另外:一般说应用服务器都是ejb吧?jsp的好像不这么叫

oldwatch
一条叫java的鱼◎城内风光独好 2011-01-17

无非是url传进来,

然后根据url解析到web-app名称,根据web-app名称找到应用程序文件夹

再根据url的目录信息查到对应的jsp文件

判断是jsp之后,从头读一遍根据jsp生成java,然后编译java得class,

执行class得执行结果,结果走http送回去

【 在 JulyClyde (信RFC1149得自由) 的大作中提到: 】

: 嗯,我想问一下,应用服务器怎么把jsp页面load进来的?

: 另外:一般说应用服务器都是ejb吧?jsp的好像不这么叫

JulyClyde
我的月份又来了 2011-01-17

问题是怎么执行class的

不懂他们java啊。是不是JVM本身就有接口,可以指定文件名load一个class文件进来?

【 在 oldwatch (一条叫java的鱼◎谷歌将死,高墙早立) 的大作中提到: 】

: 无非是url传进来,

: 然后根据url解析到web-app名称,根据web-app名称找到应用程序文件夹

: 再根据url的目录信息查到对应的jsp文件

: ...................

KDr2
R2D2 2011-01-17

是啊, 用classloader把class给load进来, load进来的class是实现了某接口的,有些约定好了函数, 创建个实例调用这些约定好的函数就好了

【 在 JulyClyde (信RFC1149得自由) 的大作中提到: 】

: 问题是怎么执行class的

: 不懂他们java啊。是不是JVM本身就有接口,可以指定文件名load一个class文件进来?

JulyClyde
我的月份又来了 2011-01-17

好高级啊好高级

你看C语言就没这功能,还得调操作系统接口

【 在 KDr2 (R2D2) 的大作中提到: 】

: 是啊, 用classloader把class给load进来, load进来的class是实现了某接口的,有些约定好了函数, 创建个实例调用这些约定好的函数就好了

KDr2
R2D2 2011-01-17

c同样用途的不是有dlopen/dlsym么

【 在 JulyClyde (信RFC1149得自由) 的大作中提到: 】

: 好高级啊好高级

: 你看C语言就没这功能,还得调操作系统接口

JulyClyde
我的月份又来了 2011-01-17

那不是语言本身的功能啊

【 在 KDr2 (R2D2) 的大作中提到: 】

: c同样用途的不是有dlopen/dlsym么

hgoldfish
老鱼 2011-01-17

c语言如果不是因为操作系统平台众多,二进制可执行文件格式标准不统一,同样也可以做这个功能。

我记得DOS时代的WPS分为两部分,主程序是编辑环境。还有一个覆盖模块,里面包含字库、打印预览什么的。需要的时候主程序才把这部分载入。那时候可没有什么dlopen.LoadLibrary。

【 在 JulyClyde (信RFC1149得自由) 的大作中提到: 】

: 那不是语言本身的功能啊

JulyClyde
我的月份又来了 2011-01-18

DOS是一个充分开放的平台,甚至你可以认为DOS只是应用程序的一部分(类似于ucOS这类的概念)

单任务、无虚拟内存的OS也容易处理

【 在 hgoldfish (老鱼) 的大作中提到: 】

: c语言如果不是因为操作系统平台众多,二进制可执行文件格式标准不统一,同样也可以做这个功能。

: 我记得DOS时代的WPS分为两部分,主程序是编辑环境。还有一个覆盖模块,里面包含字库、打印预览什么的。需要的时候主程序才把这部分载入。那时候可没有什么dlopen.LoadLibrary。