私は春のフレームワークを学び始めました。コントローラメソッドを呼び出す代替メソッドを見つけることができませんでした。私はquerystring varialbleをurlのように渡しています - /index.htm?do= 「http://example.com/index.htm」 のように見えるURLこの より任意の代替方法がある私のコントローラSpringコントローラがマップされているURLを変更する方法
から「ログイン」という名前のコントローラメソッドを呼び出すために ログインまたは「のhttp://例.com/index/"
何が@requestマッピングであり、どのように使用するのですか?
多くの感謝!
ディスパッチャ-servlet.xmlこのコードで
public class myController extends MultiActionController {
public ModelAndView login(HttpServletRequest request, HttpServletResponse response) {
return new ModelAndView("login");
}
}
、私は常にコントローラマッチング法呼び出すためにクエリ文字列変数を渡す必要が
<bean id="urlMapping" class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
<property name="mappings">
<props>
<prop key="index.htm">myController</prop>
</props>
</property>
</bean>
<bean id="myController" class="myController">
<property name="methodNameResolver">
<ref bean="methodNameResolver"/>
</property>
</bean>
<bean id="methodNameResolver"
class="org.springframework.web.servlet.mvc.multiaction.ParameterMethodNameResolver">
<property name="paramName">
<value>do</value>
</property>
</bean>
myController。 のような「http://example.com/index.htm?do=login」 このコントローラ
からloginメソッドを呼び出しますが、私は、クエリ文字列変数を使用する必要はありません。どうやってやるの? は、それはこのようになりますどのURLとコントローラのloginメソッドを呼び出すために@RequestMapping
で可能です:http://example.com/login「
私はこれを試してみましたが、それはあなたの問題が何であるか本当にわからない
@RequestMapping("/index.htm")
public ModelAndView index(@RequestParam(value = "do", required = false) String doParam)
{
return new ModelAndView("login");
}
多く多くのthnxに等しいが、私まだ問題がある私がやりたいことをするために..コードのサンプルで私の編集した質問を見てください。 – raamalways