spring mvc + ajax,請求發送不到controller層

最近在用spring  mvc + ajax,遇到了一個問題,即在js中,ajax的url請求發送不到controller層,琢磨了很久也沒找出原因。

主要文件目錄結構如下:webcontent/js ,webcontent/jsp , webcontent/index.jsp, webcontent/web-inf。

如果將jsp目錄下的.Jsp文件放到與index.jsp同目錄下,則ajax的url請求可以發送到controller層,但如果.jsp文件是在jsp目錄下,則ajax的url請求發送不到controller層。

最後調試了一下,發現請求路徑中與controller層的requestmapping裏的value值不一樣,然後將該value值的前面加上jsp,發現可以發送成功了。總結如下:

在controller層中,requestmapping的value值應該是發送請求的jsp所在的目錄加上ajax中url的值,本例中,發送請求的jsp文件所在的目錄爲jsp,而url爲hello/register.html,則requestmapping的value值應該爲jsp/hello/register.html,若發送請求的jsp文件所在目錄爲jsp/register,而ajax的url不變,則該value值爲jsp/register/hello/register.html。

以前遇到一種情況,就是不管jsp文件所在的目錄是什麼,只要controller層中,requestmapping的value與ajax中url的值一樣,請求就能發送過去,即,若ajax的url值爲hello/reigster.html,則value值也爲hello/register.html就可以了,就不管發送請求的jsp文件所在的目錄結構是什麼,請求都可以發送到該controller中。估計這和spring中相關的配置有關,如若哪位朋友知道上述這種只要ajax的url值與requestmapping中value相等,而不用管jsp的所在目錄結構的配置,希望不吝賜教。


下面的附件不是圖片,是該工程的一個rar包,有需要的朋友可以將後綴名改爲rar,就可以使用該工程了。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章