??xml version="1.0" encoding="utf-8" standalone="yes"?> 有两U方案:(x) ==svn开启动===================== 创徏autoRunSVN.bat文gQ内Ҏ(gu)Q?o p=""> Cpp代码 sc create MySVNServer binpath= "\"C:\Program Files\Subversion\svnserve\svnserve\" --service -r H:\homerepos" displayname= "SVNService" depend= Tcpip start= auto pause sc create MySVNServer binpath= "\"J:\java\Subversion\bin\svnserve.exe" --service -r \"G:\svn repository\"" displayname= "SVNService" depend= Tcpip start= auto pause 注意之处Q?o p=""> Q?Qsc是windows自带的服务配|程序,MySVNServer 是服务的名称Q似乎没什么用?o p=""> Q?Q参数binPath表示svnserve可执行文件的安装路径Q由于\径中?Program Files"带有I格Q因此整个\径需要用双引号引h。而双引号本n是个Ҏ(gu)字符Q需要进行{义,因此在\径前后的两个双引号都需要写成\" ?o p=""> Q?Q?-service参数表示以windows服务的Ş式运行,--r指明svn repository的位|,service参数与r参数都作为binPath的一部分Q因此与svnserve.exe的\径一赯包含在一对双引号当中Q而这对双引号不需要进行{义?o p=""> Q?Qdisplayname表示在windows服务列表中显C的名字Q?nbsp;depend =Tcpip 表示svnserve服务的运行需要tcpip服务Qstart=auto表示开机后自动q行。安装服务后Qsvnserve要等下次开机时才会(x)自动q行?nbsp;Q?QbinPath的等号前面无I格Q等号后面有I格 displayname depend start也都一?o p=""> service前面?-Q不? Q而r前面? Q?Q若要卸载svn服务Q则执行 sc delete svnserve 卛_?nbsp; Q?Q从“sc”?#8220;auto”是在同一个命令scQ必d在同一行?o p=""> 创徏成功后,可以在运行中键入service.msc察看pȝ服务Q找到SVNService,查看q项服务的属性,可以使用Windows提供的界面操作SVNService服务了?/font> P.S. l本人实验,以上的SVN开启动Ҏ(gu)一直无法实玎ͼ׃不会(x)写批处理语句Q也不知道是哪里错,但网上很多地斚w是用q种Ҏ(gu)d?nbsp; 开启动。最后,只能重新找了一U新Ҏ(gu)Q虽然无法开启动Q但可以较方便实现多个服务进E和理多个文g夹,请各位自行选择?/strong> 创徏SVNService.bat文gQ内容如下(重作者版权,请勿删除作者信息)(j)Q?/font> @ECHO OFF ECHO *** 安装 Subversion 服务 *** ::====================================================================== :INPUT_SVC_NAME ::输入资源库信?br />
:INPUT_REPOS ::创徏服务 ::====================================================================== ::====================================================================== ::====================================================================== :SC_ERROR :SC_INV_PORT :END 其中SC create %svc_name% binPath= "\"E:\Subversion\bin\svnserve.exe\" --service -r \"%repos%\"" depend= Tcpip start= auto| find "1060:" >> NUL需要将binpath改ؓ(f)svnserve.exe所在\径,之后可以运行服务了?/font> 五、配|用户和权限原文出处Qhttp://blog.163.com/air-blue55/blog/static/9708657020105612454398/
* VisualSVN ServerQ安装更单、更直观Q?/strong>http://www.visualsvn.com/server/download/
* 传统的Subversion 服务器程序:(x)
一、准备工?br />
1、获?strong> Subversion 服务器程?br />
到官方网站(http://subversion.tigris.org/Q下载最新的服务器安装程序。目前最新的?.5版本Q具体下载地址在:(x)http://subversion.tigris.org/servlets/ProjectDocumentList?folderID=8100&expandFolder=8100&folderID=91
2、获?nbsp;TortoiseSVN 客户端程?br />
从官方网?nbsp;http://tortoisesvn.net/downloads 获取最新的 TortoiseSVN 。TortoiseSVN 是一个客L(fng)E序Q用来与 subvers 服务器端通讯。Subversion 自带一个客L(fng)E序 svn.exe ,?nbsp;TortoiseSVN 更好操作Q提高效率?br />
二、安装服务器端和客户?br />
安装 SubversionQ以下简USVNQ的服务器端和客L(fng)。下载下来的服务器端是个 zip 压羃包,直接解压~即可,比如我解压到E:\subversion 。客L(fng)安装文g是个 exe 可执行文Ӟ直接q行按提C安装即可,客户端安装完成后提示重启?br />
三、徏立版本库QRepositoryQ?br />
q行Subversion服务器需要首先要建立一个版本库QRepositoryQ。版本库可以看作是服务器上集中存攑֒理数据的地斏V?br />
开始徏立版本库。首先徏?nbsp;e:\svn I文件夹作ؓ(f)所有版本库的根目录。然后,q入命o(h)行ƈ切换?/strong>subversion的bin目录。输入如下命令:(x)
svnadmin create E:\svn\repos1
此命令在 E:\svn 下徏立一个版本库 repos1 。repos1 下面?x)自动生成一些文件夹和文件?br />
我们也可以?nbsp;TortoiseSVN 囑Ş化的完成q一步:(x)
先徏立空目录 E:\svn\repos1 Q注意一定是要空的。然后在 repos1 文g夹上“右键->TortoiseSVN->Create Repository here...”Q然后可以选择版本库模式,q里使用默认的FSFS卛_Q然后就创徏了一pd文g夹和文gQ同命o(h)行徏立的一栗?br />
四、运行独立服务器
此时 subversion 服务q没有开始,只是通过它的命o(h)建立了版本库。l在刚才的命令窗口输入:(x)
svnserve.exe --daemon
svnserve 会(x)在端?nbsp;3690 {待hQ?-daemonQ两个短横线Q选项告诉 svnserve 以守护进E方式运行,q样在手动终止之前不?x)退出。注意不要关闭命令行H口Q关闭窗口会(x)?nbsp;svnserve 停止?br />
Z验证svnserve正常工作Q用TortoiseSVN -> Repo-browser 来查看版本库。在弹出?nbsp;URL 对话框中输入Q?br />
svn://localhost/svn/repos1
?nbsp;OK 按钮后就可以看见 repos1 版本库的目录?wi)结构了Q只不过q时 repos1 是个I库?br />
你也可以使用--root选项讄根位|来限制服务器的讉K目录Q从而增加安全性和节约输入svnserve URL的时_(d)(x)
svnserve.exe --daemon --root drive:\path\to\repository
以前面的试作ؓ(f)例,svnserve 会(x)q行为:(x)
eg:
svnserve.exe --daemon --root e:\svn
然后TortoiseSVN中的版本库浏览器URL~减为:(x)
svn://localhost/repos1
::======================================================================
::作?nbsp; : Zealic
::版本 : 1.05
::功能 : 通过便快L(fng)方式安装 Subversion.
::最后更?: 2007-12-28
::======================================================================
::初始化环?br />
::======================================================================
::======================================================================
::创徏服务
::======================================================================
ECHO +++ 创徏资源库服?+++
ECHO 创徏pȝ服务Q这需要输入一些信?..
SET /P svc_name=误入服务名 :
::服务名不能ؓ(f)I?br />
if "%svc_name%" == "" (
ECHO 服务名不能ؓ(f)I,请重新输入?br />
GOTO INPUT_SVC_NAME
)
::查询服务是否存在Q通过查找输出是否存在错误Q?1060:"是发生错误是时输出的错误代码?br />
SC QUERY "%svc_name%" | find "1060:" >> NUL
IF %errorlevel% == 1 (
ECHO 服务 "%svc_name%" 已经存在Q请重新输入服务名?br />
GOTO INPUT_SVC_NAME
)
ECHO.
SET /P repos=误入资源库路径 :
ECHO.
ECHO (zhn)用以下信息创?Subversion 服务 :
ECHO 服务名称 : "%svc_name%"
ECHO 资源库\?: "%repos%"
ECHO 正在创徏服务...
SC create %svc_name% binPath= "\"E:\Subversion\bin\svnserve.exe\" --service -r \"%repos%\"" depend= Tcpip start= auto| find "1060:" >> NUL
ECHO.
IF %errorlevel% == 0 GOTO SC_ERROR
ECHO --- 创徏服务成功! ---
ECHO.
ECHO.
::生成操作批处理文?br />
::======================================================================
ECHO +++ 生成服务操作批处?+++
ECHO 服务操作批处理文件可以帮助?zhn)快速操作服务?br />
SET bat_delete=DELETE_%svc_name%.BAT
SET bat_start=START_%svc_name%.BAT
SET bat_stop=STOP_%svc_name%.BAT
ECHO 生成删除服务批处?"%bat_delete%" ...
::bat_delete
ECHO @ECHO OFF> %bat_delete%
ECHO NET STOP %svc_name%>> %bat_delete%
ECHO SC delete %svc_name%>> %bat_delete%
ECHO DEL %bat_start%>> %bat_delete%
ECHO DEL %bat_stop%>> %bat_delete%
ECHO DEL %bat_delete%>> %bat_delete%
ECHO PAUSE>> %bat_delete%
::bat_start
ECHO 生成q行服务批处?"%bat_start%" ...
ECHO @ECHO OFF> %bat_start%
ECHO NET START %svc_name%>> %bat_start%
ECHO PAUSE>> %bat_start%
::bat_stop
ECHO 生成停止服务批处?"%bat_stop%" ...
ECHO @ECHO OFF> %bat_stop%
ECHO NET STOP %svc_name%>> %bat_stop%
ECHO PAUSE>> %bat_stop%
ECHO.
ECHO --- 生成服务操作批处理成? ---
ECHO.
ECHO.
::Finish
::======================================================================
ECHO ### 所有操作成? ###
GOTO END
::错误D?br />
::======================================================================
:ENV_ERROR
ECHO --- 讄环境变量p|! ---
GOTO END
ECHO --- 创徏服务p|! ---
GOTO END
ECHO 无效的端口号Q请重新输入?br />
GOTO INPUT_SVC_PORT
PAUSE
用文本编辑器打开E:\svn\repos1\conf目录Q修?strong>svnserve.confQ?br />
:(x)
# password-db = passwd
改ؓ(f)Q?br />
password-db = passwd
卛_掉前面的 # 注释W,注意前面不能有空根{?/strong>
然后修改同目录的passwd文gQ增加一个帐P(x)
:(x)
[users]
# harry = harryssecret
# sally = sallyssecret
增加帐号Q?/strong>
[users]
#harry = harryssecret
#sally = sallyssecret
test = test
六、初始化导入
下面是我们的数据Q项目)(j)导入到这个版本库Q以后就q本库理我们的数据。我们的M改动都回被版本库记录下来Q甚x们自׃失、改错数据时版本库也能帮我们扑֛数据?br />
比如Q我?nbsp;d:\wwwroot 下有?nbsp;guestbook 文g夹,里面存放的是我编写的留言程序。在此文件夹?#8220;右键 -> TortoiseSVN -> Import...” Q在弹出对话框的“URL of repository”输入“svn://localhost/repos1/guestbook”。在“Import message”输入“导入整个留言?#8221;作ؓ(f)注释?br />
?nbsp;OK 后要求输入帐受我们在用户名和密码处都输入 test 。完成后 guestbook 中的内容全部导入C svn://localhost/svn/repos1/guestbook ?br />
我们看到?nbsp;e:\svn\repos1 没有M变化Q连?nbsp;guestbook 文g多w没有建立Q唯一的变化就是e:\svn\repos1定w变大了。实际上我们源guestbook中的内容已经导入 repos1 版本库了Q源 guestbook 文g夹可以删除了?br />
需要注意的是,q一步操作可以完全在另一台安装了 TortoiseSVN 的客h上进行。例如运行svnserve的主机的IP?33.96.121.22Q则URL部分输入的内容就?#8220;svn://133.96.
七、基本操作流E?br />
1、取出(check outQ?br />
取出版本库到一个工作拷贝:(x)
来到LI目录下Q比如在f分区建立一个空文g?nbsp;f:\work ?#8220;右键 -> SVN Checkout”。在“URL of repository”中输?#8220;svn://localhost/svn/repos1/guestbook”Q这h们就得到了一?nbsp;guestbook 中内容的工作拯?br />
2、存入(check inQ?提交QcommitQ?br />
在工作拷贝中作出修改q提交:(x)
?nbsp;guestbook 工作拯中随便打开一个文Ӟ作出修改Q然?#8220;右键 -> SVN Commit... ”。这h们就把修Ҏ(gu)交到了版本库Q版本库Ҏ(gu)情况存储我们提交的数据?br />
在修改过的文件上“右键 -> TortoiseSVN -> Show Log” Q可以看到对q个文g所有的提交。在不同?nbsp;revision 条目?#8220;右键 -> Compare with working copy”Q我们可以比较工作拷贝的文g和所?nbsp;revision 版本的区别?/p>
]]>
一、矿用考勤普遍存在的问?/strong>
二、艾Ҏ(gu)益矿用虹膜考勤机简?/span>
艄永益矿用虹膜考勤Zؓ(f)(zhn)解决一切烦(ch)|目前市场上广泛采用的卡QIC卡,频卡等问题无法解决替代性问题,而指UVh脸识别等生物识别技术,也因别精度不够,指纹Ҏ(gu)损伤、先天指U不清、下井h员面部因素、设备维护困隄问题不能满需要?br /> 而虹膜识别考勤pȝ可以从根本上杜绝公司考勤时有人替打卡现象Q手指和因矿井的外在因素影响Q而且识别率很高?br /> q且虹膜考勤pȝ有着以下几方面的优点Q?br /> 1?虹膜识别技术免接触Q不可以改Q安全性高Q?br /> 2?正常状态下的虹膜识别速度?U左叟?br /> 3?l计虹膜识别考勤数据快捷Q不需人工l计?br /> 4?产品先进Q虹膜n份识别技术是目前所有生物识别技术里安全性,唯一性最高的Z生物识别技术。用上已经非常方便可靠Q所以投资一步到位,操作单,使用寿命ѝ?/span>
我们为?zhn)提供最优质的服务,Ҏ(gu)(zhn)的具体要求Q与各种其他pȝl合Q比如智能卡Q,完全实现订制?/span>
三、配套考勤软g
考勤pȝ的目的是为实现员工考勤数据采集、数据统计和信息查询q程的自动化Q完善h事管理现代化Q方便员工上班报刎ͼ方便理人员l计、考核员工出勤情况Q方便管理部门查询、考核各部门出勤率Q准地掌握员工出勤情况Q有效地理、掌握h员流动情况,适用于机养I金融和各企事业单位?br />
考勤基本功能
1. 员工上下班的数据Q经考勤软g从门数据库采集Qؓ(f)原始考勤数据的来源?br />
2. l计Q统计系l将个h的信息进行过滤处理,只保留每天考勤记录Q然后按员工姓名、日期或其他分类方式q行l计Q生成各cL表?br />
3. 查询Q可Ҏ(gu)需要随时在查询pȝ查询各员工的上下班、出勤缺勤等情况Qƈ可随时打印出来?br />
4. 考勤理Q系l允许系l管理员q行pȝ讄。设|包括每ơ采集的有效旉D设|,q到、早退、旷工的旉讄{。如提前多少旉上班有效Q早退多少旉是旷工等。用户可以根据自q实际情况Q进行设|。可Ҏ(gu)公司的制度设定迟到、早退、旷工的条g?br />
5. 员工理Q每位员工都有较详细的信息,包括员工~号、部门、职位等?br />
6. 无h值守考勤Q记录Q何非法出入信息及(qing)囑փQ及(qing)时记录于机器盘上,断电(sh)仍可保证记录安全储存?/span>
男h=吃饭+ 睡觉+挣钱
?吃饭+ 睡觉
男h=?挣钱
?男h-挣钱
所以男Z挣钱{于猪?/p>
女h=吃饭+ 睡觉+花钱?br>?nbsp; =吃饭+ 睡觉。代入上式得Q?br>女h=?花钱。移得Q?br>女h-花钱=猪?br>l论Q女Z花钱的都是猪?/p>
lgQ?br>男hZ让女Z变成猪而挣钱!
女hZ让男Z变成猪而花?
写字楼里写字_(d)写字间中E序?br>E序人员写程序,又将E序换酒?br>酒醒只在屏前坐,酒醉q来屏下?br>酒醉酒醒日复日,屏前屏下q复q?br>但愿老死?sh)脑_(d)不愿鞠躬老板?br>奔驰宝马贵者趣Q公交自行程序员
别hW我太疯癫,我笑自己命太?br>但见满街漂亮妹,哪个归得E序?/p>
关闭标记被Rich Editorqo(h)掉了Q重新用bbcode贴一下:(x)
cluster的作用不是加速单个请求的Q是提高整体的负载能力的?/p>
要有敢于拼命的勇气!不会(x)的技术,难解的问题,都需要你用各U办法不择手D늚d成,d也好Q去抢也好。要准备好若q天熬通宵。篏掉十斤八斤是正常的?/p>
要有灉|处理的能力!Ҏ(gu)下要宽严l合Q技术上严,生活上宽。对上要把Q务量适当夸大Q给自己留有余地Q对客户要大事化,事化无Q尽可能接d?br />
要有l观全局的能力!掌握手下工作人员的各斚w能力Q根据项目开发紧张合理分配手下工作Q务,定充分的工作时_(d)严格(g)查工作完成情c(din)?br />
要有制定U律的实力!没有规矩Q不成方圆,Ҏ(gu)目开发组的实际情况,合理制定目l的开发纪律,而不能盲目的Ҏ(gu)惌Q不l合实际制定不符合实际的U律Q反而会(x)造成团队不合Q以?qing)难以实施的情况?/p>
鹦鹉华丽而聪明。但q种华丽只是温室里的华丽Q聪明只是哗众取宠的聪明Q鹦鹉鲜艳的毛只是Z博hƢ心Q,他最大的能耐就是重复别人的口舌。像鹦鹉一L(fng)人,只会(x)模仿和抄袭;他们…?/p>
坚决不用的第二种人——无法与人合作的荒野之狼
荒野之狼凭借自q敏捷凶猛常常单独行动Q它们无视同cȝ意见而离烦(ch)居,其是在捕猎和分享食物时更是如此。行“荒野之狼”的人,没有丝毫的团队精,他们…?/p>
坚决不用的第三种人——缺乏适应力的恐龙
恐龙庞大而凶猛,曄l治着整个地球Q但恐龙却有一个致命的q——缺乏适应力。面Ҏ(gu)的环境,恐龙不知所措、无法适应Q最l只能走向灭l。职Z的“恐龙h”,一有变化就惊慌失措Q他们无法适应…?/p>
坚决不用的第四种人——浪贚wq?/strong>
涓涓l流Q固然能汇成大江Q哗哗流_(d)同样能流C一L(fng)财富。像水一栯公司q员工Q成本意识极差,他们L…?/p>
坚决不用的第五种人——不愿沟通的贝类
贝类L紧闭着嘴巴、沉默不语,他们h、孤独、自我封闭,“贝cMh”相信沉默是金,他们紧闭双唇、不愿沟通,狭隘而^庸…?/p>
坚决不用的第六种人——不注重资讯汇集的白U?/strong>
白纸白白净净Q很是可爱,但它却不能给你提供Q何信息、给你Q何帮助。像白纸一L(fng)子里一片空白,他们对外界信息无动于P他们…?/p>
坚决不用的第七种人——没有礼貌的L(fng)
规则对于L(fng)来说如一U空文,霔R、野蛮、粗鲁和散O是他们的专利Q不守时Q不重他hQ说话带刺是她们的家怾饭,他们常凭自己心情的好恶Q意而ؓ(f)Q根本不在乎他h的喜怒及(qing)严?br />
坚决不用的第八种人——只?x)嫉妒的孤?/p>
孤猿两眼腥红Q生zd内心狭小的天地里Q既孤僻寂寞Q又嫉妒成性。“孤猿h”与“狼人”的相比Q不仅缺“自如”,而且~少“自信”,他们Lx别Z于自己。因此,他们…?/p>
坚决不用的第?ji)种人——没有知识的孩
职场“小孩”满于现状Q对待生zR工作不思进取。处处需要他人的照顾Q很阅Mc及(qing)参加各种zdQ懒散地龟羃在自q的天地里?/p>
坚决不用的第十种人——不重视健康的幽?/strong>
q灵阴森恐怖,来去匆匆Q它的出现绝不是好事Q因为厄q是它的“私生子”。职Z的“幽灵h”,一天到晚只知道工作Q忙忙碌。他们阴沉沉的脸上…?/p>
坚决不用的第十一Uh——过于慎重消极的岩石
岩石沉重而冷漠,孤傲且?zhn)观。像岩石一L(fng)人,必定是些(zhn)观消极的hQ他们在工作中缺乏热情,L消极和被动,很难抓住Z(x)Q同Ӟ他们…?/p>
坚决不用的第十二Uh——摇摆不定的墙头?/strong>
墙头草生长在墙上Q左֏|摇摆不定Q像墙头草一L(fng)Z来没有自q主见Q永q只?x)附和别人,其当企业内出现U争、生歧义时Q哪些势力大他们倒向哪一边,q煽风点火,一旦这方失势,他们又会(x)马上倒向另一辏V?/p>
坚决不用的第十三Uh——自我设限的家畜
循规y矩的家畜,亦步亦趋Q不赶越h一步,因ؓ(f)它们q一生预定了太多的“不可能”,自我N的h像q些家畜一P他们d为牢Q不肯追求成长,不肯…?/p>
拒绝q十三种人,企业׃(x)成长Q拒l成十三UhQh生就?x)有希望?br />
在企业管理中,我们能看C业坚决不用的十三Uh,相对作ؓ(f)企业的一名员?我们从中应该受到什么启发呢.
Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=745302
四、设|方法如下:(x)
?CATALINA_BASE/server/lib/目录下找到servlets-ssi.renametojar文g
这个文仉命名为servlets-ssi.jar
?CATALINA_BASE/conf/目录下找到web.xml文g
使用SSI Servlet删除在SSI servlet和servlet-mapping周围的注释?br /> 使用SSI filter删除在SSI filter和filter-mapping周围的注?
五、基本指?br /> 1、SSI指o(h)的语法格式如下:(x)
<!--#element [attribute=value] [attribute=value] ... -->
q些指o(h)以HTML注释的Ş式出玎ͼ所以如果你没有正确讄SSIQ浏览器?x)忽略这些指令。如果你正确讄了SSIQ这些指令会(x)被相应的l果替换?br /> 2、config
<!--#config timefmt="%B %Y" -->
config用来指定q回l客L(fng)览器的错误信息、日期和文g大小的格式?br /> 常用指o(h)Q?br /> <!--#config errmsg="自定义错误信?-->
<!--#config sizefmt="昄单位"-->
<!--#config timefmt="昄格式"-->
参数Q?br /> errmsg 自定义SSI执行错误信息Q可以ؓ(f)M你喜Ƣ的方式。?br /> sizefmt 文g大小昄方式Q默认ؓ(f)字节方式("bytes")可以改ؓ(f)千字节方?"abbrev")
timefmt 旉昄方式Q最灉|的配|属性。?br /> Eg:
<!--#config errmsg="服务器执行错误,误pȝ理员 yiho@126.comQ谢谢!"-->
<!--#fsize file="不存在的文g.htm"-->
以千字节方式昄文g大小
<!--#config sizefmt="abbrev"-->
<!--#fsizefile="news.htm"-->
以特定的旉格式昄旉
<!--#config timefmt="%Yq?%m?d?星期%W 北京旉%H:%M:%sQ?Yq已q去?j?今天?Yq的W?U个星?-->
<!--#echo var="DATE_LOCAL"--> 昄今天是星期几,几月,时区
<!--#config timefmt="今天%A, %B ,服务器时区是 %zQ是"-->
<!--#echo var="DATE_LOCAL"-->
3、echo
echo用来输出变量的倹{?
<!--#echo var="VARIABLE_NAME" -->
<!--#echo var="变量名称"-->
本文档名Uͼ(x)E序代码:
<!--#echo var="DOCUMENT_NAME"-->
现在旉Q程序代?
<!--#echo var="DATE_LOCAL"-->
你的IP地址是程序代?
<!--#echo var="REMOTE_ADDR"-->
4、exec
<!--#exec cmd="COMMOND" -->
exec用来执行命o(h)?某一外部E序的输出插入到面中。可插入CGIE序或者是常规应用E序的输入,q取决于使用的参数是cmdq是cgi?
<!--#exec cmd="文g名称"-->
<!--#exec cgi="文g名称"-->
<!--#exec cmd="文g名称"-->
<!--#exec cgi="文g名称"-->
参数Q?
cmd 常规应用E序
cgi CGI脚本E序
EgQ?
<!--#exec cmd="cat /etc/passwd"-->会(x)昄密码文g
<!--#exec cmd="dir /b"-->会(x)昄当前目录下文件列?
<!--#exec cgi="/cgi-bin/gb.cgi"-->会(x)执行CGIE序gb.cgi?
<!--#exec cgi="/cgi-bin/access_log.cgi"-->会(x)执行CGIE序access_log.cgi?
注意Q?
从上面的CZ可以看出Q这个指令相当方便,但是也存在安全问题?
止Ҏ(gu)Q?
QApacheQ将access.conf中的"Options Includes ExecCGI"q行代码删除Q?
Q在IIS中,要禁?#exec 命o(h)Q可修改 SSIExecDisable 元数据库Q?
5、flastmod
<!--#flastmod file="FILE_NAME" -->
flastmodq回FILE_NAME所代表的文件的最后修Ҏ(gu)间?
Eg:
<!--#flastmod file="news.htm"-->
当前目录下news.htm文g的最q更新日期插插入到当前页?
6、fsize
<!--#fsize file="FILE_NAME" -->
fsizeq回FILE_NAME所代表的文件的大小?
<!--#flastmod file="文g名称"-->
<!--#fsize file="文g名称"-->
参数Q?
file 指定包含文g相对于本文档的位|??info.txt 表示当前目录下的的info.txt文档
virtual 指定相对于服务器文档根目录的位置 ?/hoyi/info.txt 表示
注意Q?
文g名称必须带有扩展名?
Eg:
<!--#fsize file="news.htm"-->
当前目录下news.htm的文件大入到当前页?
7、include
<!--#include file="文g名称"-->
<!--#include virtual="文g名称"-->
include插入FILE_NAME所代表的文件的内容?
file 文g名是一个相对\径,该\径相对于使用 #include 指o(h)的文档所在的目录。被包含文g可以在同一U目录或其子目录中,但不能在上一U目录中。如表示当前目 录下的的nav_head.htm文档Q则为file="nav_head.htm"?
virtual 文g名是 Web 站点上的虚拟目录的完整\径。如表示相对于服务器文档根目录下hoyi目录下的nav_head.htm文gQ则为file="/hoyi/nav_head.htm"
参数Q?
file 指定包含文g相对于本文档的位|?
virtual 指定相对于服务器文档根目录的位置
注意Q?
1、文件名U必d有扩展名?
2、被包含的文件可以具有Q何文件扩展名Q我觉得直接使用htm扩展名最方便
8、printenv
<!--#printenv -->
printenvq回所有定义的变量的列表?
9、set
<!--#set var="VARIABLE_NAME" value="VARIABLE_VALUE" -->
set用来自定义变量。在SSI中有许多标准的变?如DATE_LOCAL)Q其中也包括对于CGIE序有效的环境变量?
10、if elif endif else
if elif endif else用来条g选择?
#if
作用Q?创徏可以改变数据的页面,q些数据Ҏ(gu)使用if语句时计的要求予以昄?
语法Q?E序代码:
<!--#if expr="$变量?"变量值A""-->
昄内容
<!--#elif expr="$变量?"变量值B""-->
昄内容
<!--#else-->
昄内容
<!--#endif"-->
Eg:
<!--#if expr="$SERVER_NAME="hoyi.zb169.net""-->
中华E搜网http://www.eshoo.com.cn
<!--#elif expr="$SERVER_NAME="linux.cqi.com.cn"" -->
中华E搜网http://www.eshoo.com.cn/bbs
<!--#else-->
中华E搜网http://www.eshoo.com.cn
<!--#endif"-->
注意Q?用于前面指o(h)中的反斜杠,是用来代换内部的引号Q以便它们不?x)被解释为结束表辑ּ。不可省略?
六、普通用?br /> 1、下面是一些比较常规的SSI的用法:(x)
最后修Ҏ(gu)?br /> 有两U方法:(x)
This file last modified <!--#flastmod file="ssi.shtml" -->
This file last modified <!--#echo var="LAST_MODIFIED" -->
包含一个footer
<!--#include virtual="/footer.html" -->
讄errmsg
<!--#config errmsg="[error message!]" -->
讄sizefmt
<!--#config sizefmt="bytes|abbrev" -->
执行命o(h)
<!--#exec cmd="dir" -->
2、高USSI
XSSIQExtended SSIQ是一l高USSI指o(h)Q内|于Apache 1.2或更高版本的mod-include模块之中?
其中可利用的的指令有Q?
<!--#printenv-->
<!--#printenv-->
<!--#printenv-->
<!--#printenv-->
作用Q?昄当前存在于WEB服务器环境中的所有环境变量?
Q?Q?set
作用Q可l变量赋|以用于后面的if语句?
语法Q程序代?
<!--#set var="变量?value="变量?-->
参数Q无
CZQ?E序代码:
<!--#set var="color"value="U色"-->
SSI允许自定义变量,q些变量可以用来q行比较和条件判断?br /> 定义变量
<!--#set var="date" value="${DATE_LOCAL}_${DATE_GMT}" -->
条g表达?br /> <!--#if expr="test_condition" -->
<!--#elif expr="test_condition" -->
<!--#else -->
<!--#endif -->
然而h生又何尝不是呢?每个人的一生中Q都有一个v点,每个人都渴望N{于蓝天之中Q梦想着成功?br />有的人成功了Q但是经历了无数ơ的p|Q最l站在成功的行列中?br />有的人正在尝试着Q正在不断的努力着Q让自己接近成功?br />也有的hl历了失败,不再d试,自暴自弃?br />也有的h成功了,但风{飞在蓝天那瞬_(d)l历了一场大风,风筝又重新回CL(fng)。有的h?x)放弃,但有的h?x)选择重新再来?br />我始l相信一句话Q没有失败,只有暂时的不成功?br />我属于正在尝试中的一员,正在不断的努力,让自己更靠近成功。不经历再多的p|Q经历再多的试,l历再多摸烦(ch)Q决不放弃?/p>
weblogic安装参见
http://zhangstar.blogbus.com/logs/2004/09/413796.html
MyEclipse默认的应用服务器为JBoss3Q这里我们用WebLogic8.1。启动EclipseQ选择“窗口\首选项”菜单,打开首选项对话框。展开MyEclipse下的Application Serversl点Q点击JBoss 3Q选中右面的Disable单选按钮,停用JBoss 3。然后点击WebLogic 8Q选中双的Enable单选按钮,启用WebLogic服务器。同时下面的配置如下Q?
(1)BEA home directoryQC:\BEA。假定WebLogic安装在D:\BEA文g夹中?
(2)WebLogic installation directoryQC:\BEA\weblogic81?
(3)Admin usernameQ用户名?
(4)Admin passwordQ密码?
(5)Execution domain rootQ安装后Q启动服务的路径?
(6)Execution domain nameQmydomain?
(7)Execution server nameQmyserver?
(8)Hostname:PortNumberQlocalhost:7001?
(9)Security policy fileQD:\BEA\weblogic81\server\lib\weblogic.policy?
(10)JAAS login configuration fileQ省略?
以上配置Ҏ(gu)安装情况不同而不同?BR>如图Q?BR>
接着展开WebLogic 8l点Q点击JDKQ在双的WLS JDK name处选择WebLogic 8的默认JDK。这里组合框中缺省ؓ(f)j2re1.4.2_03Q即之前单独安装的jre。单击Add按钮Q弹出WebLogic > Add JVM对话框,在JRE名称处随便输入一个名字,如jre1.4.1_02。然后在JREȝ录处选择WebLogic安装文g夹中的JDK文g夹,如D:\BEA\jdk141_02Q程序会(x)自动填充Javadoc URL文本框和JREpȝ库列表框。单ȝ定按钮关闭对话框。这时候就可以在WLS JDK namel合框中选择jre1.4.1_02了。之后还要在下面的Optional Java VM argumentsQ如-ms64m -mx64m -Djava.library.path="D:/BEA/weblogic81/server/bin" -Dweblogic.management.discover=false -Dweblogic.ProductionModeEnabled=false
最后点击PathsQ在双的Prepend to classpath列表框中Q通过Add JAR/ZIP按钮Q加入D:\BEA\weblogic81\server\lib\weblogic.jar、D:\BEA\weblogic81\server\lib\webservices.jar。如果用到数据库Q还需把数据库的驱动类库加q来Q这里我们用WebLogic自带的SQL Server数据库驱动库D:\BEA\weblogic81\server\lib\mssqlserver4v65.jar?
xQMyEclipse中WebLogic8的配|工作就完成了。下面可以看看在Eclipse中能否启动WebLogic了?自从安装了MyEclipse之后QEclipse工具栏中׃(x)有一个Run/Stop Servers下拉按钮。点击该按钮的下拉部分,选择“WebLogic 8\Start”菜单,卛_始启动WebLogic了。通过查看下面的控制台消息Q就可以知道启动是否成功Q或有什么异常发生。停止WebLogic可选择“WebLogic\Stop”菜?/P>
q接池还是多池?
在深入讨论如何创建和配置q接池之前,我们需要简要地看一看需要用连接池的原因?SPAN lang=EN-US>
如果(zhn)没有?SPAN lang=EN-US>JDBCq接池访问数据库Q那么ؓ(f)了徏立到数据库的q接Q?zhn)需要进行以下步骤:(x)
与这U一ơ一个连接的Ҏ(gu)相比Q连接池是数据库q接的一个现存集合,而且可以在多个活动的J2EE应用E序中回收这些数据库q接。连接池中的q接是开攄Q可用于讉K。应用程序用一个连接之后,q个q接没有被销毁,而是被返回到q接池中Q随后可以ؓ(f)其他应用E序所用。通过节省与频J徏立和断开数据库连接相关的计算资源Q连接池提高了数据库讉K的性能Q尤其是在负载高峰期内?SPAN lang=EN-US>
多池是连接池的集合。多池的主要目的是提高可用性和在一l连接池间实现负载均衡?SPAN lang=EN-US>
Z么用数据源Q?/SPAN>
一个数据源是一个提供对q接池或多池讉K?SPAN lang=EN-US>Java命名和目录接口(Java Naming and Directory InterfaceQ?SPAN lang=EN-US>JNDIQ对象。连接池或多池对于配|数据源是必需的。可以用事务属性来配置数据源。非事务性的数据源用于本C务;而事务性的数据源用于分布式事务?SPAN lang=EN-US>
数据源封装了Ҏ(gu)据库的访问,隐藏了访问连接池或多池所涉及(qing)的细节。另外,数据源配置数据库连接的事务性特性变得容易?SPAN lang=EN-US>
JDBC Data Source Factory是一?SPAN lang=EN-US>JNDI对象Q企业应用程序用它从应用程序范围内的连接池中获得连接?SPAN lang=EN-US>
JDBC驱动E序讄
?SPAN lang=EN-US>WebLogic Server?SPAN lang=EN-US> DBMS之间建立q接所需?SPAN lang=EN-US>JDBC驱动E序分ؓ(f)两种cdQ?SPAN lang=EN-US>Type 2?SPAN lang=EN-US> Type 4?SPAN lang=EN-US> Type 2 JDBC驱动E序需要本地库。?SPAN lang=EN-US>Type 2 JDBC驱动E序Ӟ需要把?SPAN lang=EN-US>WebLogic׃n库(或动态链接库Q目录的路径
WebLogic 8.1 Server安装?SPAN lang=EN-US>< WEBLOGIC >目录中?SPAN lang=EN-US>Oracle 8.1.7数据库安装在< ORACLE >目录中?SPAN lang=EN-US>< PATH >?SPAN lang=EN-US>WebLogic Server Path变量?SPAN lang=EN-US>
对于Type 2?SPAN lang=EN-US> Type 4驱动E序来说Q在WebLogic Server CLASSPATH中,需要相关的JDBC驱动E序cL配置q接池或数据源。把包含Oracle Type 2 JDBC驱动E序cȝ
配置JDBCq接?/SPAN>
现在Q我们将考虑如何创徏q接池和配置与其相关的各U参数?SPAN lang=EN-US>
要创Z?SPAN lang=EN-US>JDBCq接池,?SPAN lang=EN-US>Administration Console中右?SPAN lang=EN-US>JDBC>Connection Pools节点Q然后选择Configure a new JDBC Connection Pool?SPAN lang=EN-US>
q将昄一?SPAN lang=EN-US>Configure a JDBC Connection Pool画面。ؓ(f)Oracle数据库选择Database Type ?Oracle。选择一?SPAN lang=EN-US>Database DriverQ然后点?SPAN lang=EN-US>Continue按钮Q参见图1Q?SPAN lang=EN-US>
随后昄Define Connection Properties画面。在q个画面中,指定一?SPAN lang=EN-US>Database Name、一?SPAN lang=EN-US>Database User Name和一?SPAN lang=EN-US>Password。点?SPAN lang=EN-US>Continue按钮?SPAN lang=EN-US>
随后昄Test DataBase Connection。在q个画面中,指定Driver Classname?SPAN lang=EN-US>URL?SPAN lang=EN-US>Properties字段的倹{?SPAN lang=EN-US>Driver Classname是用于获得数据库连接的驱动E序cd?SPAN lang=EN-US>URL是用于获得连接的数据?SPAN lang=EN-US>URL?SPAN lang=EN-US>Properties是用于创接的属性列表?SPAN lang=EN-US>
?SPAN lang=EN-US>1中指定了用于不同Oracle JDBC驱动E序?SPAN lang=EN-US>Driver Classname?SPAN lang=EN-US>URL讄?SPAN lang=EN-US>
?SPAN lang=EN-US>1 驱动E序cd?SPAN lang=EN-US>URL讄
?SPAN lang=EN-US>URL讄中,< host >是在
?SPAN lang=EN-US>Properties文本框中的设|是Q
user=
点击Test Driver Configuration按钮Q以试JDBC Connection Pool。如果驱动程序配|测试成功,?x)显CZ?SPAN lang=EN-US>“Connection successful?/SPAN>消息。如果驱动程序配|有错误Q则?x)显CZ条错误消息?SPAN lang=EN-US>
随后?x)显C?SPAN lang=EN-US>Create and Deploy画面。在q个画面中,选择一台服务器部vq接池,然后点击Create and Deploy按钮来创建和部v一?SPAN lang=EN-US>JDBCq接池。这在被选中的服务器上创建和部v一个连接池。也可以把它部v在多台服务器上?SPAN lang=EN-US>Administration Console中的JDBC>Connection Pools节点会(x)增加一?SPAN lang=EN-US>
要修?SPAN lang=EN-US>JDBC Connection Pool配置Q点?SPAN lang=EN-US>JDBC>Connection Pools>
q接属?/SPAN>
在配|?SPAN lang=EN-US>Connections画面之后Q选择Apply按钮?SPAN lang=EN-US>
配置JDBC多池
一个多池就是连接池的一个集合。在创徏多池之前为多池配|连接池。要创徏和配|一个新的多池,叛_Administration Console中的JDBC>Multi Pools节点Q然后选择Configure a New Multi Pool?SPAN lang=EN-US>
随后?x)显C?SPAN lang=EN-US>Configuration画面。在Multi Pool Configuration画面中,指定Algorithm Typeq择Create按钮。如果将Algorithm Type讄?SPAN lang=EN-US>“High availability?/SPAN>Q那么在使用另一个池中的q接之前Q一个池中的所有可用连接应已经用完。如果将Algorithm Type讄?SPAN lang=EN-US>“Load balancing?/SPAN>Q多池会(x)连接请求^均地分布l多池中的所有连接池Q参见图2Q?SPAN lang=EN-US>
选择Pools选项卡,然后?SPAN lang=EN-US>Pools画面中选择要添加到多池中的q接池。点?SPAN lang=EN-US>Apply按钮。被选中的连接池被d到多池中。连接中使用的连接池是基?SPAN lang=EN-US>Algorithm Typeq行选择的?SPAN lang=EN-US>
选择Target and Deploy选项卡,然后?SPAN lang=EN-US>Target and Deploy画面中选择一台目标服务器。点?SPAN lang=EN-US>Apply按钮。可以把一个多池部|在多台服务器上?SPAN lang=EN-US>Administration Console中的JDBC>Multi Pools节点会(x)增加一?SPAN lang=EN-US>
配置JDBC数据?/SPAN>
数据源是用于讉Kq接池或多池?SPAN lang=EN-US>JNDI对象。连接池或多池对于创建数据源是必需的。连接池对于创徏事务性的数据源是必需的。应在创建数据源之前创徏q接池或多池?SPAN lang=EN-US>
要创建和配置数据源,?SPAN lang=EN-US>Administration Console中右?SPAN lang=EN-US>JDBC>Data Sources节点Q然后选择Configure a new JDBCTxData Source?SPAN lang=EN-US>
随后?x)显C?SPAN lang=EN-US>Configuration画面。在Data Source Configuration画面中指定字D늚讄?SPAN lang=EN-US>JNDI Name是数据源?SPAN lang=EN-US>JNDI路径?SPAN lang=EN-US>
选择Honor Global TransactionsQ以创徏一个事务性的Q?SPAN lang=EN-US>TxQ数据源。如果没有选中Honor Global TransactionsQ那么所创徏的数据源是?SPAN lang=EN-US>Tx数据源(参见?SPAN lang=EN-US>3Q?SPAN lang=EN-US>
随后?x)显C?SPAN lang=EN-US>Connect to Connection Pool画面。在Pool Name字段中,从可用连接池的列表中选择一?SPAN lang=EN-US>JDBCq接池,然后点击Continue按钮。数据源与被选中的连接池相连接?SPAN lang=EN-US>
随后?x)显C?SPAN lang=EN-US>Target the Data Source画面。在q个画面中,选择一台目标服务器Q然后点?SPAN lang=EN-US>Continue按钮。这在被选中的服务器上部|数据源Q但是也可以在多台服务器上部|它?SPAN lang=EN-US>Administration Console中的JDBC>Data Sources节点增加一?SPAN lang=EN-US>
数据源和Tx数据源之比较
如果在数据源配置中选择?SPAN lang=EN-US>Honor Global TransactionsQ数据源是Tx数据源。数据源是和q接池或多池一起用的?SPAN lang=EN-US>Tx数据源和q接池一起用。数据源用于本地事务?SPAN lang=EN-US>Tx数据源用于分布式事务?SPAN lang=EN-US>
在下列情况下Q应该?SPAN lang=EN-US>Tx数据源而不是数据源Q?SPAN lang=EN-US>
配置JDBC数据源工?/SPAN>
JDBC数据源工厂是一?SPAN lang=EN-US>JNDI数据源资源。企业应用程序用数据源工厂从应用程序范围内的连接池中获得连接?SPAN lang=EN-US>
要创建和配置一?SPAN lang=EN-US>JDBC数据源工厂,?SPAN lang=EN-US>Administration Console中右?SPAN lang=EN-US>JDBC>Data Source Factories节点Q然后选择Configure a new JDBCDataSourceFactory?SPAN lang=EN-US>
随后?x)显C?SPAN lang=EN-US>Configuration画面。在q个画面中,指定URL?SPAN lang=EN-US>Driver Class Name?SPAN lang=EN-US> Factory Name?SPAN lang=EN-US>Properties字段的|然后点击Create按钮Q参见图4Q?SPAN lang=EN-US>
Administration Console中的JDBC>Data Source Factories节点增加一?SPAN lang=EN-US>
JDBC配置和服务器性能
下面列出?SPAN lang=EN-US>BEA针对 WebLogic Server的各U?SPAN lang=EN-US>JDBC配置讄l出的徏议?SPAN lang=EN-US>
Z提高生模式下服务器的性能Q?SPAN lang=EN-US>
l束?/SPAN>
按照上面概述q程Q?SPAN lang=EN-US>WebLogic开发h员应该能够针?SPAN lang=EN-US>Oracle 8.1数据库配|?SPAN lang=EN-US>BEA WebLogic 8.1 Server了。配|其他数据库cM于配|?SPAN lang=EN-US>Oracle 8.1。把包含相应数据库的驱动E序cȝzip/jar文gdl?SPAN lang=EN-US>CLASSPATH变量Q然后在JDBCq接池配|中指定相应的连?SPAN lang=EN-US>URL和驱动程序类名?SPAN lang=EN-US>