2種,get方式和post方式。
get方式是直接在連接后面帶上鍵值對(duì)一樣的東西:.html?鍵=值。
post的方式比較隱秘,一般我們用于form表單的提交。然后是跳轉(zhuǎn):request.getRequestDispatcher("abc").forward(request, response);這樣也可以帶參數(shù)過去,但是在servlet中 跳轉(zhuǎn)和重定向是有區(qū)別的,并且區(qū)別很大。
同時(shí),我們可以用Session來傳遞,這個(gè)在web開發(fā)中很關(guān)鍵的。
JSP全名為Java Server Pages,中文名叫java服務(wù)器頁面,其根本是一個(gè)簡化的Servlet設(shè)計(jì),它 是由Sun Microsystems公司倡導(dǎo)、許多公司參與一起建立的一種動(dòng)態(tài)網(wǎng)頁技術(shù)標(biāo)準(zhǔn)。
JSP技術(shù)有點(diǎn)類似ASP技術(shù),它是在傳統(tǒng)的網(wǎng)頁HTML(標(biāo)準(zhǔn)通用標(biāo)記語言的子集)文件(*.htm,*.html)中插入Java程序段(Scriptlet)和JSP標(biāo)記(tag),從而形成JSP文件,后綴名為(*.jsp)。 用JSP開發(fā)的Web應(yīng)用是跨平臺(tái)的,既能在Linux下運(yùn)行,也能在其他操作系統(tǒng)上運(yùn)行。
幾種JSP頁面?zhèn)髦捣绞剑?1. 隱藏域傳值: 三、JSP的include和forward標(biāo)簽 四、JavaScript方式 script type="text/javascript"> function demo(){ var v = document.all('username').value; location.replace("V.jsp?username="+v+"&age=25"); } </script> 。
1用<input>;輸入域 提交復(fù)參數(shù)
2request.setAttribute();在下個(gè)頁面制直接2113request.getAttribute()得到;
3.<jsp:forward="你要跳5261轉(zhuǎn)到得頁面">
<jsp:param>;你要傳遞的參數(shù)
4,用seesion
5.url?a=""&b="";
大概就4102這些吧 其他的1653不知道了
頁面的數(shù)據(jù)傳輸有 get方式和post方式。
get方式 是直接在連接后面帶上 鍵值對(duì)一樣的東西: .html?鍵=值
post的方式比較隱秘,一般我們用于form表單的提交。
然后是跳轉(zhuǎn): request.getRequestDispatcher("abc").forward(request, response);這樣也可以帶參數(shù)過去,但是在servlet中 跳轉(zhuǎn)和重定向是有區(qū)別的,并且區(qū)別很大。
同時(shí),我們可以用Session來傳遞,這個(gè)在web開發(fā)中很關(guān)鍵的。
你現(xiàn)在不理解的原因其實(shí)是 什么是jsp 它和servlet是什么關(guān)系。
這個(gè)問題如果你能理解清楚,我相信你就不會(huì)問頁面間的傳遞值得方式啦。
2種,get方式和post方式。
get方式是直接在連接后面帶上鍵值對(duì)一樣的東西:.html?鍵=值。 post的方式比較隱秘,一般我們用于form表單的提交。
然后是跳轉(zhuǎn):request.getRequestDispatcher("abc").forward(request, response);這樣也可以帶參數(shù)過去,但是在servlet中 跳轉(zhuǎn)和重定向是有區(qū)別的,并且區(qū)別很大。 同時(shí),我們可以用Session來傳遞,這個(gè)在web開發(fā)中很關(guān)鍵的。
JSP全名為Java Server Pages,中文名叫java服務(wù)器頁面,其根本是一個(gè)簡化的Servlet設(shè)計(jì),它 是由Sun Microsystems公司倡導(dǎo)、許多公司參與一起建立的一種動(dòng)態(tài)網(wǎng)頁技術(shù)標(biāo)準(zhǔn)。 JSP技術(shù)有點(diǎn)類似ASP技術(shù),它是在傳統(tǒng)的網(wǎng)頁HTML(標(biāo)準(zhǔn)通用標(biāo)記語言的子集)文件(*.htm,*.html)中插入Java程序段(Scriptlet)和JSP標(biāo)記(tag),從而形成JSP文件,后綴名為(*.jsp)。
用JSP開發(fā)的Web應(yīng)用是跨平臺(tái)的,既能在Linux下運(yùn)行,也能在其他操作系統(tǒng)上運(yùn)行。
有很多,首先由通過url的方式來傳遞的,比如:method在這里就是參數(shù),該參數(shù)隨著表單的提交會(huì)被傳遞到b.jsp頁面第二:可以通過js方法來傳遞參數(shù),function open(type){}然后頁面中有個(gè)鏈接打開方式,這樣當(dāng)你提交表單的時(shí)候參數(shù)blank就會(huì)被提交過去,這里使用固定參數(shù)的方式,如果你的參數(shù)是動(dòng)態(tài)獲取的,同樣可以采用el表達(dá)式來傳遞方法如下:,當(dāng)然前提是要有這個(gè)bean,并且bean的username不等于空,這樣username值就會(huì)被傳遞過去了!~。
jsp傳值給servlet的方法:
1、超鏈接傳值:在href='servletAction?id=xxx'
2、form表單提交,當(dāng)點(diǎn)擊submit時(shí),action="servletAction" method='get/post'
3、利用ajax,url='servletAction',data:xxx參數(shù)
當(dāng)然了,這里也有g(shù)et和post兩種情況,get直接在url后面加問號(hào)傳參,post會(huì)把參數(shù)放在實(shí)體內(nèi)容里面。
最后在servlet那邊 用 request.getParameter("參數(shù)名");
一. 使用QueryString變量
QueryString是一種非常簡單也是使用比較多的一種傳值方式,但是它將傳遞的值顯示在瀏覽器的地址欄中,如果是傳遞一個(gè)或多個(gè)安全性要求不高或是結(jié)構(gòu)簡單的數(shù)值時(shí),可以使用這個(gè)方法。
Response.Redirect( "target.aspx?param1=hello?m2=hi ")
接收頁面: string str = Request.QueryString["param1"];
string str1 = Request.QueryString["param2];
二.使用Cookie對(duì)象變量(Cookie是存放在客戶端的)
設(shè)置Cookie: HttpCookie cookie_name = new HttpCookie("name");
cookie_name.Value = Label1.Text;
Reponse.AppendCookie(cookie_name);
獲取Cookie:
string name= Request.Cookie["name"].Value.ToString();
三. 使用Session變量(session是存放在服務(wù)器端的)
設(shè)置Session: Session["name"] ="hello";
獲取Session: string name = Session["name"].ToString();
四.使用Application 對(duì)象變量
Application對(duì)象的作用范圍是整個(gè)全局,也就是說對(duì)所有用戶都有效。此種方法不常使用,因?yàn)锳pplication在一個(gè)應(yīng)用程序域范圍共享,所有用戶可以改變及設(shè)置其值,故只應(yīng)用計(jì)數(shù)器等需要全局變量的地方。
設(shè)置Application : Application["name"] = ="hello";
獲取Application : string name = Application["name"].ToString();
五. PostBackUrl()方法
default.aspx頁面:
Code
1 <asp:Button ID="Button1" Runat="server" Text="PostToAnotherPage" PostBackUrl="~/Default2.aspx" />
2
default2.aspx頁面:
Code
1 if (PreviousPage != null)
2 {
3 TextBox textBox1 = (TextBox)PreviousPage.FindControl("TextBox1");
4 Response.write(textBox1.Text );
5 }
六.使用Server.Transfer方法
這個(gè)才可以說是面象對(duì)象開發(fā)所使用的方法,其使用Server.Transfer方法把流程從當(dāng)前頁面引導(dǎo)到另一個(gè)頁面中,新的頁面使用前一個(gè)頁面的應(yīng)答流,所以這個(gè)方法是完全面象對(duì)象的,簡潔有效。下面這個(gè)代碼是展示在需要很多個(gè)參數(shù)的時(shí)候,使用的方法,如果參數(shù)比較少就沒必要使用這個(gè)方法了.
如果讓所有的查詢頁面都繼承一個(gè)接口,在該接口中定義一個(gè)方法,該方法的唯一作用就是讓結(jié)果頁面獲得構(gòu)建結(jié)果時(shí)所需的參數(shù),就可實(shí)現(xiàn)多頁面共享一個(gè)結(jié)果頁面操作!
jsp屬于前端頁面層,Servlet屬于邏輯控制層。
jsp傳值給servlet,數(shù)據(jù)發(fā)生在request作用域,即HttpRequest對(duì)象。例如
String user = request.getparameter("jsp頁面中的標(biāo)簽name");//切記這里是name屬性,ID是取不到的。
如果是要servlet傳值給jsp,就是在HttpResponse作用域。
response.setAttribute("user");
jsp對(duì)應(yīng)取值為:${responseScope.user};
聲明:本網(wǎng)站尊重并保護(hù)知識(shí)產(chǎn)權(quán),根據(jù)《信息網(wǎng)絡(luò)傳播權(quán)保護(hù)條例》,如果我們轉(zhuǎn)載的作品侵犯了您的權(quán)利,請(qǐng)?jiān)谝粋€(gè)月內(nèi)通知我們,我們會(huì)及時(shí)刪除。
蜀ICP備2020033479號(hào)-4 Copyright ? 2016 學(xué)習(xí)鳥. 頁面生成時(shí)間:3.402秒