日期:2014-05-17  浏览次数:20842 次

servlet和JSP表单传递参数给javabean
现在我的javabean里面一个函数需要一个参数值
public String ShowJS(String search) 【类名:JobSearch】

之前我在servlet中传递参数给javabean都是直接使用对象或函数本身就是静态函数,如上面的情况,
String search = new String(request.getParameter("search").getBytes("ISO8859-1"),"UTF-8");
JobSearch js = new JobSearch();
js.ShowJS(search);
这样就可以直接传递参数进去javabean了


可现在我要在jsp中调用此函数
<jsp:useBean id="HJS" class="zpw.JobSearch" scope="page" />
<%=HJS.ShowJS() %> 【没有传递参数】
参数传递就成为一个问题了。。。。。
注:该参数由JSP页面中的表单控件的内容产生。

我本来试过把javabean里面的参数改成 类的成员变量
String search="";
public String ShowJS()
这样在JSP页面不用参数直接 <%=HJS.ShowJS() %> 就可以调用该函数了,而且JSP页面把表单值(即所需的参数)发送到servlet中,servlet只要把该值发送到javabean就解决问题了。

可怎么把servlet接收到的值发送到javabean?我试过
String search = new String(request.getParameter("search").getBytes("ISO8859-1"),"UTF-8");
JobSearch js = new JobSearch();  
js.setSearch(search);
可仔细一想,js对象跟JSP中的HJS对象根本就是2个对象,set一个参数又有何用呢。。。。

貌似在javabean页面中又用不了session,request那些传递参数,此问题如何解决????
这问题简单的描述就是:在JSP页面调用javabean中的一个函数,该函数需要一个参数(或变量吧),此参数由JSP页面表单控件中获得。(问题在于如何把JSP页面表单控件中获得的值传到javabean的函数中)

------解决方案--------------------
方法写到 Action 中呀,表单传值的时候用 actionForm,此处正是零散写法的表现,建议使用框架。
SSH。
------解决方案--------------------
没看明白,你想把jsp的值传进javabean请求过去不就行了? struts2有个对象可以在javabean获取session的值
------解决方案--------------------
规范点使用框架不会有什么问题,最多就是一个页面出现多个请求,比如注册验证重名等等,这些可以用ajax,SSH框架 看看吧LZ