2016-04-19 7 views
0
JSPと春とstrugleを持つ

こんにちはイム、

<html> 
<head>Title 
</head> 
    <body> 
     Welcome in my view 
     <h1>Animal's Database</h1> 
     <br> 
     <strong>${message}</strong><br>Give me:<br> 
     <a href="writeCat" >Cat's list</a><br> 
     <a href="writeDog">Dog's list</a><br> 
     <a href="writeSnake">Snake's list</a> 

    </body> 

のコントローラするJSPでパラメータを渡すと、これは私のコントローラである

public String getAnimalList(Model model){ 
    model.addAttribute("animalList", animalDAO.getAnimalList("Cat")); 
    return "list"; 
} 
@RequestMapping("/writeDog") 
public String getAnimalList1(Model model){ 
    model.addAttribute("animalList", animalDAO.getAnimalList("Dog")); 
    return "list"; 
} 
@RequestMapping("/writeSnake") 
public String getAnimalList2(Model model){ 
    model.addAttribute("animalList", animalDAO.getAnimalList("Snake")); 
    return "list"; 
} 

何私が取得されてやろうとしています3x getAnimalListメソッドを取り除いてはいますが、JSPからコントローラに文字列を渡す方法はわかりません。 「猫」、「蛇」、「犬」。
私はコントローラーの本体でそれを持っていることを知っていますrequest.getParameter(XXX).私の問題は、対応する動物の文字列値をコントローラーに送るためにJSPを作成することです。

答えて

1

あなたは、あなたがhrefで動物の名前を追加することができますパス変数を使用すると、basepath/write/animalNameになります

@RequestMapping("/write/{animal}") 
public String getAnimalList1(Model model, @PathVariable("animal") String animal){ 
    model.addAttribute("animalList", animalDAO.getAnimalList(animal)); 
    return "list"; 
} 

をパス変数に、残りのサービスにアクセスするために、そのURLの動物名の文字列を渡すことができ

<a href="/write/Cat" >Cat's list</a><br> 
<a href="/write/Dog">Dog's list</a><br> 
<a href="/write/Snake">Snake's list</a> 
+0

これは私にとっては明白でしたが、jsp側でどうすべきでしょうか? Cat's list
filemonczyk

+0

URL?動物=キャット&OtherIfYouWant =他 – crm86

+0

URL Cat's list
はこのURL/writeCatようになった後( "/" が欠落していることに気づく)ので、私は@RequestMappingを変更しましたが、それは "をカットなぜまだ不思議/ hrefのURLから – filemonczyk