101
问题: #5.2.3-1 | 测试SpittleController处理针对“/spittles”的GET请求 回答:
@Test
public void shouldShowRecentSpittles() throws Exception{
List<Spittle> expectedSpittles = createSpittleList(20);
SpittleRepository mockRepository = mock(SpittleRepository.class); // Mock Repository
when(mockRepository.findSpittles(Long.MAX_VALUE,20)).thenReturn(expectedSpittles);
SpittleController controller = new SpittleController(mockRepository);
MockMvc mockMvc = standaloneSetup(controller).setSingleView(new InternalResourceView(“/WEB-INF/views/spittles.jsp”)).build(); //Mock Spring MVC
mockMvc.perform(get(“/spittles”)) // 对”/spittles”发起GET请求
.andExpect(view().name(“spittles”))
.andExpect(model().attributeExists(“spittleList”))
.andExpect(model().attribute(“spittleList”, hasItems(expectedSpittles.toArray()))); //断言期望的值
}
…
private List<Spittle> createSpittleList(int count){
List<Spittle> spittles = new ArrayList<Spittles>();
for(int i=0; i<count; i++){
spittles.add(new Spittle(“Spittle ” + i, new Date()));
}
return spittles;
}
102
问题: #5.3-1 | Spring MVC允许以多种方式将客户端中的数据传送到控制器的处理器方法中,包括 回答:
103
问题: # 5.4-1 | 网络编程中,表单的作用 回答: 展现表单以及处理用户通过表单提交的数。
104
问题: #5.4.1-1 | 当InternalResourceViewResolver看到视图格式中的“redirect:”前缀时,InternalResourceViewResolver会知道些什么? 回答: 它就知道要将其解析为重定向的规则,而不是视图的名称。
105
问题: #5.4.1-2 | 除了“redirect:”,InternalResourceViewResolver还能识别“forward:”前缀。当它发现视图格式中以“forward:”作为前缀时,它会怎么做? 回答: 请求将会前往(forward)指定的URL路径,而不再是重定向。
106
问题: #5.4.2-1 | Java校验API所提供的校验注解 回答:
107
问题: #6.1-1 | Spring自带了13个视图解析器,能够将逻辑视图名转换为物理实现 回答:
108
问题: #6.2-1 | Spring提供了两种支持JSP视图的方式: 回答:
109
问题: #6.2.1-1 | InternalResourceViewResolver解析视图时,会在视图名上添加前缀和后缀,请画出相应的图
回答:
110
问题: #6.2.1-2 | 使用@Bean注解的时候,我们可以按照如下的方式配置Internal-ResourceView Resolver,使其在解析视图时,可以自动加上前后缀 回答:
@Bean
public ViewResolver viewResolver() {
InternalResourceViewResolver resolver =
new InternalResourceViewResolver();
resolver.setPrefix("/WEB-INF/views/");
resolver.setSuffix(".jsp");
return resolver;
}
//作为替代方案,如果你更喜欢使用基于XML的Spring配置,那么可以按照如下的方式配置InternalResourceViewResolver:
<bean id="viewResolver"
class="org.springframework.web.servlet.view.
InternalResourceViewResolver"
p:prefix="/WEB-INF/views/"
p:suffix=".jsp" />