我有以下代码用于使用谷歌集合构建缓存:
val cache = new MapMaker().softValues().expiration(30,
TimeUnit.DAYS).makeComputingMap(
new com.google.common.base.Function[String,Int] {
def apply(key:String):Int ={
1
}
})
Run Code Online (Sandbox Code Playgroud)
我收到以下错误消息:
error: type mismatch;
found : java.lang.Object with
com.google.common.base.Function[java.lang.String,Int]{ ... }
required: com.google.common.base.Function[?, ?]
new com.google.common.base.Function[String,Int] {
^
Run Code Online (Sandbox Code Playgroud)
我想知道为什么类型不匹配?
实际代码是:
import com.google.common.collect.MapMaker
trait DataCache[V] {
private val cache = new MapMaker().softValues().makeComputingMap(
new com.google.common.base.Function[String,V] {
def apply(key:String):V = null.asInstanceOf[V]
})
def get(key:String):V = cache.get(key)
}
Run Code Online (Sandbox Code Playgroud)
亲切的问候,阿里
PS - 我正在使用google-collections v1
在我的应用程序中,我将日期存储为字符串("MM/dd/YYYY"格式).在DB中.以后当我检索字符串时我必须比较两个日期,我该如何实现呢?
如果我使用了"YYYY/MM/dd"格式,我可以将其直接比作字符串.现在我必须使用"nsdateformatter"和"dateFromString"转换回NSDate对象.但无论我做什么,我都会使用它获得一个恒定的日期值.
有任何想法吗??
我正在使用Unity IoC容器来解析我的对象.但是,我遇到了一个问题.当我有多个构造函数时 - Unity如何知道使用哪一个?当我有一个和一个没有时,它似乎使用带参数的那个.我可以明确告诉它使用哪个构造函数吗?
具体来说,我有一个类似于以下带有两个构造函数的Person类的情况.在这种情况下,我希望IoC容器使用默认构造函数 - 没有参数 - 但它选择带参数的容器.
public class SomeValueObject
{
public SomeValueObject(string name)
{
Name = name;
}
public string Name { get; set; }
}
public class Person
{
private string _name;
public Person()
{
_name = string.Empty;
}
public Person(SomeValueObject obj)
{
_name = obj.Name;
}
}
Run Code Online (Sandbox Code Playgroud)
这显然失败了,因为它无法创建SomeValueObject - 不知道要向其字符串参数注入什么.它给出的错误是:
解决依赖关系失败,type ="MyApp.Person",name ="".异常消息是:当前构建操作(构建密钥Build Key [MyApp.Person,null])失败:尝试调用构造函数MyApp.Person(MyApp.SomeValueObject obj)时无法解析参数obj.(策略类型BuildPlanStrategy,索引3)
集装箱登记:
Container.RegisterType<Person, Person>(new Microsoft.Practices.Unity.ContainerControlledLifetimeManager());
Run Code Online (Sandbox Code Playgroud)
并解决:
var person = Container.Resolve<Person>();
Run Code Online (Sandbox Code Playgroud) 我刚刚开始在Mono中使用F#,并且出现了以下问题,我无法理解.查找资料printfn,并TextWriterFormat没有带来任何启示,所以我想我要问在这里.
在FSI中,我执行以下操作:
> "hello";;
val it : string = "hello"
> printfn "hello";;
hello
val it : unit = ()
Run Code Online (Sandbox Code Playgroud)
只是一个普通的字符串并打印它.精细.现在我想声明一个变量来包含相同的字符串并打印它:
> let v = "hello" in printfn v ;;
let v = "hello" in printfn v ;;
---------------------------^
\...\stdin(22,28): error FS0001: The type 'string' is not compatible with the type 'Printf.TextWriterFormat<'a>'
Run Code Online (Sandbox Code Playgroud)
我从阅读中理解,printfn需要一个恒定的字符串.我也明白,我可以解决这个问题printfn "%s" v.
但是,我想了解这里输入的内容.显然,"hello"类型string也是如此v.为什么会出现类型问题?有printfn什么特别的吗?据我所知,编译器已经对第一个字符串的参数执行了类型检查,这样就printfn "%s" 1失败了......这当然不适用于动态字符串,但我认为这只是编译器方面的一个方便.静态案例.
我刚开始用Glassfish服务器学习Eclipse.我在四处寻找如何制作简单的数据库Web应用程序,但还不知道.我为Eclipse下载了Glassfish包.我需要创建简单的数据库(可能是一个表),并使用简单的Web应用程序连接数据库.如何在Eclipse中做到这一点,你能给我一些一步一步的链接我该怎么做呢谢谢
我正在尝试让Django(在GAE之上)从另一个Web服务获取数据.我经常遇到这样的错误:
ApplicationError:2超时请求
方法:GET
异常类型:DownloadError
异常值:ApplicationError:2超时
例外位置:_get_fetch_result中的/google_appengine/google/appengine/api/urlfetch.py,第325行
感觉就好像它会在12秒后超时(我不确定,但它真的很短).
问题:如何设置更长的超时?
我刚刚重新启动计算机而没有改变任何东西.突然间我无法打开Eclipse.相反,我收到此错误消息:
????????????????????????????????????????????????????????????????????????
? Eclipse ?
????????????????????????????????????????????????????????????????????????
? ?
? A Java Runtime Environment (JRE) or Java Development Kit (JDK) ?
? must be available in order to run Eclipse. No Java virtual machine ?
? was found after searching the following locations: ?
? C:\Users\emiri\Downloads\eclipse\jre\bin\javaw.exe ?
? javaw.exe in your current PATH ?
? ?
? ?????????????? ?
? ? OK ? ?
? ?????????????? ?
????????????????????????????????????????????????????????????????????????
Run Code Online (Sandbox Code Playgroud)
我看到我的所有环境变量都已被删除.java,javac,mvn,等不工作.我现在该怎么做,我该如何解决这个问题?
我的Web应用程序的用户可能打开了多个浏览器窗口(或选项卡)并指向同一页面.我们使用基于cookie的会话ID,用户通常在两个浏览器/标签中的相同会话ID内工作.我希望能够唯一地识别请求ASP.NET页面的浏览器窗口(和选项卡)(为了确保会话中存储的数据不会混淆).
(例如,如果浏览器生成并发送带有http请求的窗口/ tab-id,我会很高兴,因为它发布了HTTP_USER_AGENT)
有任何想法吗?
- 托马斯
我是一个忠实的R(r-project.org)用户,并且喜欢信息图表.
我刚看到这篇文章:http: //www.noupe.com/design/fantastic-information-architecture-resources.html
为信息设计人员提供一长串资源.
它让我想要做更美丽(不仅仅是提供信息)的R情节.
您对如何实现这一飞跃有任何建议/资源吗?
我需要拥有/开发哪些书籍/软件/技能才能制作精美的信息图表?
有下一个初始条件:
后端:用于文件上传的servlet;
UI:表单,提交用于文件上载的servlet:
<iframe id="uploadFrame" name="uploadFrame"></iframe>
<form enctype="multipart/form-data" method="post" target="uploadFrame"
action="<%= request.getContextPath() %>/uploadFile?
portletId=${portletId}&remoteFolder=${remoteFolder}">
...
</form>
Run Code Online (Sandbox Code Playgroud)
单击此表单的提交按钮时,正在进行该文件上载,并且相应地处理POST请求(可以在FireBug中跟踪).
是否可以依赖此POST请求处理进度图标?
我的意思是,如果POST正在处理,该网页应显示进度.gif图标.
也许,有可能使用Prototype lib的Ajax.PeriodicalUpdater函数或其他一些解决方案?
无论如何,看起来,没有ajax是不可能的.
谢谢你的帮助.