【发布时间】:2012-12-05 16:28:08
【问题描述】:
我是 Spring MVC 世界的新手,我想问你一个问题。
我已经通过 STS 模板新建了一个 Spring MVC 项目。
所以现在我有一个最小的项目,一旦执行,就会显示一条带有当前日期和时间的 Hello World 消息
这是本项目唯一的控制器类的代码:
package org.gnagna.bla;
import java.text.DateFormat;
import java.util.Date;
import java.util.Locale;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
/**
* Handles requests for the application home page.
*/
@Controller
public class HomeController {
private static final Logger logger = LoggerFactory.getLogger(HomeController.class);
/**
* Simply selects the home view to render by returning its name.
*/
@RequestMapping(value = "/", method = RequestMethod.GET)
public String home(Locale locale, Model model) {
logger.info("Welcome home! The client locale is {}.", locale);
Date date = new Date();
DateFormat dateFormat = DateFormat.getDateTimeInstance(DateFormat.LONG, DateFormat.LONG, locale);
String formattedDate = dateFormat.format(date);
model.addAttribute("serverTime", formattedDate );
return "home";
}
}
所以只有一种名为 home 的方法可以处理对“/” URL 的 HTTP GET 调用,这对我来说很清楚。
这不是clead的是关于这个方法的输入参数,你可以看到这个方法接收两个输入参数:
1) 模型
2) 包含有关用户的一些信息的 Locale 对象
但是:谁创建了这个 Locale 对象,什么时候作为输入参数传递给我的控制器?
Tnx
安德烈亚
【问题讨论】:
-
这和你的问题无关,但是java约定规定方法名应该是动词docs.oracle.com/javase/tutorial/java/javaOO/methods.html
标签: java spring spring-mvc locale