怎么制作网站登录,做html网站,商城做网站好还是淘宝,一个公司做网站需要注意什么我最近将其转换为thymeleaf #xff0c;以便在基于Spring的Web应用程序中进行视图模板化#xff0c;而不是jsp。 百里香叶文档中所有关于为什么百叶香叶在jsp上为何能保持水分的争论都被我肯定了。 除了能够预览模板之外#xff0c;对我来说#xff0c;主要原因之一是视图… 我最近将其转换为thymeleaf 以便在基于Spring的Web应用程序中进行视图模板化而不是jsp。 百里香叶文档中所有关于为什么百叶香叶在jsp上为何能保持水分的争论都被我肯定了。 除了能够预览模板之外对我来说主要原因之一是视图在运行时的呈现方式。 尽管应用程序堆栈必须将jsp的呈现推迟到servlet容器但它可以完全控制thymeleaf模板的呈现。 为了进一步说明这一点使用jsp作为视图技术应用程序仅返回jsp的位置并且取决于servlet容器来呈现jsp。 那么为什么这又是一个重要原因–因为在spring-test模块中使用了mvc测试支持 所以现在可以声明实际呈现的内容而不仅仅是视图的名称。 考虑一个示例Spring MVC控制器 Controller
RequestMapping(/shop)
public class ShopController {...RequestMapping(/products)public String listProducts(Model model) {model.addAttribute(products, this.productRepository.findAll());return products/list;}
} 如果该视图基于jsp我将进行如下测试 RunWith(SpringJUnit4ClassRunner.class)
WebAppConfiguration
ContextConfiguration(classes SampleWebApplication.class)
public class ShopControllerWebTests {Autowiredprivate WebApplicationContext wac;private MockMvc mockMvc;Beforepublic void setup() {this.mockMvc MockMvcBuilders.webAppContextSetup(this.wac).build();}Testpublic void testListProducts() throws Exception {this.mockMvc.perform(get(/shop/products)).andExpect(status().isOk()).andExpect(view().name(products/list));}
} 断言仅在视图名称上。 现在考虑使用百里香叶作为查看技术的测试 Test
public void testListProducts() throws Exception {this.mockMvc.perform(get(/shop/products)).andExpect(status().isOk()).andExpect(content().string(containsString(Dummy Book1)));
} 在这里我断言实际的渲染内容。 这确实很好但是使用jsp时我必须验证使用真实容器在运行时正确渲染了jsp而使用thymeleaf我可以纯粹使用测试来验证渲染是否干净。 翻译自: https://www.javacodegeeks.com/2014/04/spring-test-with-thymeleaf-for-views.html