2016-09-28 83 views
0

將操作屬性設置爲字符串意味着什麼?例如將操作屬性設置爲字符串

<form method = "POST" action = "doDropClass"> 

我明白,如果行動=「loginAuthenticate.jsp」,意思是請求和數據將被髮送到服務器端應用程序--- loginAuthenticate.jsp 但什麼意思分配字符串行動屬性就像上面的例子。

回答

0

操作屬性指定提交表單時何處發送表單數據。

你可以寫一個jsp文件的action = "loginAuthenticate.jsp"
對於servlet action = "doDropClass",需要使用servlet映射的url-pattern。

一個JSP直接解析爲一個URL模式,而servlet需要url解析的url模式匹配。

當您使用字符串操作屬性如action = "doDropClass"時,servlet容器將在web.xml中搜索相應的url-pattern以創建一個有效的url模式,該模式將爲以下示例調用servlet com.stack.DoDropClass
web.xml中:

<servlet> 
    <servlet-name>doDropClass</servlet-name> 
    <servlet-path>com.stack.DoDropClass</servlet-path> 
</servlet> 
<servlet-mapping> 
    <servlet-name>doDropClass</servlet-name> 
    <url-pattern>/doDropClass</url-pattern> 
</servlet-mapping> 
0

什麼意思action屬性設置爲一個字符串

你不能將其設置爲字符串以外的任何東西。所以它意味着它通常意味着什麼:提交表單時,將數據發送到action屬性中的URL。

我明白,如果行動=「loginAuthenticate.jsp」,意思是請求和數據將被髮送到服務器端應用程序--- loginAuthenticate.jsp但是這是什麼意思分配一個字符串操作屬性像上面的例子。

同樣的事情。這僅表示該網址中沒有.jsp。在URL中沒有這樣的文件擴展名。看起來像文件擴展名的東西通常只是通過將URL映射到服務器的文件系統上而生成的。

還有很多解決URL的其他方法。常見的包括使用:

  • 改寫系統(如Apache HTTPD的mod_rewrite)使用正則表達式將URL映射到文件
  • 處理服務器端應用程序中的所有URL解析(例如使用MVC設計模式)而不是將其留給網絡服務器。