<?xml version="1.0" standalone="yes"?>
<?xml-stylesheet type="text/xsl" href="css/rss.xslt"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>WEB|WAP|网站建设|网站设计|网站制作|网站开发 - JSP</title><link>http://www.hzzhit.com/blog/</link><description>兆合信息：专业的网站建设和网站制作公司 - </description><generator>RainbowSoft Studio Z-Blog 1.8 Arwen Build 81206</generator><language>zh-CN</language><copyright>Copyright 2008-2009 杭州兆合信息技术有限公司. All Rights Reserved.</copyright><pubDate>Tue, 07 Sep 2010 05:44:29 +0800</pubDate><item><title>Apache2.2和Tomcat6整合</title><author>a@b.com (shine)</author><link>http://www.hzzhit.com/blog/JSP/135.html</link><pubDate>Fri, 18 Jun 2010 08:59:35 +0800</pubDate><guid>http://www.hzzhit.com/blog/JSP/135.html</guid><description><![CDATA[<p style="text-indent: 2em">Apache和Tomcat同是Apache基金会下面的两个项目。</p><p style="text-indent: 2em">　　一个是HTTP WEB服务器，另一个是servlet容器（servlet container），最新的6.0.X系列实现Servlet 2.4/JSP 2.0Spec。在我们生产的环境中，往往需要Apache做前端服务器，Tomcat做后端服务器。此时我们就需要一个连接器，这个连接器的作用就是把 所有Servlet/JSP的请求转给Tomcat来处理。在Apache2.2之前，一般有两个组件可选择。mod_jk和mod_jk2。后来 mod_jk2没更新了，转而更新mod_jk，所以现在一般都使用mod_jk做Apache和Tomcat的连接器。要指出的是mod_jk支持 Apache 1.x和2.X系列。</p><p style="text-indent: 2em">　　不过，自从Apache2.2出来后，你又多了种选择，那就是proxy-ajp.大家知道Apache里的proxy模块，可以实现双向代理功能，功能 非常强大。其实从连接器的实现原理上来说，用proxy模块来实现是非常自然的。proxy模块的功能无非就是把相关的请求发给特定的主机再返回结果。那 连接器的功能需求就是要把所有对Servlet/JSP的请求都转给后台的Tomcat。而且所FreeBSD邮件列表上说，使用proxy-ajp要比 mod_jk的效率要高。就我一个外行来看，至少使用Apache自带模块，要比另外编译的来得可靠。</p><p style="text-indent: 2em">　　apache2.2和tomcat5.5是一个不错的组合，可以作为开发环境或者是工作服务器。在配置前需要下载以下几个文件：</p><p style="text-indent: 2em">1.下载JDK：版本jdk1.6.0_10.exe</p><p style="text-indent: 2em">2.下载apache2.2：版本：apache_2.2.11-win32-x86-no_ssl.msi&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; http://httpd.apache.org/</p><p style="text-indent: 2em">　3.下载tomcat6 ：版本apache-tomcat-6.0.18.exe</p><p style="text-indent: 2em">　　一、安装和配置JDK</p><p style="text-indent: 2em">　　JDk的安装（参照Jsp开发环境配置.doc），但一定不要忘了设环境变量。</p><p style="text-indent: 2em">　　二、安装和测试apache</p><p style="text-indent: 2em">　　在安装前如已安装了IIS，请先停止IIS服务。因为IIS和apache都默认使用80端口，否则会冲突。</p><p style="text-indent: 2em">　　同样直接运行安装apache_2.2.11-win32-x86-no_ssl.msi，建议选择简单的路径，如D:\ apache2.2。安装时会要求输入一些关于这台服务器的信息，如域名、管理员邮箱，这些信息将会加入到httpd.conf文件中。</p><p style="text-indent: 2em">　　安装完配置httpd.conf文件，在D\:apache2.2\conf下</p><p style="text-indent: 2em">　　用文本编缉器打开httpd.conf,在DirectoryIndex index.html后添加index.jsp</p><p style="text-indent: 2em">　　测试，在IE中输入http://localhost/,如果apache工作应该可以看到&quot;It works!&quot;这样的页面。</p><p style="text-indent: 2em">　　三、安装和测试tomcat</p><p style="text-indent: 2em">　　直接运行安装tomcat,安装路径为D:\tomcat 6.0</p><p style="text-indent: 2em">　　安装完后添加环境变量TOMCAT_HOME,变量值为&quot;D:\Tomcat 6.0&quot;（参照Jsp开发环境配置.doc）最后测试tomcat，因为tomcat默认使用了8080端口，所以在IE输入http://localhost:8080,正常工作会看见一只小猫的页面。</p><p style="text-indent: 2em">　　四、整合apache和tomcat</p><p style="text-indent: 2em">　　网上很多是通过mod_jk来整合的，由于apache2.2本身已经支持tomcat了，所以这里用proxy来整合tomcat，先把apache和tomcat都停止了。然后打开(d:\apache2.2\conf)httpd.conf文件，把</p><p style="text-indent: 2em">　　LoadModule proxy_module modules/mod_proxy.so</p><p style="text-indent: 2em">　　LoadModule proxy_ajp_module modules/mod_proxy_ajp.so</p><p style="text-indent: 2em">　　前面的#号去掉，在httpd.conf文件最后添加</p><p style="text-indent: 2em">　　ProxyPass /images/ !</p><p style="text-indent: 2em">　　ProxyPass / ajp://127.0.0.1:8009/</p><p style="text-indent: 2em">　　ProxyPassReverse / ajp://127.0.0.1:8009/</p><p style="text-indent: 2em">　　上面几名只是对apache进行简单的优化。</p><p style="text-indent: 2em">　　五、最后测试整合后的apache+tomcat</p><p style="text-indent: 2em">　　启动apache，再启动tomcat,准备以下代码的jsp文件，以便测试。</p><p style="text-indent: 2em">&lt;%@ page contentType=&quot;text/html;charset=gb2312&quot; %&gt;</p><p style="text-indent: 2em">&lt;HTML&gt;</p><p style="text-indent: 2em">&lt;HEAD&gt;</p><p style="text-indent: 2em">&lt;TITLE&gt;JSP测试页面&lt;/TITLE&gt;</p><p style="text-indent: 2em">&lt;/HEAD&gt;</p><p style="text-indent: 2em">&lt;BODY&gt;</p><p style="text-indent: 2em">&lt;%out.println(&quot;&lt;h1&gt;Hello World! &lt;/h1&gt;&quot;);%&gt;</p><p style="text-indent: 2em">&lt;/BODY&gt;</p><p style="text-indent: 2em">&lt;/HTML&gt;</p><p style="text-indent: 2em">　　保存为test.jsp</p><p style="text-indent: 2em">　　在D:\tomcat 6.0\webapps\ROOT下新建一个文件夹test,并把test.jsp放在里面。</p><p style="text-indent: 2em">　　在IE中输入http://localhost:8080/test/test.jsp</p><p style="text-indent: 2em">　　再输入http://localhost/test/test.jsp</p><p style="text-indent: 2em">　　如果两次都显示Hello World!说明已经成功整合了。</p>]]></description><category>JSP</category><comments>http://www.hzzhit.com/blog/JSP/135.html#comment</comments><wfw:comment>http://www.hzzhit.com/blog/</wfw:comment><wfw:commentRss>http://www.hzzhit.com/blog/feed.asp?cmt=135</wfw:commentRss><trackback:ping>http://www.hzzhit.com/blog/cmd.asp?act=tb&amp;id=135&amp;key=65b98fe2</trackback:ping></item><item><title>JSP环境建立</title><author>a@b.com (shine)</author><link>http://www.hzzhit.com/blog/JSP/JSP-HUANJING.html</link><pubDate>Fri, 03 Jul 2009 23:20:20 +0800</pubDate><guid>http://www.hzzhit.com/blog/JSP/JSP-HUANJING.html</guid><description><![CDATA[<p>第一步：下载j2sdk和tomcat： <br /><br />第二步：安装和配置你的j2sdk和tomcat：执行j2sdk和tomcat的安装程序，然后按默认设置进行安装即可。 <br /><br />1.安装j2sdk以后，需要配置一下环境变量，在我的电脑-&gt;属性-&gt;高级-&gt;环境变量-&gt;系统变量中添加以下环境变量(假定你的j2sdk安装在c:\j2sdk1.4.2）： <br /><br />JAVA_HOME=E:\J2sdk1.4.2 <br /><br />classpath=.;E:\J2sdk1.4.2\lib\dt.jar;E:\J2sdk1.4.2\lib\tools.jar;（.;一定不能少，因为它代表当前路径) <br /><br />path=E:\J2sdk1.4.2\bin <br /><br />接着可以写一个简单的java程序来测试J2SDK是否已安装成功： <br /><br />public class Test{ <br />public static void main(String args[]){ <br />System.out.println(&quot;This is a test program.&quot;); <br />} <br />} <br /><br />将上面的这段程序保存为文件名为Test.java的文件。 <br />然后打开命令提示符窗口，cd到你的Test.java所在目录，然后键入下面的命令&nbsp; <br />javac Test.java <br />java Test&nbsp; <br />此时如果看到打印出来This is a test program.的话说明安装成功了，如果没有打印出这句话，你需要仔细检查一下你的配置情况。 <br /><br />2.安装Tomcat后，在我的电脑-&gt;属性-&gt;高级-&gt;环境变量-&gt;系统变量中添加以下环境变量(假定你的tomcat安装在c:\tomcat）： <br /><br />CATALINA_HOME=c:\tomcat; <br /><br />CATALINA_BASE=c:\tomcat; <br /><br />然后修改环境变量中的classpath，把tomat安装目录下的common\lib下的servlet.jar追加到classpath中去，修改后的classpath如下： <br />classpath=.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;%CATALINA_HOME%\common\lib\servlet.jar; <br />接着可以启动tomcat，在IE中访问<a href="http://localhost:8080/" target="_blank">http://localhost:8080</a>，如果看到tomcat的欢迎页面的话说明安装成功了。 <br /><br />第三步：建立自己的jsp app目录 <br /><br />1.到Tomcat的安装目录的webapps目录，可以看到ROOT，examples, tomcat-docs之类Tomcat自带的的目录； <br /><br />2.在webapps目录下新建一个目录，起名叫myapp； <br /><br />3.myapp下新建一个目录WEB-INF，注意，目录名称是区分大小写的； <br /><br />4.WEB-INF下新建一个文件web.xml，内容如下： <br />&lt;?xml version=&quot;1.0&quot; encoding=&quot;ISO-8859-1&quot;?&gt; <br /><br />&lt;!DOCTYPE web-app <br />PUBLIC &quot;-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN&quot; <br />&quot;<a href="http://java.sun.com/dtd/web-app_2_3.dtd" target="_blank">http://java.sun.com/dtd/web-app_2_3.dtd</a>&quot;&gt; <br /><br />&lt;web-app&gt; <br />&lt;display-name&gt;My Web Application&lt;/display-name&gt; <br />&lt;description&gt; <br />A application for test. <br />&lt;/description&gt; <br />&lt;/web-app&gt; <br /><br />5.在myapp下新建一个测试的jsp页面，文件名为index.jsp，文件内容如下： <br />&lt;html&gt;&lt;body&gt;&lt;center&gt; <br />Now time is: &lt;%=new java.util.Date()%&gt; <br />&lt;/center&gt;&lt;/body&gt;&lt;/html&gt; <br /><br />6.重启Tomcat <br /><br />7.打开浏览器，输入<a href="http://localhost:8080/myapp/index.jsp" target="_blank">http://localhost:8080/myapp/index.jsp</a> 看到当前时间的话说明就成功了。 <br /><br />第四步：建立自己的Servlet： <br /><br />1.用你最熟悉的编辑器（建议使用有语法检查的java IDE）新建一个servlet程序，文件名为Test.java，文件内容如下： <br /><br />package test; <br />import java.io.IOException; <br />import java.io.PrintWriter; <br />import javax.servlet.ServletException; <br />import javax.servlet.http.HttpServlet; <br />import javax.servlet.http.HttpServletRequest; <br />import javax.servlet.http.HttpServletResponse; <br />public class Test extends HttpServlet { <br />protected void doGet(HttpServletRequest request, HttpServletResponse response) <br />throws ServletException, IOException { <br />PrintWriter out=response.getWriter(); <br />out.println(&quot;&lt;html&gt;&lt;body&gt;&lt;h1&gt;This is a servlet test.&lt;/h1&gt;&lt;/body&gt;&lt;/html&gt;&quot;); <br />out.flush(); <br />} <br />} <br /><br />2 .编译 <br />将Test.java放在c:\test下，使用如下命令编译： <br />C:\Test&gt;javac Test.java <br />然后在c:\Test下会产生一个编译后的servlet文件：Test.class <br /><br />3 .将结构test\Test.class剪切到%CATALINA_HOME%\webapps\myapp\WEB-INF\classes下，也就是剪切那个test目录到classes目录下，如果classes目录不存在，就新建一个。 现在webapps\myapp\WEB-INF\classes下有test\Test.class的文件目录结构 <br /><br />4 .修改webapps\myapp\WEB-INF\web.xml，添加servlet和servlet-mapping <br />编辑后的web.xml如下所示，两横线之间为添加的内容: <br />&lt;?xml version=&quot;1.0&quot; encoding=&quot;ISO-8859-1&quot;?&gt; <br /><br />&lt;!DOCTYPE web-app <br />PUBLIC &quot;-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN&quot; <br />&quot;<a href="http://java.sun.com/dtd/web-app_2_3.dtd" target="_blank">http://java.sun.com/dtd/web-app_2_3.dtd</a>&quot;&gt; <br /><br />&lt;/web-app&gt; <br />&lt;display-name&gt;My Web Application&lt;/display-name&gt; <br />&lt;description&gt; <br />A application for test. <br />&lt;/description&gt; <br />------------------------------------------------------------------------<br />&lt;servlet&gt; <br />&lt;servlet-name&gt;Test&lt;/servlet-name&gt; <br />&lt;display-name&gt;Test&lt;/display-name&gt; <br />&lt;description&gt;A test Servlet&lt;/description&gt; <br />&lt;servlet-class&gt;test.Test&lt;/servlet-class&gt; <br />&lt;/servlet&gt; <br /><br />&lt;servlet-mapping&gt; <br />&lt;servlet-name&gt;Test&lt;/servlet-name&gt; <br />&lt;url-pattern&gt;/Test&lt;/url-pattern&gt; <br />&lt;/servlet-mapping&gt; <br />------------------------------------------------------------------------<br />&lt;/web-app&gt; <br />这段话中的servlet这一段声明了你要调用的Servlet，而servlet-mapping则是将声明的servlet&ldquo;映射&rdquo;到地址/Test上 <br /><br />5 .好了，启动Tomcat，启动浏览器，输入<a href="http://localhost:8080/myapp/Test" target="_blank">http://localhost:8080/myapp/Test</a> 如果看到输出This is a servlet test.就说明编写的servlet成功了。<br />－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－<br />重要重要：如果以后要添加新的servlet,只需要复制上面一段，将相应的servlet-name、servlet-class（servlet使用了包结构的话，需指出class文件所在的的包）、url-pattern（必须）修改为新的servlet相应属性就OK了。<br />－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－<br />注意：修改了web.xml以及新加了class，都要重启Tomcat 。（但似乎只要刷新一下就行了。）<br /><br />第四步：建立自己的Bean： <br /><br />1.用你最熟悉的编辑器（建议使用有语法检查的java IDE）新建一个java程序，文件名为TestBean.java，文件内容如下： <br />package test; <br />public class TestBean{ <br />private String name = null; <br />public TestBean(String strName_p){ <br />this.name=strName_p; <br />}&nbsp; <br />public void setName(String strName_p){ <br />this.name=strName_p; <br />} <br />public String getName(){ <br />return this.name; <br />}&nbsp; <br />} <br /><br />2 .编译 <br />将TestBean.java放在c:\test下，使用如下命令编译： <br />C:\Test&gt;javac TestBean.java <br />然后在c:\Test下会产生一个编译后的bean文件：TestBean.class <br /><br />3 .将TestBean.class文件剪切到 %CATALINA_HOME%\webapps\myapp\WEB-INF\classes\test下， <br /><br />4 .新建一个TestBean.jsp文件，文件内容为： <br />&lt;%@ page import=&quot;test.TestBean&quot; %&gt;&nbsp; <br />&lt;html&gt;&lt;body&gt;&lt;center&gt; <br />&lt;% <br />TestBean testBean=new TestBean(&quot;This is a test java bean.&quot;); <br />%&gt; <br />Java bean name is: &lt;%=testBean.getName()%&gt; <br />&lt;/center&gt;&lt;/body&gt;&lt;/html&gt;&nbsp; <br /><br />5 .好了，重启Tomcat，启动浏览器，输入<a href="http://localhost:8080/myapp/TestBean.jsp" target="_blank">http://localhost:8080/myapp/TestBean.jsp</a> 如果看到输出Java bean name is: This is a test java bean.就说明编写的Bean成功了。 <br /><br />这样就完成了整个Tomcat下的jsp、servlet和javabean的配置。接下来需要做的事情就是多看书、多读别人的好代码，自己多动手写代码以增强自己在这方面开发的能力了。</p>]]></description><category>JSP</category><comments>http://www.hzzhit.com/blog/JSP/JSP-HUANJING.html#comment</comments><wfw:comment>http://www.hzzhit.com/blog/</wfw:comment><wfw:commentRss>http://www.hzzhit.com/blog/feed.asp?cmt=83</wfw:commentRss><trackback:ping>http://www.hzzhit.com/blog/cmd.asp?act=tb&amp;id=83&amp;key=d4f55f23</trackback:ping></item></channel></rss>
