我估计也是这样的。
但有不同:
“系统初始化exampleForm,根据该exampleForm中的set方法,将search_m中的html元素取得”:
根据jsp页面上的struts的html标签,将这个标签对应的属性值写入刚初始化完的exampleForm实例中。
但有不同:
“系统初始化exampleForm,根据该exampleForm中的set方法,将search_m中的html元素取得”:
根据jsp页面上的struts的html标签,将这个标签对应的属性值写入刚初始化完的exampleForm实例中。
解决方案 »
- 高手帮忙看下吧!Myeclipse中添加不了Junit
- Transaction tran = dao.getSession().beginTransaction();报错
- 怎么感觉代码全在构造函数里
- proxool连oracle长时间没用,会Io 异常: Connection reset oracle
- [color=#FF0000]跟[/color] [<征集>]关于项目开发后期才日志记录的解决方案。
- <%@include file=""%>和<jsp:include>哪个速度快些?
- 请用过appfuse程序的大侠进来看看!谢谢!
- hibernate只能查询不能写数据库
- 求教:只有一台服务器,不是分布式系统,用ejb还有优势吗?是不是和jsp+javabean一样了?
- 创建一个普通的Mybatis程序报错 Communications link failure
- struts中的小问题
- Why XSLT can't transform CDATA which contains a blank String
是这样的,否则会报错!它同时遵守jsp标签和JavaBean规范。
1、<html:form>是Struts自定义标签,它的处理一是把Bean变量加入Form中;二是产生一些Javascript,如Javascript数据验证等;三是生成标准<form>输出。
2、在一些场合里,<html:form>中的name不一定在配置文件中有对应的name
3、如果,<html:form>中的Bean要用配置是的Bean,那么两者的name名一定要是一至的,否则谁知道谁呢?但是,这个name是定义的Bean名,并不是Bean中的属性,不需要setName()和getName。
4、excute()中的参数ActionForm就是用户提交的表单中的Bean,也就是form。但并不是最初的初始化时的值了。
5、查询数据库时,可以用ActionForm保存数据,但这时与你要用户提交数据时的ActionForm是不同的。所以,通常另定义一个Bean类来保存数据库查询结果。
6、action=main.do?action=example中的action=example并不是默认地表示返回哪一页,action=通常用来传递事件类型或操作类型。只不过你这里正好是把action=example与Action配置项中的<forward>配置成一样的。通过在<forward>中可定义几个页面,在excute()中根据不同的情况转发到不同的页面,有时还定义了输入页面,excute()中有操作不成功时,让它返回输入页面。
7、如果为了方便和快速,开发Struts建议采用JSPStudio开发工具。
1、你说道<html:form>是struts的自定义标签:我在jsp页面中,还是使用html的标准元素<form></form>,没有使用struts的form标签,这有不妥的地方么?
2、不是很看的明白你指的name是哪个name
3、你指的name是不是指<bean:define id="carBrands" name="carBrandList" type="com.list.CarBrandList"/>中的name?
我指的name是指在jsp页面上<form></form>中定义的html元素的name,诸如
<select name="aaa"></select>和<input type="text" name="bbb">中的name
4、你最后说道不是最初的初始化的值了:我的理解是初始化的form作为参数传递到excute方法的时候,已经经过后台处理,并形成一个经过set方法的form,究竟set哪些值是看jsp页面被提交的<form></form>里定义了哪些html元素决定的。我不是很理解你说的初始化的form到底是怎么样的一个form?能再解释一下么?
5、这点我知道的呵呵。传递到excute参数的form主要是用于传递页面参数,至于查询结果肯定是要new一个诸如ArrayList这样的一个list,填装ResultSet的返回值后,再返回给调用者的直至最后页面的呈现。
6、这点我也是知道的。可以在程序里通过Form.get("action")得到该action,然后通过反射调用与该action值同名的方法,然后方法返回一个forward的string值,该值必须能在struts-config.xml里相应的<action></action>里找到相应的forward跳转页面。
7、知道了,谢谢。