??xml version="1.0" encoding="utf-8" standalone="yes"?>久久久精品影视,色播亚洲视频在线观看,亚洲日韩视频http://www.aygfsteel.com/gosyl/category/6582.html做最好的自己zh-cnThu, 24 Apr 2008 04:54:12 GMTThu, 24 Apr 2008 04:54:12 GMT60如何用jar命o对java工程q行打包http://www.aygfsteel.com/gosyl/archive/2008/04/18/194107.htmlgosylgosylFri, 18 Apr 2008 12:52:00 GMThttp://www.aygfsteel.com/gosyl/archive/2008/04/18/194107.htmlhttp://www.aygfsteel.com/gosyl/comments/194107.htmlhttp://www.aygfsteel.com/gosyl/archive/2008/04/18/194107.html#Feedback0http://www.aygfsteel.com/gosyl/comments/commentRss/194107.htmlhttp://www.aygfsteel.com/gosyl/services/trackbacks/194107.html        有时候ؓ了更方便快捷的部|和执行JavaE序Q要把java应用E序打包成一个jar包。而这个基的操作有时候也很麻烦,Z方便javaE序员们能够方便的打包java应用E序Q下面对jar命oq行介绍Qƈ丑և几个单例子针对不同情况进行打包?br />         一. jar命o用法Q?br />          在cmd命oH口下输入jarQ回车,׃提示改命令的用法Q?br />         

        ?例子Q这里介l的都是生成双击可执行的jar包)Q?br />         1.首先介绍如何在命令行下执行打包程序?br />         1.1.没有包结构的最单的工程?br />             (1)在cQ盘下新建文?#8220;HelloWorld.java”Q?br />         
1 public class HelloWorld
2 {
3     public static void main(String[] args){
4         System.out.println("Hello world!");
5     }
6 }
            (2)在命令行下输?span style="color: #0000ff">c:\javac HelloWorld.javaQ在cQ盘下编译生?#8220;HelloWorld.class”?br />
            (3)在cQ盘下新建文?#8220;menefest”Q没有后~名)Q?br />            
Main-Class: HelloWorld
            注意最后要有一个空?/span>Q否则会出现找不到类的错误?br />
             (4)打包Q输?span style="color: #ff0000">c:\jar cvmf menifest HelloWorld.jar HelloWord.jar HelloWorld.class,在cQ盘下生?#8220;HelloWorld.jar”?br />
             (5)执行Q输?span style="color: #0000ff">c:\java -jar HelloWord.jar
。屏q回?#8220;HelloWorld”?br />
        1.2.有包l构的java工程?br />             (1)在c:\com\gosyl\demo\下新建文?#8220;HelloWorld.java”Q?br />         
package com.gosyl.demo;

public class HelloWorld{
    
public static void main(String[] args){
        System.out.println(
"HelloWorld");
    }
}

            (2)在命令行下输?span style="color: #0000ff">c:\javac com/gosyl/demo/HelloWorld.javaQ在c:\com\gosyl\demo\文g夹下~译生成“HelloWorld.class”?br />
            (3)在cQ盘下新建文?#8220;menefest2”Q没有后~名)Q?br />         
Main-Class: com.gosyl.demo.HelloWorld
            注意最后要有一个空?/span>Q?span style="color: #0000ff">冒号后面要一个空根{?/span>否则会出现找不到cȝ错误?br />
            (4)打包Q输?span style="color: #ff0000">c:\jar cvmf menifest2 HelloWorld.jar HelloWord.jar com/,在cQ盘下生?#8220;HelloWorld.jar”?br />
            (5)执行Q输?span style="color: #0000ff">c:\java -jar HelloWord.jar。屏q回?#8220;HelloWorld”?br />
        1.3.引用到外部jar包的java工程?br />             (1)在c:\com\gosyl\demo\下新建文?#8220;Car.java”Q?br />              
package com.gosyl.demo;

public class Car
{
    
public static void main(String[] args){
        Light.on();        
    }
}

            (2)在c:\com\gosyl\demo\下新建文?#8220;Light.java”Q?br />         
package com.gosyl.demo;

class Light 
{
    
public static void on(){
        System.out.println(
"Light is on!");
    }
}

            (3)打包1Q输?span style="color: #ff0000">c:\jar cvf  Light.jar com/gosyl/demo/Light.class,在cQ盘下生?#8220;Light.jar”?/span>
        
            (4)在cQ盘下新建文?#8220;menefest-car”Q没有后~名)Q?br />         
Main-Class: com.gosyl.demo.Car
Class
-Path: Light.jar
            注意最后要有一个空行,冒号后面要一个空根{?/span>否则会出现找不到cȝ错误?br />
            (5)打包2Q输?span style="color: #ff0000">c:\jar cvmf  menifest-car Car.jar com/gosyl/demo/Car.class,在cQ盘下生?#8220;Car.jar”?/span>
        
            (6)执行Q输?span style="color: #0000ff">c:\java -jar Car.jar
。屏q回?#8220;Light is on”?br />
    ?ȝ
        1.清单文gmenifestQ对格式要求很高Q注意每个冒号后面要有一个空|文g最后要有一个空行?br />         2.对于引用到外部jar包的工程Q需要在manifest中定义好Class-Path属性?br />         3.对于双击.bat文g出现刷屏现象的情况,L接把.bat文g的内定w入命令行执行?br />         4.对于重复{֐的jar包,在META-INF里面会出现多个签名文Ӟ删除掉多余的Q保存其中一个才能保证jws正常启动?br />         
       

gosyl 2008-04-18 20:52 发表评论
]]>
如何对jar包进行数字签名?http://www.aygfsteel.com/gosyl/archive/2008/04/08/191506.htmlgosylgosylTue, 08 Apr 2008 07:19:00 GMThttp://www.aygfsteel.com/gosyl/archive/2008/04/08/191506.htmlhttp://www.aygfsteel.com/gosyl/comments/191506.htmlhttp://www.aygfsteel.com/gosyl/archive/2008/04/08/191506.html#Feedback0http://www.aygfsteel.com/gosyl/comments/commentRss/191506.htmlhttp://www.aygfsteel.com/gosyl/services/trackbacks/191506.html目的Q?br />         Z使Applet或者Java Web StartE序能够讉K客户端本地资源,需要对Applet或者JWSE序jar包进行数字签名,之后客户端打开Applet或者JWSE序的时候会提示是否允许该程序访问本地资源,用户如果要用你的E序Q当然只能选择OK了。这样你的程序就能按照某U访问权限来讉K客户机的本地资源了?br />
{֐步骤Q?br />         1.程序打成jar包?br />             q个我就不多说了Q用eclipseQnetbeans{开发工具很方便p打包的?br />
        2.用keytool命o生成.store文g?br />             在Q意文件夹下徏立一个keytool.bat文gQ输?br />      
              keytool -genkey -keystore xxx.keystore -alias xxx -validity 3650 

            保存,双击执行。将在当前目录下生成一个xxx.keystore文gQ?-alias后接的是别名Q?validity后面接的是该证书有效天数Q这?650表示10q。(用这个证书签名的E序10q内有效Q?br />
        3.用jarsignerE序对jar包进行签名?br />            新徏jarsinger.bat文gQ输?br />
            jarsigner -keystore xxx.keystore helloworld.jar xxx

            保存Q双L行,helloworld.jarp{֐了?nbsp;  

            单吧Q有不懂的请联系我gosyl@yahoo.com.cn
                



gosyl 2008-04-08 15:19 发表评论
]]>
求助Qmyeclipse5.0.1GA+eclipse3.2开发struts的问?/title><link>http://www.aygfsteel.com/gosyl/archive/2006/09/16/70080.html</link><dc:creator>gosyl</dc:creator><author>gosyl</author><pubDate>Sat, 16 Sep 2006 13:20:00 GMT</pubDate><guid>http://www.aygfsteel.com/gosyl/archive/2006/09/16/70080.html</guid><wfw:comment>http://www.aygfsteel.com/gosyl/comments/70080.html</wfw:comment><comments>http://www.aygfsteel.com/gosyl/archive/2006/09/16/70080.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.aygfsteel.com/gosyl/comments/commentRss/70080.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/gosyl/services/trackbacks/70080.html</trackback:ping><description><![CDATA[   我用myeclipse5.0.1GA+eclipse3.2。新Z个web projectQ然后添加struts cababilities.在struts-config.xml的design标签下Q如下图Q不能新建jsp文g。ؓ什么呢Q?br /><img height="325" alt="o_未命?JPG" src="http://www.aygfsteel.com/images/blogjava_net/gosyl/15267/o_未命?JPG" width="723" border="0" /><br /><img src ="http://www.aygfsteel.com/gosyl/aggbug/70080.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/gosyl/" target="_blank">gosyl</a> 2006-09-16 21:20 <a href="http://www.aygfsteel.com/gosyl/archive/2006/09/16/70080.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>毕业?/title><link>http://www.aygfsteel.com/gosyl/archive/2006/05/21/47286.html</link><dc:creator>gosyl</dc:creator><author>gosyl</author><pubDate>Sun, 21 May 2006 06:17:00 GMT</pubDate><guid>http://www.aygfsteel.com/gosyl/archive/2006/05/21/47286.html</guid><wfw:comment>http://www.aygfsteel.com/gosyl/comments/47286.html</wfw:comment><comments>http://www.aygfsteel.com/gosyl/archive/2006/05/21/47286.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.aygfsteel.com/gosyl/comments/commentRss/47286.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/gosyl/services/trackbacks/47286.html</trackback:ping><description><![CDATA[ <p> </p> <div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"> <img id="Codehighlighter1_20_224_Open_Image" onclick="this.style.display='none'; Codehighlighter1_20_224_Open_Text.style.display='none'; Codehighlighter1_20_224_Closed_Image.style.display='inline'; Codehighlighter1_20_224_Closed_Text.style.display='inline';" src="http://www.aygfsteel.com/images/OutliningIndicators/ExpandedBlockStart.gif" align="top" /> <img id="Codehighlighter1_20_224_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_20_224_Closed_Text.style.display='none'; Codehighlighter1_20_224_Open_Image.style.display='inline'; Codehighlighter1_20_224_Open_Text.style.display='inline';" src="http://www.aygfsteel.com/images/OutliningIndicators/ContractedBlock.gif" align="top" /> <span style="COLOR: #0000ff">public</span> <span style="COLOR: #000000"> </span> <span style="COLOR: #0000ff">class</span> <span style="COLOR: #000000"> Student</span> <span id="Codehighlighter1_20_224_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"> <img src="http://www.aygfsteel.com/images/dot.gif" /> </span> <span id="Codehighlighter1_20_224_Open_Text"> <span style="COLOR: #000000">{<br /><img id="Codehighlighter1_46_76_Open_Image" onclick="this.style.display='none'; Codehighlighter1_46_76_Open_Text.style.display='none'; Codehighlighter1_46_76_Closed_Image.style.display='inline'; Codehighlighter1_46_76_Closed_Text.style.display='inline';" src="http://www.aygfsteel.com/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_46_76_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_46_76_Closed_Text.style.display='none'; Codehighlighter1_46_76_Open_Image.style.display='inline'; Codehighlighter1_46_76_Open_Text.style.display='inline';" src="http://www.aygfsteel.com/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />    Student(String name)</span> <span id="Codehighlighter1_46_76_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"> <img src="http://www.aygfsteel.com/images/dot.gif" /> </span> <span id="Codehighlighter1_46_76_Open_Text"> <span style="COLOR: #000000">{<br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" />        </span> <span style="COLOR: #0000ff">this</span> <span style="COLOR: #000000">.name</span> <span style="COLOR: #000000">=</span> <span style="COLOR: #000000">name;<br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />    }</span> </span> <span style="COLOR: #000000"> <br /> <img id="Codehighlighter1_105_125_Open_Image" onclick="this.style.display='none'; Codehighlighter1_105_125_Open_Text.style.display='none'; Codehighlighter1_105_125_Closed_Image.style.display='inline'; Codehighlighter1_105_125_Closed_Text.style.display='inline';" src="http://www.aygfsteel.com/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /> <img id="Codehighlighter1_105_125_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_105_125_Closed_Text.style.display='none'; Codehighlighter1_105_125_Open_Image.style.display='inline'; Codehighlighter1_105_125_Open_Text.style.display='inline';" src="http://www.aygfsteel.com/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />    </span> <span style="COLOR: #0000ff">boolean</span> <span style="COLOR: #000000"> hasPassedCET4()</span> <span id="Codehighlighter1_105_125_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"> <img src="http://www.aygfsteel.com/images/dot.gif" /> </span> <span id="Codehighlighter1_105_125_Open_Text"> <span style="COLOR: #000000">{<br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" />        </span> <span style="COLOR: #008000">//</span> <span style="COLOR: #008000"> <img src="http://www.aygfsteel.com/images/dot.gif" /> </span> <span style="COLOR: #008000"> <br /> <img src="http://www.aygfsteel.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" /> </span> <span style="COLOR: #000000">    }</span> </span> <span style="COLOR: #000000"> <br /> <img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" />        <br /><img id="Codehighlighter1_166_186_Open_Image" onclick="this.style.display='none'; Codehighlighter1_166_186_Open_Text.style.display='none'; Codehighlighter1_166_186_Closed_Image.style.display='inline'; Codehighlighter1_166_186_Closed_Text.style.display='inline';" src="http://www.aygfsteel.com/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_166_186_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_166_186_Closed_Text.style.display='none'; Codehighlighter1_166_186_Open_Image.style.display='inline'; Codehighlighter1_166_186_Open_Text.style.display='inline';" src="http://www.aygfsteel.com/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />    </span> <span style="COLOR: #0000ff">boolean</span> <span style="COLOR: #000000"> gotEnoughCredits()</span> <span id="Codehighlighter1_166_186_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"> <img src="http://www.aygfsteel.com/images/dot.gif" /> </span> <span id="Codehighlighter1_166_186_Open_Text"> <span style="COLOR: #000000">{<br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" />        </span> <span style="COLOR: #008000">//</span> <span style="COLOR: #008000"> <img src="http://www.aygfsteel.com/images/dot.gif" /> </span> <span style="COLOR: #008000"> <br /> <img src="http://www.aygfsteel.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" /> </span> <span style="COLOR: #000000">    }</span> </span> <span style="COLOR: #000000"> <br /> <img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" /> <br /> <img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" />    </span> <span style="COLOR: #0000ff">private</span> <span style="COLOR: #000000"> age;<br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" />    </span> <span style="COLOR: #0000ff">private</span> <span style="COLOR: #000000"> name;<br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top" />}</span> </span> <span style="COLOR: #000000"> <br /> <img src="http://www.aygfsteel.com/images/OutliningIndicators/None.gif" align="top" /> <br /> <img id="Codehighlighter1_264_1113_Open_Image" onclick="this.style.display='none'; Codehighlighter1_264_1113_Open_Text.style.display='none'; Codehighlighter1_264_1113_Closed_Image.style.display='inline'; Codehighlighter1_264_1113_Closed_Text.style.display='inline';" src="http://www.aygfsteel.com/images/OutliningIndicators/ExpandedBlockStart.gif" align="top" /> <img id="Codehighlighter1_264_1113_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_264_1113_Closed_Text.style.display='none'; Codehighlighter1_264_1113_Open_Image.style.display='inline'; Codehighlighter1_264_1113_Open_Text.style.display='inline';" src="http://www.aygfsteel.com/images/OutliningIndicators/ContractedBlock.gif" align="top" /> </span> <span style="COLOR: #0000ff">class</span> <span style="COLOR: #000000"> GraduateStudent </span> <span style="COLOR: #0000ff">extends</span> <span style="COLOR: #000000"> Student</span> <span id="Codehighlighter1_264_1113_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"> <img src="http://www.aygfsteel.com/images/dot.gif" /> </span> <span id="Codehighlighter1_264_1113_Open_Text"> <span style="COLOR: #000000">{<br /><img id="Codehighlighter1_303_326_Open_Image" onclick="this.style.display='none'; Codehighlighter1_303_326_Open_Text.style.display='none'; Codehighlighter1_303_326_Closed_Image.style.display='inline'; Codehighlighter1_303_326_Closed_Text.style.display='inline';" src="http://www.aygfsteel.com/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_303_326_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_303_326_Closed_Text.style.display='none'; Codehighlighter1_303_326_Open_Image.style.display='inline'; Codehighlighter1_303_326_Open_Text.style.display='inline';" src="http://www.aygfsteel.com/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />    </span> <span style="COLOR: #0000ff">boolean</span> <span style="COLOR: #000000"> completedGraduateThesis()</span> <span id="Codehighlighter1_303_326_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"> <img src="http://www.aygfsteel.com/images/dot.gif" /> </span> <span id="Codehighlighter1_303_326_Open_Text"> <span style="COLOR: #000000">{<br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" />        </span> <span style="COLOR: #008000">//</span> <span style="COLOR: #008000"> <img src="http://www.aygfsteel.com/images/dot.gif" />   </span> <span style="COLOR: #008000"> <br /> <img src="http://www.aygfsteel.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" /> </span> <span style="COLOR: #000000">    }</span> </span> <span style="COLOR: #000000"> <br /> <img id="Codehighlighter1_348_368_Open_Image" onclick="this.style.display='none'; Codehighlighter1_348_368_Open_Text.style.display='none'; Codehighlighter1_348_368_Closed_Image.style.display='inline'; Codehighlighter1_348_368_Closed_Text.style.display='inline';" src="http://www.aygfsteel.com/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /> <img id="Codehighlighter1_348_368_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_348_368_Closed_Text.style.display='none'; Codehighlighter1_348_368_Open_Image.style.display='inline'; Codehighlighter1_348_368_Open_Text.style.display='inline';" src="http://www.aygfsteel.com/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />    Photo getPhoto()</span> <span id="Codehighlighter1_348_368_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"> <img src="http://www.aygfsteel.com/images/dot.gif" /> </span> <span id="Codehighlighter1_348_368_Open_Text"> <span style="COLOR: #000000">{<br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" />        </span> <span style="COLOR: #008000">//</span> <span style="COLOR: #008000"> <img src="http://www.aygfsteel.com/images/dot.gif" /> </span> <span style="COLOR: #008000"> <br /> <img src="http://www.aygfsteel.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" /> </span> <span style="COLOR: #000000">    }</span> </span> <span style="COLOR: #000000"> <br /> <img id="Codehighlighter1_397_417_Open_Image" onclick="this.style.display='none'; Codehighlighter1_397_417_Open_Text.style.display='none'; Codehighlighter1_397_417_Closed_Image.style.display='inline'; Codehighlighter1_397_417_Closed_Text.style.display='inline';" src="http://www.aygfsteel.com/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /> <img id="Codehighlighter1_397_417_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_397_417_Closed_Text.style.display='none'; Codehighlighter1_397_417_Open_Image.style.display='inline'; Codehighlighter1_397_417_Open_Text.style.display='inline';" src="http://www.aygfsteel.com/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />    </span> <span style="COLOR: #0000ff">boolean</span> <span style="COLOR: #000000"> healthCheckUp()</span> <span id="Codehighlighter1_397_417_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"> <img src="http://www.aygfsteel.com/images/dot.gif" /> </span> <span id="Codehighlighter1_397_417_Open_Text"> <span style="COLOR: #000000">{<br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" />        </span> <span style="COLOR: #008000">//</span> <span style="COLOR: #008000"> <img src="http://www.aygfsteel.com/images/dot.gif" /> </span> <span style="COLOR: #008000"> <br /> <img src="http://www.aygfsteel.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" /> </span> <span style="COLOR: #000000">    }</span> </span> <span style="COLOR: #000000"> <br /> <img id="Codehighlighter1_434_454_Open_Image" onclick="this.style.display='none'; Codehighlighter1_434_454_Open_Text.style.display='none'; Codehighlighter1_434_454_Closed_Image.style.display='inline'; Codehighlighter1_434_454_Closed_Text.style.display='inline';" src="http://www.aygfsteel.com/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /> <img id="Codehighlighter1_434_454_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_434_454_Closed_Text.style.display='none'; Codehighlighter1_434_454_Open_Image.style.display='inline'; Codehighlighter1_434_454_Open_Text.style.display='inline';" src="http://www.aygfsteel.com/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />    </span> <span style="COLOR: #0000ff">void</span> <span style="COLOR: #000000"> stay()</span> <span id="Codehighlighter1_434_454_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"> <img src="http://www.aygfsteel.com/images/dot.gif" /> </span> <span id="Codehighlighter1_434_454_Open_Text"> <span style="COLOR: #000000">{<br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" />        </span> <span style="COLOR: #008000">//</span> <span style="COLOR: #008000"> <img src="http://www.aygfsteel.com/images/dot.gif" /> </span> <span style="COLOR: #008000"> <br /> <img src="http://www.aygfsteel.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" /> </span> <span style="COLOR: #000000">    }</span> </span> <span style="COLOR: #000000"> <br /> <img id="Codehighlighter1_478_479_Open_Image" onclick="this.style.display='none'; Codehighlighter1_478_479_Open_Text.style.display='none'; Codehighlighter1_478_479_Closed_Image.style.display='inline'; Codehighlighter1_478_479_Closed_Text.style.display='inline';" src="http://www.aygfsteel.com/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /> <img id="Codehighlighter1_478_479_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_478_479_Closed_Text.style.display='none'; Codehighlighter1_478_479_Open_Image.style.display='inline'; Codehighlighter1_478_479_Open_Text.style.display='inline';" src="http://www.aygfsteel.com/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />    </span> <span style="COLOR: #0000ff">void</span> <span style="COLOR: #000000"> leaveSchool()</span> <span id="Codehighlighter1_478_479_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"> <img src="http://www.aygfsteel.com/images/dot.gif" /> </span> <span id="Codehighlighter1_478_479_Open_Text"> <span style="COLOR: #000000">{}</span> </span> <span style="COLOR: #000000"> <br /> <img id="Codehighlighter1_510_511_Open_Image" onclick="this.style.display='none'; Codehighlighter1_510_511_Open_Text.style.display='none'; Codehighlighter1_510_511_Closed_Image.style.display='inline'; Codehighlighter1_510_511_Closed_Text.style.display='inline';" src="http://www.aygfsteel.com/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /> <img id="Codehighlighter1_510_511_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_510_511_Closed_Text.style.display='none'; Codehighlighter1_510_511_Open_Image.style.display='inline'; Codehighlighter1_510_511_Open_Text.style.display='inline';" src="http://www.aygfsteel.com/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />    </span> <span style="COLOR: #0000ff">void</span> <span style="COLOR: #000000"> enterAnotherSchool()</span> <span id="Codehighlighter1_510_511_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"> <img src="http://www.aygfsteel.com/images/dot.gif" /> </span> <span id="Codehighlighter1_510_511_Open_Text"> <span style="COLOR: #000000">{}</span> </span> <span style="COLOR: #000000"> <br /> <img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" />    <br /><img id="Codehighlighter1_559_1111_Open_Image" onclick="this.style.display='none'; Codehighlighter1_559_1111_Open_Text.style.display='none'; Codehighlighter1_559_1111_Closed_Image.style.display='inline'; Codehighlighter1_559_1111_Closed_Text.style.display='inline';" src="http://www.aygfsteel.com/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_559_1111_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_559_1111_Closed_Text.style.display='none'; Codehighlighter1_559_1111_Open_Image.style.display='inline'; Codehighlighter1_559_1111_Open_Text.style.display='inline';" src="http://www.aygfsteel.com/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />    </span> <span style="COLOR: #0000ff">public</span> <span style="COLOR: #000000"> </span> <span style="COLOR: #0000ff">static</span> <span style="COLOR: #000000"> </span> <span style="COLOR: #0000ff">void</span> <span style="COLOR: #000000"> main(Sting[] args)</span> <span id="Codehighlighter1_559_1111_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"> <img src="http://www.aygfsteel.com/images/dot.gif" /> </span> <span id="Codehighlighter1_559_1111_Open_Text"> <span style="COLOR: #000000">{<br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" />        Student me</span> <span style="COLOR: #000000">=</span> <span style="COLOR: #0000ff">new</span> <span style="COLOR: #000000"> GraduateStudent(</span> <span style="COLOR: #000000">"</span> <span style="COLOR: #000000">syl</span> <span style="COLOR: #000000">"</span> <span style="COLOR: #000000">);<br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" />        </span> <span style="COLOR: #0000ff">if</span> <span style="COLOR: #000000">(me.hasPassCET4()<br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" />           </span> <span style="COLOR: #000000">&&</span> <span style="COLOR: #000000"> me.gotEnoughCredits()<br /><img id="Codehighlighter1_715_1066_Open_Image" onclick="this.style.display='none'; Codehighlighter1_715_1066_Open_Text.style.display='none'; Codehighlighter1_715_1066_Closed_Image.style.display='inline'; Codehighlighter1_715_1066_Closed_Text.style.display='inline';" src="http://www.aygfsteel.com/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_715_1066_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_715_1066_Closed_Text.style.display='none'; Codehighlighter1_715_1066_Open_Image.style.display='inline'; Codehighlighter1_715_1066_Open_Text.style.display='inline';" src="http://www.aygfsteel.com/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />           </span> <span style="COLOR: #000000">&&</span> <span style="COLOR: #000000"> me.completedGraduateThesis())</span> <span id="Codehighlighter1_715_1066_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"> <img src="http://www.aygfsteel.com/images/dot.gif" /> </span> <span id="Codehighlighter1_715_1066_Open_Text"> <span style="COLOR: #000000">{<br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" />            me.getPhoto();<br /><img id="Codehighlighter1_779_866_Open_Image" onclick="this.style.display='none'; Codehighlighter1_779_866_Open_Text.style.display='none'; Codehighlighter1_779_866_Closed_Image.style.display='inline'; Codehighlighter1_779_866_Closed_Text.style.display='inline';" src="http://www.aygfsteel.com/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_779_866_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_779_866_Closed_Text.style.display='none'; Codehighlighter1_779_866_Open_Image.style.display='inline'; Codehighlighter1_779_866_Open_Text.style.display='inline';" src="http://www.aygfsteel.com/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />            </span> <span style="COLOR: #0000ff">if</span> <span style="COLOR: #000000"> (me.healthCheckUp())</span> <span id="Codehighlighter1_779_866_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"> <img src="http://www.aygfsteel.com/images/dot.gif" /> </span> <span id="Codehighlighter1_779_866_Open_Text"> <span style="COLOR: #000000">{<br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" />               me.leaveSchool();<br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" />               me.enterAnotherSchool();<br /><img id="Codehighlighter1_871_1056_Open_Image" onclick="this.style.display='none'; Codehighlighter1_871_1056_Open_Text.style.display='none'; Codehighlighter1_871_1056_Closed_Image.style.display='inline'; Codehighlighter1_871_1056_Closed_Text.style.display='inline';" src="http://www.aygfsteel.com/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_871_1056_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_871_1056_Closed_Text.style.display='none'; Codehighlighter1_871_1056_Open_Image.style.display='inline'; Codehighlighter1_871_1056_Open_Text.style.display='inline';" src="http://www.aygfsteel.com/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />            }</span> </span> <span style="COLOR: #0000ff">else</span> <span id="Codehighlighter1_871_1056_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"> <img src="http://www.aygfsteel.com/images/dot.gif" /> </span> <span id="Codehighlighter1_871_1056_Open_Text"> <span style="COLOR: #000000">{<br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" />               me.leaveSchool();<br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" />               me.gotoHospital();<br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" />               </span> <span style="COLOR: #0000ff">while</span> <span style="COLOR: #000000">(</span> <span style="COLOR: #000000">!</span> <span style="COLOR: #000000">me.healthCheckUp())<br /><img id="Codehighlighter1_1001_1002_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1001_1002_Open_Text.style.display='none'; Codehighlighter1_1001_1002_Closed_Image.style.display='inline'; Codehighlighter1_1001_1002_Closed_Text.style.display='inline';" src="http://www.aygfsteel.com/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_1001_1002_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_1001_1002_Closed_Text.style.display='none'; Codehighlighter1_1001_1002_Open_Image.style.display='inline'; Codehighlighter1_1001_1002_Open_Text.style.display='inline';" src="http://www.aygfsteel.com/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />                   </span> <span id="Codehighlighter1_1001_1002_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"> <img src="http://www.aygfsteel.com/images/dot.gif" /> </span> <span id="Codehighlighter1_1001_1002_Open_Text"> <span style="COLOR: #000000">{}</span> </span> <span style="COLOR: #000000"> <br /> <img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" />               me.enterAnotherSchool();<br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />            }</span> </span> <span style="COLOR: #000000"> <br /> <img id="Codehighlighter1_1071_1105_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1071_1105_Open_Text.style.display='none'; Codehighlighter1_1071_1105_Closed_Image.style.display='inline'; Codehighlighter1_1071_1105_Closed_Text.style.display='inline';" src="http://www.aygfsteel.com/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /> <img id="Codehighlighter1_1071_1105_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_1071_1105_Closed_Text.style.display='none'; Codehighlighter1_1071_1105_Open_Image.style.display='inline'; Codehighlighter1_1071_1105_Open_Text.style.display='inline';" src="http://www.aygfsteel.com/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />        }</span> </span> <span style="COLOR: #0000ff">else</span> <span id="Codehighlighter1_1071_1105_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"> <img src="http://www.aygfsteel.com/images/dot.gif" /> </span> <span id="Codehighlighter1_1071_1105_Open_Text"> <span style="COLOR: #000000">{<br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" />             me.stay();<br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />        }</span> </span> <span style="COLOR: #000000"> <br /> <img src="http://www.aygfsteel.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />    }</span> </span> <span style="COLOR: #000000"> <br /> <img src="http://www.aygfsteel.com/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top" />}</span> </span> <span style="COLOR: #000000"> <br /> <img src="http://www.aygfsteel.com/images/OutliningIndicators/None.gif" align="top" /> <br /> <img src="http://www.aygfsteel.com/images/OutliningIndicators/None.gif" align="top" /> </span> </div> <img src ="http://www.aygfsteel.com/gosyl/aggbug/47286.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/gosyl/" target="_blank">gosyl</a> 2006-05-21 14:17 <a href="http://www.aygfsteel.com/gosyl/archive/2006/05/21/47286.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>[转蝲]Tomcat5.5下配|JNDI JDBC数据?http://www.aygfsteel.com/gosyl/archive/2006/05/05/44680.htmlgosylgosylFri, 05 May 2006 13:54:00 GMThttp://www.aygfsteel.com/gosyl/archive/2006/05/05/44680.htmlhttp://www.aygfsteel.com/gosyl/comments/44680.htmlhttp://www.aygfsteel.com/gosyl/archive/2006/05/05/44680.html#Feedback0http://www.aygfsteel.com/gosyl/comments/commentRss/44680.htmlhttp://www.aygfsteel.com/gosyl/services/trackbacks/44680.htmlhttp://www.kaifz.com/Tomcat5-5-JNDI-JDBC-t39764.htm

Tomcat5.5下配|JNDI JDBC数据?br />w.kejia@gmail.com
1. 安装JDBC驱动
通常Q将JDBC驱动安装?CATALINA_HOME/common/lib下?br />2. 声明你的资源引用
q里我们为JDBC数据源徏立的JNDI资源名ؓ“jdbc/dataSource2005?需要在web应用部v描述文gweb.xml中添加资源声明:
<resource-ref>
<description>
Resource reference to a factory for java.sql.Connection
instances that may be used for talking to a particular
database that is configured in the server.xml file.
</description>
<res-ref-name>
jdbc/dataSource2005
</res-ref-name>
<res-type>
javax.sql.DataSource
</res-type>
<res-auth>
Container
</res-auth>
</resource-ref>
以下是一份简单、完整的web.xml文g内容Q?br /><?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/j2ee/dtds/web-app_2_3.dtd">
<web-app id="StrutsWuApplication">
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
<resource-ref id="datasource">
<description>Database connection</description>
<res-ref-name>jdbc/dataSource2005</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
</web-app>
3. 配置Tomcat资源工厂
接下来修改应用的$CATALINA_HOME/conf/server.xml或web应用?META-INF/context.xml文gQ在相应的context节添加:
<Context ...>
...
<Resource name="jdbc/dataSource2005" auth="Container" type="javax.sql.DataSource" username="sa" password="sa" driverClassName="com.microsoft.jdbc.sqlserver.SQLServerDriver" url="jdbc:microsoft:sqlserver://localhost:1433;databasename=northwind" maxActive="8" maxIdle="4"/>
...
</Context>
Tomcat标准数据源资源工厂配|项如下Q?br />* driverClassName - 所使用的JDBC驱动cdU?br />* maxActive - 同一时刻可以自数据库q接池中被分配的最大活动实例数?br />* maxIdle - 同一时刻数据库连接池中处于非zd状态的最大连接数?br />* maxWait - 当连接池中没有可用连接时Q连接池在抛出异常前等待的最大时_单位毫秒?br />* password - 传给JDBC驱动的数据库密码?br />* url - 传给JDBC驱动的连接URL?br />* user - 传给JDBC驱动的数据库用户名?br />* validationQuery - 一个SQL查询语句Q用于在q接被返回给应用前的q接池验证。如果指定了该属性,则必返回一行记录的SQL SELECT语句?br />4. 使用
Context initCtx = new InitialContext();
Context envCtx = (Context) initCtx.lookup("java:comp/env");
DataSource ds = (DataSource)envCtx.lookup("jdbc/dataSource2005");
Connection conn = ds.getConnection();
... use this connection to access the database ...
conn.close();
注意QTomcat5.5不支持ConnectionPoolDataSource接口?br />5. 参?br />* http://tomcat.apache.org/tomcat-5.5-doc/jndi-resources-howto.html


gosyl 2006-05-05 21:54 发表评论
]]>
如何让iis支持jspQservlethttp://www.aygfsteel.com/gosyl/archive/2006/04/27/43515.htmlgosylgosylThu, 27 Apr 2006 03:35:00 GMThttp://www.aygfsteel.com/gosyl/archive/2006/04/27/43515.htmlhttp://www.aygfsteel.com/gosyl/comments/43515.htmlhttp://www.aygfsteel.com/gosyl/archive/2006/04/27/43515.html#Feedback4http://www.aygfsteel.com/gosyl/comments/commentRss/43515.htmlhttp://www.aygfsteel.com/gosyl/services/trackbacks/43515.html配置要求QIISQwin2000 server 自带Q、Java 2 SDK 1.4.2 (或更高版?、Tomcat Web Server q接器、Tomcat 5.0.24 (或更高版?

准备

一、Java 2 SDK 1.4.2 (或更高版?
1?www.java.sun.com/downloads/ |站中下载,选择
2?Java 2 Platform, Standard Edition (J2SE)
3、?在下拉列表框中选择All platforms
4、?J2SE v 1.4.2_04  SDK  includes the JVM technology 下选择
5、?Download J2SE SDK
6?选择accept后下载Windows Offline Installation, Multi-language        (j2sdk-1_4_2_04-windows-i586-p.exe, 49.36 MB) 版本

二、Tomcat 5.0.24 (或更高版?
1?a >http://jakarta.apache.org/site/binindex.cgi下蝲
2、在Downloads中选择Binaries
3、在Tomcat 5.0.25 KEYS 中选择5.0.25 exe PGP MD5 下蝲

三、Tomcat Web Server q接?br />1?a >http://jakarta.apache.org/site/binindex.cgi下蝲
2、在Downloads中选择Binaries
3、在Tomcat Web Server Connectors KEYS 中选择
4、JK 2
   JK 2 Binary Releases
5、出现Index of/dist/jakarta/tomcat-connectors/jk2/binaries
  界面Q选择win32/然后选择下蝲
  jakarta-tomcat-connectors-jk2.0.4-win32-IIS.zip
 注意 q个目录列表昄的文件名U被截断Q所以需要观察浏览器状态栏中的提示Q确认你准备下蝲的文件应该是以\"...iis.zip\"为结

安装

一、Java 2 SDK
q行j2sdk-1_4_2_04-windows-i586-p.exe 按照提示安装Q可以更改安装\径到你习惯的地方Q。这里选择
d:\\jdk(jdk己新建的文g?

二、Tomcat 5
q行jakarta-tomcat-5.0.24.exe 按照提示安装Q可以更改至其它路径Q?br />q里选择d:\\tomcat5.0(tomcat5.0己新建的文g?
选择本地机器的jdk路径Q一般情况下Q安装文件会自动搜烦q显C,如果没有正确昄Q也可以手动更改
成功安装后,E序会提C启动tomcatq查看readme文档?br />注意: 启动Tomcat之前要确定系l没有其它服务已l占?080端口(Tomcat默认端口)?009端口( Tomcat\'s AJP13 q接器端?
Tomcat正常启动后会在系l栏加蝲图标
注意Q?tomcat5.0以下的版本必设初始密码Qtomcat5.0以上的可以不?/p>

三、Tomcat JK2 IIS q接?br />解压~jakarta-tomcat-connectors-jk2.0.4-win32-IIS.zip得到bin  conf  doc三个文g夹,q入\\bin\\后可见isapi_redirector2.dll?br />剪切/复制isapi_redirector2.dll 文g到Tomcat\'s bin\\目录?br />新徏目录win32\\i386\\ q粘贴isapi_redirector2.dll?br />Cq个路径Q稍后配|IIS的时候还会用到。这个\径不是系l要求的Q可改变Q?br />现在可以删除jakarta-tomcat-connectors-jk2.0.4-win32-IIS目录Q这里面的文件已l没用了。实际上在jakarta-tomcat-connectors-jk2.0.4-win32-IIS.zip中我们只用到了isapi_redirector2.dll一个文?/p>


一、tomcat
q入 Tomcat\'s conf\\ 文g?
要支?JK2 q接? 你可能需要修改jk2.properties文g. 大多数情况下保留此文件的默认状态即可,本h的多ơ配|过E都没有修改q这个文件?/p>

## THIS FILE MAY BE OVERRIDEN AT RUNTIME. MAKE SURE TOMCAT IS STOPED
## WHEN YOU EDIT THE FILE.

## COMMENTS WILL BE _LOST_

## DOCUMENTATION OF THE FORMAT IN JkMain javadoc.

# Set the desired handler list
# handler.list=apr,request,channelJni
# www.domain.com
# Override the default port for the socketChannel
# channelSocket.port=8019
# Default:
# channelUnix.file=${jkHome}/work/jk2.socket
# Just to check if the the config  is working
# shm.file=${jkHome}/work/jk2.shm

# In order to enable jni use any channelJni directive
# channelJni.disabled = 0
# And one of the following directives:

# apr.jniModeSo=/opt/apache2/modules/mod_jk2.so

# If set to inprocess the mod_jk2 will Register natives itself
# This will enable the starting of the Tomcat from mod_jk2
# apr.jniModeSo=inprocess
request.tomcatAuthentication=false


讄环境变量tomcat_home。指向tomcat的安装目录d:\\Tomcat 5.0下。注意要求系l有可用JAVA_HOME环境变量

创徏workers2.properties到d:\\Tomcat 5.0\\conf下。workers2.properties内容文g如下Q?br />[shm]
file=\"d:/Tomcat 5.0/logs/jk2.shm\"
size=1048576

# Example socket channel, override port and host.
[channel.socket:localhost:8009]
port=8009
host=127.0.0.1

# define the worker
[ajp13:localhost:8009]
channel=channel.socket:localhost:8009

# Uri mapping
[uri:/*.jsp]
[uri:/servlet/*]
worker=ajp13:localhost:8009

三、Tomcat IIS q接?br />你已l放|isapi_redirector2.dll在你的\径下Q本例子中是
d:\\Tomcat 5.0\\bin\\win32\\i386
现在需要添加一些必要的注册信息到注册表Qredirector被IIS调用时会d。徏立一?reg文g

Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\\SOFTWARE\\Apache Software Foundation\\Jakarta Isapi Redirector\\2.0]
\"workersFile\"=\"d:\\\\Tomcat 5.0\\\\conf\\\\workers2.properties\"
\"extensionUri\"=\"/jakarta/isapi_redirector2.dll\"
\"logLevel\"=\"debug\"
\"serverRoot\"=\"d:\\\\Tomcat 5.0\\\\\"
在记事本中写入上面的文字Qƈ保存?reg.reg
双击.reg文g,在注册表中的内容会d成功
HKEY_LOCAL_MACHINE\\SOFTWARE\\Apache Software Foundation\\Jakarta Isapi Redirector\\2.0中可以看到?/p>

四、给Tomcat配制虚拟L多个站点?br />新徏两个文g夹d:\\tomcat1和d:\\tomcat2。在两个文g多w面再分别建立一个ROOT目录?/p>

C本打开d:\\Tomcat5.0\\conf\\server.xml文g。在文gserver.xml中找?br />标签Q在标签之后新徏如下信息Q?/p>

主要是新徏两个虚拟Lwww.tomcat1.com?a >www.tomcat2.com。站点目录分别是d:\\tomcat1和d:\\tomcat2。d:\\tomcat1\\ROOT和d:\\tomcat2\\ROOT。分别是两个站点的主目录。也建立了日志文件和讉K日志文g?/p>

五、打开tomcat?servlet/*的映?br />C本打开d:\\Tomcat 5.0\\conf\\web.xml文g?br />?br />   
        invoker
       
         org.apache.catalina.servlets.InvokerServlet
       
       
            debug
            0
       
        2
   
?br />   
        invoker
        /servlet/*
   
q两个代码段的注释去掉,使其生效?/p>

六、在iis中徏立两个站点tomcat1和tomcat2。徏立时注意L头分别设?a >www.tomcat1.com?a >www.tomcat2.com。主目录分别设成d:\\tomcat1\\ROOT和d:\\tomcat2\\ROOT。两个站点分别徏立名UCؓjakarta的ISAPI{选器。可执行文g都指向d:\\Tomcat 5.0\\conf\\connector\\isapi_redirector2.dll?/p>

两个站点分别新徏虚拟目录别名都填QjakartaQ目录选择指向Qd:\\Tomcat 5.0\\bin\\win32\\i386在\"执行Q例如ISAPI应用E序或CGIQ\"一Ҏ上勾Q完成?/p>

IIA{选器
再进行筛选器的选择Ӟ选用jakarta可执行文件ؓd:\\Tomcat 5.0\\bin\\win32\\i386
 
建筛选器所需要的虚拟目录
选择需要加载Tomcat服务站点Q右键选择新徏,再选择虚拟目录。创拟目录,别名为jakarta。注意这个名字是固定|不要拼写错误Q指定目录ؓisapi_redirector2.dll所在目? 本例子中?d:\\Tomcat 5.0\\bin\\win32\\i386
 
重启tomcat和iis?/p>

在tomcat1和tomcat2文g夹下最好放一个index.htm和一个index.jsp文g.方便试?br />



gosyl 2006-04-27 11:35 发表评论
]]>
java学习http://www.aygfsteel.com/gosyl/archive/2006/04/24/42852.htmlgosylgosylMon, 24 Apr 2006 08:50:00 GMThttp://www.aygfsteel.com/gosyl/archive/2006/04/24/42852.htmlhttp://www.aygfsteel.com/gosyl/comments/42852.htmlhttp://www.aygfsteel.com/gosyl/archive/2006/04/24/42852.html#Feedback0http://www.aygfsteel.com/gosyl/comments/commentRss/42852.htmlhttp://www.aygfsteel.com/gosyl/services/trackbacks/42852.html        发现自己q是没有扑ֈ一U很好的自学方式。。?br />

gosyl 2006-04-24 16:50 发表评论
]]>
java Web服务 学习W记1http://www.aygfsteel.com/gosyl/archive/2006/04/21/42404.htmlgosylgosylFri, 21 Apr 2006 11:43:00 GMThttp://www.aygfsteel.com/gosyl/archive/2006/04/21/42404.htmlhttp://www.aygfsteel.com/gosyl/comments/42404.htmlhttp://www.aygfsteel.com/gosyl/archive/2006/04/21/42404.html#Feedback0http://www.aygfsteel.com/gosyl/comments/commentRss/42404.htmlhttp://www.aygfsteel.com/gosyl/services/trackbacks/42404.html
面向服务的体pȝ?br />   a服务
   b服务描述

一些术?br />SOAPQSimple Object Access Protocal,单对象访问协议)
WSDL(Web Service Description Language,Web服务描述语言)
UDDIQUniversal Description,Discovery and Integration,通用描述Q发现和集成Q?/p>

参与者角?br />1.提供者:提供者是一个被他h视ؓ可以通过|络讉K的服务的软g资?br />  a具有xml形式的描q?br />  b具有一个封装了行ؓ的具体实?/p>

2.注册中心Q一个注册中心管理着关于提供者及其Y件资产的信息资料库?br />q个资料库包?
 a业务数据,如名字,描述和联pM息?br /> b数据描q策略,业务处理以及软gl定?/p>

3.h者:从面向服务的体系l构中,h者是一个业务对象,它发现ƈ调用׃个或多个提供者提
供的软g资。从复合计算的观Ҏ_服务h者是一个应用程序,它查找提供者ƈ初始化与提供
者的交互。这个角色可以由下列事物承担Q?br />   a使用web览器的人?br />   b没有用户界面的计实体,例如另外一个web服务?/p>

参与者的交互
1.发布Q提供者将服务信息发布到注册中心。发布机制有多种Q?br />   a直接?br />        服务提供者通过emailQFTP或者分发CD的方式,直接向服务提供者提供服务描q?br />在这U情况下没有注册中心Q请求者负责定位服务ƈ获取它们的描q?br />   bHTTP GETh
        服务h者直接用HTTP GETh直接从服务提供者处获取服务描述?br />q个模型使用了注册中心(公共的web资料库)http://www.xmethods.com
   c动态发?br />q种机制通过~程在本地和公共的注册中心中存储或者获取服务描q。在web服务世界中,
虽然有许多注册中心(例如ebXML{)Q然而最常用的却是UDDI。从字面上来_服务?br />供者是使用Ҏ的APIl来发布web服务描述的应用程序?br />2.服务定位Q发玎ͼ
   在这U情况下Q服务请求者是一个用特DAPI集向公共或者私有注册中心查询服务描q的应用
   E序。这些查询采用定义良好的XML格式?br />3.l定
   l定交互设计服务提供者和服务h者,而注册中心是可选项?br />   l定是一个应用程序在使用服务描述生成消息q发送给服务提供者的q程中所做的事情?br />   Web服务描述文gQWSDL文gQ指定服务所支持的网l协议,用来讉K服务的APIQ以?br />   与请求者用服务相关的其它内容?/p>

gosyl 2006-04-21 19:43 发表评论
]]>
վ֩ģ壺 | Ӣ| | | ͼ| | ʦ| Ȩ| ʯ| | | | ͨ| | | Ϫ| | | ̨| ƽ˳| | | | | ϻ| | ά| ̨| ֺ| Ϫ| Ӷ| | | | Ұ| | | | ˮ| ľ| ʼ|