﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><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>BlogJava-JAVA学习之路-文章分类-Struts专题</title><link>http://www.blogjava.net/joaquin25/category/27825.html</link><description /><language>zh-cn</language><lastBuildDate>Wed, 05 Dec 2007 20:36:58 GMT</lastBuildDate><pubDate>Wed, 05 Dec 2007 20:36:58 GMT</pubDate><ttl>60</ttl><item><title>用Eclipse+MyEclipse开发struts的一个经典的实例</title><link>http://www.blogjava.net/joaquin25/articles/165218.html</link><dc:creator>joaquin25</dc:creator><author>joaquin25</author><pubDate>Tue, 04 Dec 2007 07:41:00 GMT</pubDate><guid>http://www.blogjava.net/joaquin25/articles/165218.html</guid><wfw:comment>http://www.blogjava.net/joaquin25/comments/165218.html</wfw:comment><comments>http://www.blogjava.net/joaquin25/articles/165218.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/joaquin25/comments/commentRss/165218.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/joaquin25/services/trackbacks/165218.html</trackback:ping><description><![CDATA[<table width="100%" border="0">
    <tbody>
        <tr>
            <td>
            <p>[转载]<br />
            <br />
            简介：<br />
            文本主要介绍用myeclipse的struts designer（图形化开发环境）开发一个简单的用户登录程序片段。<br />
            主要包括2个jsp文件、一个ActionForm、一个Action等其它<br />
            userLogin.jsp(用户登录及错误提示页面) userLoginSuccess.jsp(提示登录成功页面)<br />
            UserLoginForm.java(ActionForm,存放用户提交信息)<br />
            UserLoginAction.java(Action,简单的处理用户登录事件) <br />
            </p>
            </td>
        </tr>
        <tr>
            <td></td>
        </tr>
        <tr>
            <td>开始吧</td>
        </tr>
        <tr>
            <td>
            <p>首先我们先建立一个j2ee的web project.如图1:<br />
            <img height="500" alt="o_1.JPG" src="http://www.blogjava.net/images/blogjava_net/hexuzhong/2034/o_1.JPG" width="525" border="0" /></p>
            </td>
        </tr>
    </tbody>
</table>
<br />
点击next,Project name输入LoginDemo,其余保持默认,点击finish.<br />
在package explorer下,就可以看到我们的项目了,然后给这个项目添加Struts框架必要的文件.在我们项目名上点击右键,选择MyEclipes --&gt; Add Struts Capabilities...弹出对话框图2：<br />
<img height="442" alt="o_2.JPG" src="http://www.blogjava.net/images/blogjava_net/hexuzhong/2034/o_2.JPG" width="719" border="0" /><br />
其中<span class="style1"><font color="#0000ff">Struts config path</font></span>就是我们的struts配置文件，<span class="style1"><font color="#0000ff">URL pattern</font></span>我们选择*.do，<span class="style1"><font color="#0000ff">Default application resource</font></span>为我们默认的资源文件地方，你可以选择它的存储位置，我们在这里保持默认。点击Finish后，项目结构类似于图3：<br />
<img height="644" alt="o_3.JPG" src="http://www.blogjava.net/images/blogjava_net/hexuzhong/2034/o_3.JPG" width="297" border="0" /><br />
<p>现在就来开始我们的例子吧。首先修改/WEB-INF/web.xml文件,为其添加标签库(在使用中发现，不添加也能成功。但为了保持书上一致，还是添加安全些。hoho~~)将下面代码添加至 &lt;/webapp&gt; 上面：<br />
<br />
&lt;jsp-config&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;taglib&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;taglib-uri&gt;/tags/struts-bean&lt;/taglib-uri&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;taglib-location&gt;/WEB-INF/struts-bean.tld&lt;/taglib-location&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;/taglib&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;taglib&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;taglib-uri&gt;/tags/struts-html&lt;/taglib-uri&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;taglib-location&gt;/WEB-INF/struts-html.tld&lt;/taglib-location&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;/taglib&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;taglib&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;taglib-uri&gt;/tags/struts-logic&lt;/taglib-uri&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;taglib-location&gt;/WEB-INF/struts-logic.tld&lt;/taglib-location&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;/taglib&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;taglib&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;taglib-uri&gt;/tags/struts-nested&lt;/taglib-uri&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;taglib-location&gt;/WEB-INF/struts-nested.tld&lt;/taglib-location&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;/taglib&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;/jsp-config&gt;<br />
完成后，打开<span class="style1"><font color="#0000ff">struts-config.xml</font></span>文件，点击这个界面左下角的<span class="style1"><font color="#0000ff">Design</font></span>进入可视化设计界面。有没有注意右边的<span class="style1"><font color="#0000ff">Palette</font></span> :) 点击它，让我们来开始我们的jsp页面设计。我们先建立userLoginSuccess.jsp文件，为啥先建这一个呢？等下就知道了，在myeclipse中可以一次性把我们的Action,ActionForm,Jsp文件一次建好（将三个有关联的文件等下创建）。<br />
点击<span class="style1"><font color="#0000ff">Palette</font></span>面版上的创建JSP文件图标,弹出创建JSP文件面板。图4：<br />
<img height="404" alt="o_4.JPG" src="http://www.blogjava.net/images/blogjava_net/hexuzhong/2034/o_4.JPG" width="525" border="0" /><br />
<table width="100%" border="0">
    <tbody>
        <tr>
            <td>
            <p>在<span class="style1"><font color="#0000ff">File Name</font></span>里输入userLoginSuccess.jsp，<span class="style1"><font color="#0000ff">Template to use</font></span>选择2] Standard JSP using Struts 1.1,点击Finish完成。<br />
            完成后，struts-config.xml文件自动被更新，可视化界在上也出现了刚新建的JSP模块。新建的jsp文件也被打开了。<br />
            覆盖所有的&lt;%@ taglib ...... 为我们开始在/WEB-INF/web.xml中定义的：</p>
            <p>&lt;%@ taglib uri="/tags/struts-html" prefix="html"%&gt;<br />
            &lt;%@ taglib uri="/tags/struts-bean" prefix="bean"%&gt;<br />
            &lt;%@ taglib uri="/tags/struts-logic" prefix="logic"%&gt; <br />
            <br />
            然后在&lt;body&gt;&lt;/body&gt;中添加:<br />
            Hello &lt;bean:write name="userName" scope="request" /&gt; .<br />
            这里将request中的属性userName输出在页面上，所以等下我们在UserLoginAction中，登录成功后要设置一个相关属性。</p>
            </td>
        </tr>
        <tr>
            <td>
            <p>OK,下面来开始我们最后三个文件的设计吧。在<span class="style1"><font color="#0000ff">Struts-config.xml</font></span>的<span class="style1"><font color="#0000ff">Design</font></span>模式中，在画版的空白区域点右键，选择<span class="style1"><font color="#0000ff">New</font></span> --&gt; New <span class="style1"><font color="#0000ff">Form, Action and JSP</font></span> 弹出ActionForm的选项面板，我们按图上输入相关值，图5：<br />
            <img height="606" alt="o_5.JPG" src="http://www.blogjava.net/images/blogjava_net/hexuzhong/2034/o_5.JPG" width="615" border="0" /></p>
            </td>
        </tr>
    </tbody>
</table>
</p>
在<span class="style1"><font color="#0000ff">Optional Details</font></span>的<span class="style1"><font color="#0000ff">Form Properties</font></span>选项卡，点<span class="style1"><font color="#0000ff">add</font></span>为这个ActionForm添加相关值，在这个登录示例中，将添加两个属性userName和password，图6：<br />
<img height="212" alt="o_6.JPG" src="http://www.blogjava.net/images/blogjava_net/hexuzhong/2034/o_6.JPG" width="394" border="0" /><br />
在添加password时，注意将<span class="style1"><font color="#0000ff">JSP input type</font></span> 下拉框选择password. <br />
完成这步后，我们就将ActionForm设计完成。<br />
接下来选择 <span class="style1"><font color="#0000ff">Optional Details</font></span>的<span class="style1"><font color="#0000ff">JSP</font></span>选项卡,我们选中<span class="style1"><font color="#0000ff">Create JSP form?</font></span> 这一步myeclipse将为我们创建一个简单的与用户交互的登录页面。保持内容和图7一样。图7：<br />
<img height="153" alt="o_7.JPG" src="http://www.blogjava.net/images/blogjava_net/hexuzhong/2034/o_7.JPG" width="579" border="0" /><br />
因为我们这只是简单的演示一个登录片段，所以不用验证用户信息是否合法，所以将 <span class="style1"><font color="#0000ff">Option Details</font></span>的<span class="style1"><font color="#0000ff">method</font></span>选项卡的新建方法去掉，如图8：<br />
<img height="153" alt="o_8.JPG" src="http://www.blogjava.net/images/blogjava_net/hexuzhong/2034/o_8.JPG" width="579" border="0" /><br />
点Next，进入Action选项面板.将<span class="style1"><font color="#0000ff">Option Details</font></span>的<span class="style1"><font color="#0000ff">Form</font></span>选项卡中<span class="style1"><font color="#0000ff">Validate Form</font></span>取消选择，如图9：<br />
<img height="606" alt="o_9.JPG" src="http://www.blogjava.net/images/blogjava_net/hexuzhong/2034/o_9.JPG" width="615" border="0" /><br />
然后在<span class="style1"><font color="#0000ff">Forwards</font></span>选项卡中点<span class="style1"><font color="#0000ff">add</font></span>添加成功和失败返回的页面.如图10：<br />
<img height="172" alt="o_10.JPG" src="http://www.blogjava.net/images/blogjava_net/hexuzhong/2034/o_10.JPG" width="587" border="0" /><br />
点击Finish完成。在<span class="style1"><font color="#0000ff">Struts-config.xml</font></span>的<span class="style1"><font color="#0000ff">Design</font></span>中，可以看到图11所示：<br />
<img height="491" alt="o_11.JPG" src="http://www.blogjava.net/images/blogjava_net/hexuzhong/2034/o_11.JPG" width="670" border="0" /><br />
最后，简单的修改一下userLogin.jsp,将所有&lt;%@ taglib ...%&gt;替换为：<br />
&lt;%@ taglib uri="/tags/struts-html" prefix="html"%&gt;<br />
&lt;%@ taglib uri="/tags/struts-bean" prefix="bean"%&gt;<br />
修改UserLoginAction中的execute片段为如下所示，图12：<br />
<img height="334" alt="o_12.JPG" src="http://www.blogjava.net/images/blogjava_net/hexuzhong/2034/o_12.JPG" width="701" border="0" /><br />
<br />
<table width="100%" border="0">
    <tbody>
        <tr>
            <td>
            <p>OK，完成。。。下面就部暑项目，测试。。。</p>
            </td>
        </tr>
        <tr>
            <td>像为项目添加Struts框架一样，在项目名上右击，选择<span class="style1"><font color="#0000ff">MyEclipse</font></span> --&gt; <span class="style1"><font color="#0000ff">Add and Remove Project development</font></span>.<br />
            在弹出对话框上，单击<span class="style1"><font color="#0000ff">add</font></span> ，在弹出的 <span class="style1"><font color="#0000ff">New Deployment</font></span> 对话框上，<span class="style1"><font color="#0000ff">Server</font></span>选Tomcat5，点击Finish完成部署，如图13:<br />
            <img height="436" alt="o_13.JPG" src="http://www.blogjava.net/images/blogjava_net/hexuzhong/2034/o_13.JPG" width="525" border="0" /><br />
            <table width="100%" border="0">
                <tbody>
                    <tr>
                        <td>在用浏览器上打开：http://127.0.0.1:8080/LoginDemo/userLogin.jsp</td>
                    </tr>
                    <tr>
                        <td>输入密码123456,用户名EricHe。显示成功：<br />
                        </td>
                    </tr>
                </tbody>
            </table>
            <img height="270" alt="o_14.JPG" src="http://www.blogjava.net/images/blogjava_net/hexuzhong/2034/o_14.JPG" width="342" border="0" /><br />
            <table width="100%" border="0">
                <tbody>
                    <tr>
                        <td>如果输错，或不输入，则无反映又回到当前登录页面（因为我们没有设置错误信息）。</td>
                    </tr>
                </tbody>
            </table>
            </td>
        </tr>
    </tbody>
</table>
<img src ="http://www.blogjava.net/joaquin25/aggbug/165218.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/joaquin25/" target="_blank">joaquin25</a> 2007-12-04 15:41 <a href="http://www.blogjava.net/joaquin25/articles/165218.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>