2014-01-24 63 views
0
  1. 我有一个显示超链接的jsp页面。我想要这个超链接来调用控制器,而不是那个控制器中的某个方法。我如何在我的jsp页面中完成这件事?从jsp页面调用控制器

  2. 是否有任何安全的方法来传递一些参数到该控制器?

+0

什么意思由控制器?一个Servlet? – Nullpointer

+0

是一个servlet。控制器在春天。 – v0ld3m0rt

+0

参考[here](http://www.mkyong.com/tutorials/spring-mvc-tutorials/) – thoitbk

回答

0

在JSP中,你会这样定义超链接:

<a href="/test">Link</a> 

,并在你的web.xml你如下

<servlet-mapping> 
    <servlet-name>myservlet</servlet-name> 
    <url-pattern>/test</url-pattern> 
</servlet-mapping> 

这会给调用应指定服务器URL点击链接到你的servlet。然后从这个servlet中你可以调用你自己的方法或者做你想做的任何事情!

希望这有助于

+1

他在谈论用Spring'@ Controller'注解的Java类。 – Bnrdo

0

有很多种方法来实现这一....我所实现的一种方式是,你有一个中央控制器,它会被称为唯一的控制器。这个控制器会根据URL解析控制器名称,根据一些预定义的约定来加载所有其他控制器.....一旦控制器名称被解析,它会再次使用预定义的约定来确定哪个方法的控制器调用....一旦两者都被定义....实例化控制器并通过反射调用方法

0

据我了解Spring,每个控制器都与@RequestMapping注释相关联。如果定义:

@Controller 
@RequestMapping("/controller1") 
public class HomeController { 

    @RequestMapping("/home") 
    public String gohome() 
    {  
     return "home-1"; 

    } 

而且

@Controller 
@RequestMapping("/controller2") 
public class HomeControllerb { 

    @RequestMapping("/home") 
    public String gohome() 
    {  
     return "home-2"; 

    } 

而且你打端点/controller1/home定义你确实会从控制器1加载gohome()方法,并加载该文件home-1.jsp