收藏 分销(赏)

Web开发的一些实践.doc

上传人:xrp****65 文档编号:7429012 上传时间:2025-01-04 格式:DOC 页数:4 大小:28KB 下载积分:10 金币
下载 相关 举报
Web开发的一些实践.doc_第1页
第1页 / 共4页
Web开发的一些实践.doc_第2页
第2页 / 共4页


点击查看更多>>
资源描述
汽车坐垫_汽车坐垫那种好 本文由汽车坐垫网 提供整理 一直在探索如何实现WEB应用程序的模块化开发,因为模块化开发最大的好处就是,复用方便,维护方便。 最近设计了这样一个WEB应用程序结构: WEB应用只作为应用程序框架,不包含任何业务逻辑,应用程序框架的配置文件配置各个WEB应用程序模块的前缀URL。 配置文件类似: Xml代码 1 <modules> 2 <module base-url="/admin" module-name="moduleA"> 3 <module base-url="/" module-name="moduleB"> 4 </modules> 当然,还可能会包含配置模块的一些配置文件,因为在复用时,部署在不同服务器的模块配置可能不同,比如数据库配置 显而易见,这个应用程序框架一定至少是一个MVC框架,因为它要负责请求的转发。 这样这个WEB应用程序就是完全可配置的,因为这个WEB应用程序不包含任何业务逻辑,如果没有配置模块,将无法处理任何访问请求。 包含业务逻辑的WEB应用模块应自包含响应请求的程序,和URL影射表,以及其他相关资源,如图片,等。这点有两种做法,一种是通过配置文件,一种就是通过Java注解(annotation) 既然各个模块是可以自由组合部署的,当然Jar Hell的问题是不应出现的。 所有模块的Jar程序均部署在一个统一的网络位置上,这样任何一个应用服务器只需要更改配置文件,就可以立刻改变这台应用服务器所实现的功能。 希望听听对模块化WEB开发感兴趣的朋友的想法。 关于这个结构的实践: JIOPi提供了支持模块化的ClassLoader,既可以让程序从同一个网络位置上加载Java程序和资源文件,并解决模块间的Jar Hell问题。 MVC部分当然也是这个结构中最为关键的一个部分,因为全靠MVC框架来识别和分发请求。但目前所有MVC框架都是使用 ContextClassloader来加载相应程序,因此,这里是最麻烦的,因为要用JIOPi的ClassLoader来代替 ContextClassLoader,从而可以加载没有部署在WEB应用程序框架中的各个模块中的程序和资源。我在我的项目中先写了一个简单的MVC来 进行了实践,不过由于临时写的MVC系统比较薄弱,虽然统一位置部署和模块化部分运作正常,但也丢失了使用经典MVC框架的很多开发便利性。 另一个实验:使用Nutz的MVC Nutz的MVC提供了一个易用但完善的MVC方案,这两天对Nutz的源码做了少量修改以整合JIOPi,并做了一个简单的WEB应用程序模 块,可以用来展示这个模块化WEB应用程序框架的部分特性,有兴趣的朋友可以下载附件。如果你对Nutz的MVC比较熟悉,就会知道,开发方式与Nutz MVC完全一致,唯一的不同就是,业务逻辑相关的资源没有部署在WEB应用中,而是可以通过在WEB应用(框架)中进行配置加载。 一直在探索如何实现WEB应用程序的模块化开发,因为模块化开发最大的好处就是,复用方便,维护方便。 最近设计了这样一个WEB应用程序结构: WEB应用只作为应用程序框架,不包含任何业务逻辑,应用程序框架的配置文件配置各个WEB应用程序模块的前缀URL。 配置文件类似: Xml代码 1 <modules> 2 <module base-url="/admin" module-name="moduleA"> 3 <module base-url="/" module-name="moduleB"> 4 </modules> 当然,还可能会包含配置模块的一些配置文件,因为在复用时,部署在不同服务器的模块配置可能不同,比如数据库配置 显而易见,这个应用程序框架一定至少是一个MVC框架,因为它要负责请求的转发。 这样这个WEB应用程序就是完全可配置的,因为这个WEB应用程序不包含任何业务逻辑,如果没有配置模块,将无法处理任何访问请求。 包含业务逻辑的WEB应用模块应自包含响应请求的程序,和URL影射表,以及其他相关资源,如图片,等。这点有两种做法,一种是通过配置文件,一种就是通过Java注解(annotation) 既然各个模块是可以自由组合部署的,当然Jar Hell的问题是不应出现的。 所有模块的Jar程序均部署在一个统一的网络位置上,这样任何一个应用服务器只需要更改配置文件,就可以立刻改变这台应用服务器所实现的功能。 希望听听对模块化WEB开发感兴趣的朋友的想法。 关于这个结构的实践: JIOPi提供了支持模块化的ClassLoader,既可以让程序从同一个网络位置上加载Java程序和资源文件,并解决模块间的Jar Hell问题。 MVC部分当然也是这个结构中最为关键的一个部分,因为全靠MVC框架来识别和分发请求。但目前所有MVC框架都是使用 ContextClassloader来加载相应程序,因此,这里是最麻烦的,因为要用JIOPi的ClassLoader来代替 ContextClassLoader,从而可以加载没有部署在WEB应用程序框架中的各个模块中的程序和资源。我在我的项目中先写了一个简单的MVC来 进行了实践,不过由于临时写的MVC系统比较薄弱,虽然统一位置部署和模块化部分运作正常,但也丢失了使用经典MVC框架的很多开发便利性。 另一个实验:使用Nutz的MVC Nutz的MVC提供了一个易用但完善的MVC方案,这两天对Nutz的源码做了少量修改以整合JIOPi,并做了一个简单的WEB应用程序模 块,可以用来展示这个模块化WEB应用程序框架的部分特性,有兴趣的朋友可以下载附件。如果你对Nutz的MVC比较熟悉,就会知道,开发方式与Nutz MVC完全一致,唯一的不同就是,业务逻辑相关的资源没有部署在WEB应用中,而是可以通过在WEB应用(框架)中进行配置加载。 一直在探索如何实现WEB应用程序的模块化开发,因为模块化开发最大的好处就是,复用方便,维护方便。 最近设计了这样一个WEB应用程序结构: WEB应用只作为应用程序框架,不包含任何业务逻辑,应用程序框架的配置文件配置各个WEB应用程序模块的前缀URL。 配置文件类似: Xml代码 1 <modules> 2 <module base-url="/admin" module-name="moduleA"> 3 <module base-url="/" module-name="moduleB"> 4 </modules> 当然,还可能会包含配置模块的一些配置文件,因为在复用时,部署在不同服务器的模块配置可能不同,比如数据库配置 显而易见,这个应用程序框架一定至少是一个MVC框架,因为它要负责请求的转发。 这样这个WEB应用程序就是完全可配置的,因为这个WEB应用程序不包含任何业务逻辑,如果没有配置模块,将无法处理任何访问请求。 包含业务逻辑的WEB应用模块应自包含响应请求的程序,和URL影射表,以及其他相关资源,如图片,等。这点有两种做法,一种是通过配置文件,一种就是通过Java注解(annotation) 既然各个模块是可以自由组合部署的,当然Jar Hell的问题是不应出现的。 所有模块的Jar程序均部署在一个统一的网络位置上,这样任何一个应用服务器只需要更改配置文件,就可以立刻改变这台应用服务器所实现的功能。 希望听听对模块化WEB开发感兴趣的朋友的想法。 关于这个结构的实践: JIOPi提供了支持模块化的ClassLoader,既可以让程序从同一个网络位置上加载Java程序和资源文件,并解决模块间的Jar Hell问题。 MVC部分当然也是这个结构中最为关键的一个部分,因为全靠MVC框架来识别和分发请求。但目前所有MVC框架都是使用 ContextClassloader来加载相应程序,因此,这里是最麻烦的,因为要用JIOPi的ClassLoader来代替 ContextClassLoader,从而可以加载没有部署在WEB应用程序框架中的各个模块中的程序和资源。我在我的项目中先写了一个简单的MVC来 进行了实践,不过由于临时写的MVC系统比较薄弱,虽然统一位置部署和模块化部分运作正常,但也丢失了使用经典MVC框架的很多开发便利性。 另一个实验:使用Nutz的MVC Nutz的MVC提供了一个易用但完善的MVC方案,这两天对Nutz的源码做了少量修改以整合JIOPi,并做了一个简单的WEB应用程序模 块,可以用来展示这个模块化WEB应用程序框架的部分特性,有兴趣的朋友可以下载附件。如果你对Nutz的MVC比较熟悉,就会知道,开发方式与Nutz MVC完全一致,唯一的不同就是,业务逻辑相关的资源没有部署在WEB应用中,而是可以通过在WEB应用(框架)中进行配置加载。 这里介绍2011年最热卖汽车坐垫十大品牌,淘宝网汽车坐垫,汽车坐垫价格,淘宝网汽车坐垫价格,淘宝网汽车坐垫十大品牌,,淘宝网汽车坐垫促销,淘宝网汽车坐垫排行榜。
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 应用文书 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服