站内搜索: 请输入搜索关键词

当前页面: 开发资料首页Eclipse 专题Eclipse3.0.1+Myeclipse3.8.2+tomcat5开发第一个struts应用(实战篇)

Eclipse3.0.1+Myeclipse3.8.2+tomcat5开发第一个struts应用(实战篇)

摘要: Eclipse3.0.1+Myeclipse3.8.2+tomcat5开发第一个struts应用(实战篇)

配置好了,那么我们一起用MyEclipse来做一个小小的Struts应用吧。

1.新建Struts Project
FileNewProject
选择J2EEWeb Project,确定,起个名字,这里就叫demoStruts,然后Finish.

2.“升级”project
选中左边列表中你刚才建立的demoStruts工程,点击菜单栏MyEclipseAdd Struts Capabilities
设置属性,一般都默认,可以改下你的package的目录结构。“升级”后的project相当于struts-blank
的结构。

3.开始写程序,这些是我自己对程序的理解,可能不科学,不过应该可以让struts更好懂。
这个小程序判断输入的产品是否存在,并且出现2种不同的情况。
首先先说这2个xml配置文件。

web.xml
基本上不用动的,在MyEclipse里面还有design图,非常方便阅读。
如果你喜欢有个性,可以把servlet-mapping 里的url-pattern改为你喜欢的后缀,这里就不改了,嘿嘿。

struts-config.xml
这是struts里面最主要的配置文件,一定要细心的写,以前我少了个“/”,结果运行就出现问题了,惨啊!
初期这里最主要是定义<form-beans> .

<form-beans>是指定需要提交的表单需要送到哪里。
这里我们定义

是定义在程序里面需要跳转到哪个页面的。

也是定义跳转到什么页面,但不同的是程序在遇到*.do的情况下才会用

大家仔细看下也可以看到,如果程序逻辑运算后是alreadyExist,通过转向
failedIn.do,然后由于是*.do的形式,又要按 跳转到/alreadyExist.jsp。

把这些代码替换struts-config.xml里的相应部分吧,然后看看这个xml文件的design,非常清楚哦。


下面制作jsp文件。
在MyEclipse里面WebRoot下建立4个jsp文件。
第1个是首页和表单(index.jsp)。

<%@ page contentType="text/html;charset=GBK" language="java" %>
<%@ page import = "com.yourcompany.struts.*" %>
关于我们

<form action="inputProduct.do" method="post">
产品 I D:<input type="text" name="productId">

<input type=submit value="检测产品">
</form>

第2个文件是关于我们(aboutus.jsp)

<%@ page contentType="text/html;charset=GBK" language="java" %>

关于我们。。。。。。。。。。。。

第3个文件是如果里面有产品的情况,并显示产品属性。(alreadyExist.jsp)

<%@ page contentType="text/html; charset=GBK" language="java" %>

库内有此产品

产品ID:<%=beanProduct.getProductId()%>

产品名称:<%=beanProduct.getProductName()%>

第4个文件是显示库里面没有这样的产品(inputProduct.jsp)

<%@ page contentType="text/html; charset=GBK" language="java" %>
库内没有该产品!


最后是DemoForm和DemoAction
在src的com.yourcompany.struts下新建2个java文件
DemoForm.java

package com.yourcompany.struts;
import org.apache.struts.action.ActionForm;
public class DemoForm extends ActionForm{
private String productId="001";
private String productName="Structs程序";
public String getProductId(){return productId;}
public String getProductName(){return productName;}
public void setProductId(String productId){this.productId=productId;}
public void setProductName(String productName){this.productName=productName;}
}


DemoAction.java
package com.yourcompany.struts;
import java.util.Locale;
import javax.servlet.*;
import javax.servlet.http.*;
import org.apache.struts.action.*;
import org.apache.struts.util.MessageResources;
import com.yourcompany.struts.DemoForm;
public final class DemoAction extends Action{
public ActionForward execute
(ActionMapping mapping,ActionForm form,
HttpServletRequest request,
HttpServletResponse response)
throws Exception
{
Locale locale = getLocale(request);
MessageResources messages = getResources(request);
HttpSession session = request.getSession();
DemoForm demoform = (DemoForm) form;

if( "001".equals(demoform.getProductId()) )
return (mapping.findForward("failedIn"));
else return (mapping.findForward("inputProduct"));
}

}


程序准备就绪了,然后点击菜单上的Deploy J2EE project to server
选择demoStruts,点add.选择tomcat deploy.
就ok了,程序自动填加到了tomcat的webapps下。你可以启动tomcat用ie访问了或者
运行myeclipse里面的tomcat,然后用自带的WebBrowser运行程序。
http://localhost:8080/demoStruts/index.jsp
当输入001,那么就进入显示已有产品的页面,如果输入其他则提示没有这个产品。



↑返回目录
前一篇: 在eclipse中使用ant灵活构建web应用
后一篇: Eclipse3.0.1+Myeclipse3.8.2+tomcat5开发第一个struts应用(配置篇)