使用 Groovy 构建社交网络混搭(Mashup)应用程序
2009-12-24 00:00:00 来源:WEB开发网
清单 9. 添加 Groovlets:只需向 web.xml 文件添加几个字段<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE web-app
PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd">
<web-app>
<servlet>
<servlet-name>GroovyServlet</servlet-name>
<servlet-class>groovy.servlet.GroovyServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>GroovyServlet</servlet-name>
<url-pattern>*.groovy</url-pattern>
</servlet-mapping>
</web-app>
现在,任何到达 .groovy URI 的请求都将调用 GroovyServlet,由它获取请求的资源并原样执行它。最棒的一点就是 Groovlets 是非常简单的脚本!
为混搭提供服务
在对任何 Groovlets 进行编码之前,我需要考虑两个关键问题。一个是如何才能最好地从 Twitter 获取所有需要的数据。当然,我知道如何做到这一点,但是我觉得我需要经常这样做;因此,最好将特定于 Twitter 的逻辑本地化(没有任何其他含义)到服务。不要考虑服务 一词的其他含义;在本例中,服务是一个抽象化特定行为的简单类。例如,我的 TwitterService 非常简单,如清单 10 所示:
清单 10. 使用 Twitter4J 库的简单服务import twitter4j.Twitter
public class TwitterService {
def getFriendsForTwitterer(username, password) {
def twitter = getTwitter(password, username)
return twitter.getFriends()
}
private def getTwitter(password, username) {
return new Twitter(username, password)
}
def getLocationForUser(username, password) {
def twitter = getTwitter(password, username)
return twitter.getAuthenticatedUser().getLocation()
}
}
更多精彩
赞助商链接