如何在不使用注解的情况下创建Spring控制器?

5

我正在学习Spring Core认证,对以下问题有一些疑问:

@Controller注释是用于什么的?如何创建一个没有注释的控制器?

我知道@Controller注释表示特定类充当控制器的角色。该@Controller注释作为带注释类的原型,指示其角色。调度程序扫描这些已注释的类以查找映射方法并检测@RequestMapping注释。

因此,控制器类通常如下所示:

@Controller
public class AccountController {

    @RequestMapping("/listAccounts")
        public String list(Model model) {...}
    }
}

好的,我可以帮您进行翻译。这段文字涉及到IT技术相关内容。请问您需要将其翻译成哪种语言呢?

将bean添加到您的Spring配置文件中。 - Nimesh
可能是Spring MVC 3.1 without annotations?的重复问题。 - OO7
3个回答

5
public class AccountController extends MultiActionController {
    public ModelAndView listAccounts() {
        // your code
        return new ModelAndView("listAccounts.bean", "msg", "As you  want")
    }
}

web.xml

<servlet>
    <servlet-name>dispatcher</servlet-name>
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
</servlet>
<servlet-mapping>
    <servlet-name>dispatcher</servlet-name>
    <url-pattern>*.bean</url-pattern>
</servlet-mapping>

dispatcher-servlet.xml

<bean name="/listAccounts.bean" class="p1.AccountController"></bean>

1
我遇到了这个问题:Spring MVC 3.1没有注释怎么办? 看起来你实际上可以创建一个没有注释的控制器(我已经使用Spring工作了一年多,还没有遇到这种情况,我不知道为什么有人想这样做,除了认证问题之外),而做法是在dispatcher-servlet XML文件中使用特殊的配置。

这并不是很特别,因为注解配置仅存在于Spring 3之后。在此之前,配置Spring的唯一方法是使用XML配置。 - dunni

0

仅仅是为了评论一下为什么有人想要通过编程或XML配置Spring,这是因为在运行时扫描所有文件查找注释需要一些时间,因此如果我们禁用扫描并手动配置它,应用程序将更快地响应服务请求,这在高需求场景下非常重要。


这与启动时间有关,而不是高需求下的响应时间。 - stinger

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接