日期:2014-05-17 浏览次数:20493 次
│ .project │ index.php │ webconf.php │ ├─WEB-INF │ ├─lib │ │ └─cn │ │ └─iamsese │ │ └─core │ ├─config │ │ dbconf.php │ │ │ └─classes │ └─vb2005xu │ └─sinlet │ ├─service -- 这里是逻辑层的代码 │ │ │ IPersonService.php -- 服务接口 │ │ │ │ │ ├─impl │ │ │ PersonServiceImpl.php -- 服务实现 │ │ │ │ │ └─bo │ │ Person.php -- 业务对象 │ │ PersonManager.php -- │ │ PersonRecord.php -- 这个由DAO层来实现 │ │ │ ├─ui │ ├─exception │ └─dao │ PersonRecordDaoImpl.php │ ├─META-INF │ MANIFEST.MF │ ├─admin ├─.settings │ org.eclipse.php.core.projectOptions.prefs │ └─.cache
<?php /** *文件名称: /myworkfolw/webconf.php *编码类型: UTF-8 *开发时间: 2008 下午11:43:45 *开发者: 许消寒 [iamses.cn] *版权所有者: 许消寒[iamses.cn] * *功能描述: * 应用的服务环境配置参数,因为模拟的是JAVA Web应用的目录格式,所以要在此文件中 *进行必要的常量声明,从而固定系统的访问路径. * *此文件名称不能改变的,最好作为设置成只读 */ /** * 这里滚翻一下语法,凡是系统定义的常量 一律以单词第一个字母大写 * 多个单词使用下划线加单词首字母大写的格式来定义变量, * 不能使用-来作为变量分隔符号,后面要用到它 * */ //返回当前文件所在的目录路径,取得的值后面不带/或者\符号 define("Web_Root",dirname(realpath(__FILE__))) ; //定义系统库所在路径 define("Lib_Path", Web_Root . "/WEB-INF/lib/") ; //定义用户库所在路径 define("Class_Path", Web_Root . "/WEB-INF/classes/") ; //定义配置文件所在路径 -- 存放用户定义的配置文件所在地 define("Config_Path", Web_Root . "/WEB-INF/conf/") ; echo Web_Root ; //测试使用 //定义常用的一些方法,比如文件,模块,配置文件的加载的一些方法 /** * 加载一个文件,实际上是对require_once的封装 * 并加了做了错误处理功能,这里仅仅是一个简单的功能 * 在系统核心中应该扩充这个函数 * * @param String $file */ function LoadFile($file){ require_once $file; } /** * 加载用户库所在路径下的文件 * * @param String $file */ function LoadUserClassFile($file){ $file = Class_Path . $file ; LoadFile($file); } /** * 加载系统库所在路径下的文件 * * @param String $file */ function LoadLibFile($file){ $file = Lib_Path . $file ; LoadFile($file); } ?>
<?php /** *文件名称: /myworkfolw/index.php *编码类型: UTF-8 *开发时间: 2008 下午11:38:38 *开发者: 许消寒 [iamses.cn] *版权所有者: 许消寒[iamses.cn] * *功能描述: * 加载常用的配置参数,作为应用的单一入口 * */ //加载环境配置文件: webconf.php require_once 'webconf.php'; LoadUserClassFile("vb2005xu/sinlet/service/IPersonService.php"); //##################################################################################### //################以下代码纯属测试使用,正式开发时这个应该放到UI层的Action中封装使用############### /** * 返回 组员信息管理服务接口的实现对象 * 应该是由组件自动封装的,通过配置文件.在JAVA中这一般是使用IOC来封装的 * * @return IPersonService */ function getPersonService(){ LoadUserClassFile("vb2005xu/sinlet/service/impl/PersonServiceImpl.php"); LoadUserClassFile("/vb2005xu/sinlet/dao/PersonRecordDaoImpl.php"); $personService = new PersonServiceImpl(); //创建接口实现类的实例 $personManager = new PersonManager(); $personService->setManager($personManager); $personRecord = new PersonRecordDaoImpl(); $personManager->setRecorder($personRecord); //这里因为传递的都是引用,而且使用的是PHP5代码,所以无需使用&来表示传递引用值 return $personService ; } $personService = getPersonService(); echo "<br/>" ; $personService->addPerson(""); echo "<br/>" ; $personService->delPerson(""); echo "<br/>" ; $personSe