在Java项目中整合Scala(二)

2014-11-24 09:04:16 · 作者: · 浏览: 1
def before() {
val config = new MockServletConfig
config.addInitParameter("contextConfigLocation", "classpath:servlet-context.xml")
dispatcherServlet = new DispatcherServlet
dispatcherServlet.init(config)
httpRequest = new MockHttpServletRequest
httpResponse = new MockHttpServletResponse
}
@After
def after() {
dispatcherServlet = null
httpRequest = null
httpResponse = null
}
@Test
def testHelloWord() {
httpRequest.setMethod("GET")
httpRequest.setRequestURI("/")
dispatcherServlet.service(httpRequest, httpResponse)
val response = httpResponse.getContentAsString
Assert.assertEquals("HELLO WORLD!", response)
}
}
这段代码,与Java相比较要简洁很多,这可以大大提高我们的编程效率。
与完全基于Scala开发相比,这种Java与Scala的混合开发方式有以下几个优势:
项目本身还是基于Java的,可以很好的使用现有的Java工具,包括CI继承,等
混合了Java和Scala,可以使程序员根据自己的需要在不同的情况下选择更合适的语言
在项目未来的持续维护上,我们不需要使用Scala的专门程序员,即使是完全没有Scala经验的Java程序员,也可以进行代码维护
同时我们还可以用这种混合开发方式,对现有的Java项目进行修改,而不是完全的重写。希望这种混合开发方式可以帮助希望使用Scala而又在工作中没有机会的朋友。