首页 > 代码库 > struts入门第二结

struts入门第二结

一、利用struts标签库

1、导入标签库:<%@ taglib prefix="s" uri="/struts-tags"  %>


2、主要为from表单:

    <s:form action="fromAct" method="post" namespace="/from">

        <s:textfield name="name"  id="name" label="姓名"></s:textfield>

    

     <s:password name="password"  id="password"  label="密码"                             tooltip="请输入密码"  maxlength="15"></s:password>

    

     <s:textfield name="age"  id="age" label="年龄"></s:textfield>

    

     <s:select list="{‘成都‘,‘昆明‘ }" name="address.province"  headerKey="0"                headerValue="http://www.mamicode.com/请选择省" lable="省"></s:select><br/>


     <s:select list="{‘双流‘,‘呈贡‘ }" name="address.city"  headerKey="0"                      headerValue="http://www.mamicode.com/请选择市" lable="市"></s:select>

    

     <s:submit  value="http://www.mamicode.com/注册"></s:submit>

    </s:form>

    建议:表单内的name属性最好和Action类的成员变量相同

    可参考:http://blog.163.com/hzd_love/blog/static/131999881201082111852520/

二、struts在xml中的代码提示解决方法(我用的2.1.8版本)

   1.首先在struts中搜索struts-2.0.dtd文件

   2.在设置preferences——Files and Editors——xml——xml Catalog中设置,location中填        入: struts-2.0.dtd文件的路径,keytype中选择uri,key                  填http://struts.apache.org/dtds/struts- 2.0.dtd(从struts.xml复制的)


三、路径的访问顺序

   1、先找自己的命名的命名空间,找不到再默认空间

   2、namespace="/"和默认是一样的效果

   3、http://localhost:8080/Struts2/test/asdff/sasdfd/HelloWorld的访问的顺序是先在sasdfd      中HelloWorld这个Action,然后再到asdff中找,之后再找test中,这就是为什么只有test中有      HelloWorld的,但是输入面的地址仍然可以访问HelloWorld的原因。如果都找不到就只有到默      认的命名空间找。

四、包含配置:主要是为了不要将大篇幅的配置信息都写得struts.xml中和适应多人共同开发

<struts>

     <include file="struts-test.xml" />

     <include file="struts-from.xml" />

     <include file="struts-chain.xml" />

        <include file="struts-dispacher.xml" />

        <include file="struts-redirectT.xml" />

        <include file="struts-plainText.xml" />

        <include file="struts-global.xml" />

</struts>

五、开发模式:

开发中配置文件的更改,在访问时让框架自动重新加载:

struts.devMode = false(default.properties)

利用strutx.xml中的constant元素来覆盖掉default.properties默认行为,这样就避免了重复的发布问题,例如下:

    <struts>

     <constant name="struts.devMode" value="http://www.mamicode.com/true"></constant>

    </struts>

    

struts入门第二结