小编Era*_*dan的帖子

什么是TypeScript中的"接口结构类型"

Mark Rendle 在他关于TypeScript的博客文章中说,他喜欢的一件事是:

"接口的结构类型.我真的希望C#可以做到这一点"

那是什么意思?

c# structural-typing typescript

18
推荐指数
1
解决办法
1493
查看次数

设置/更改HTML隐藏输入值时可以捕获什么事件

HI,在JavaScript中,当值设置为隐藏的输入控件时,会触发哪个事件?

html javascript controls hidden

17
推荐指数
2
解决办法
1万
查看次数

为什么某些DOCTYPE声明导致100%-height表和div停止工作?

在我看来DOCTYPEIE(6-8)中的一些声明可能会导致浏览器忽略height="100%"表和div(style="height:100%")

例如

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 
"http://www.w3.org/TR/html4/loose.dtd">
<html>
 <head>
 <title>Test1</title>
 </head>
 <body>
  <div style="border: 2px solid red; height: 100%">
  Hello World
  </div>
 </body>
</html>
Run Code Online (Sandbox Code Playgroud)

将渲染DIV文本的高度,它不会拉伸.删除DOCTYPE声明会导致根据DIV需要垂直拉伸.

所以我的问题是:

  1. 为什么会这样?
  2. 你如何保持DOCTYPE仍然允许表拉伸?
  3. 这件事发生在你身上吗?
  4. 你知道吗?它是众所周知的吗?

html doctype transitional quirks-mode

16
推荐指数
2
解决办法
8016
查看次数

从Java实例化Scala类,并使用构造函数的默认参数

我有一个Scala类:

class Foo(val x:String = "default X", val y:String = "default Y" ) 
Run Code Online (Sandbox Code Playgroud)

我想从Java调用它,但使用默认参数

传递null不起作用(它null按预期分配)

new Foo(null,null); //both are instantiated as null
Run Code Online (Sandbox Code Playgroud)

这个技巧对我有用,但它很难看,我想知道是否有更好的方法:

斯卡拉

class Foo(val x:String = "default X", val y:String = "default Y" ) {
  def this(x:Object) = this()
}
Run Code Online (Sandbox Code Playgroud)

Java的

new Foo(null); //no matter what I pass it should work
Run Code Online (Sandbox Code Playgroud)

但是我想摆脱构造函数重载技巧,并使用0参数构造函数

那可能吗?

java scala

16
推荐指数
1
解决办法
3689
查看次数

Log4j - org.hibernate.type不起作用!

这是我的记录器配置:

log4j.logger.org.hibernate.SQL=TRACE, stdout
log4j.logger.org.hibernate.type=TRACE, stdout
Run Code Online (Sandbox Code Playgroud)

但我没有看到类型的叮咬

所以我尝试了这个

log4j.logger.org.hibernate=TRACE, stdout
Run Code Online (Sandbox Code Playgroud)

看看我是否错过了什么(这显示了所有的hibernate记录器),我发现org.hibernate.engine.QueryParameters记录器还显示了参数绑定(仍然没有org.hibernate.type记录器绑定消息的迹象)

所以我试过了

log4j.logger.org.hibernate.SQL=TRACE, stdout
log4j.logger.org.hibernate.type=TRACE, stdout
log4j.logger.org.hibernate.engine.QueryParameters=TRACE, stdout
Run Code Online (Sandbox Code Playgroud)

但它只显示来自org.hibernate.SQL记录器的日志!

我们使用Hibernate 3.2.6.ga和经典的查询翻译器

有线索吗?

java hibernate log4j

15
推荐指数
1
解决办法
3万
查看次数

Java类(PermGen)内存泄漏(Web应用程序) - 通用解决方案?

我知道,我有一个perm gen内存泄漏.使用jvisualvm进行性能分析表明,在进行热部署时(例如,在不杀死JVM的情况下停止和启动应用程序,在tomcat,WebSphere,WebLogic等中) - PermGen空间不断增加.

在阅读之后,使用jhat和其他高级工具,我意识到我可能WebAppClassLoader在其父类加载器中的某个类中引用了它.

即使我在jhat上做了一些基于JavaScript的大量查询,我也无法将其固定下来

是不是有一个简单的实用程序可以找出谁负责你的类加载器不被垃圾收集(从而允许垃圾收集由它加载的类)?

我试过JProfiler,jvisualvm,jhat和很多Google

所有LMGTFY的朋友 - 我花了大约一天半的阅读论坛一步一步的说明,没有运气.我正在寻找输出的实用程序或代码:

Y类的对象X是唯一的GC根,它可以防止您的类被删除.

java garbage-collection permgen

14
推荐指数
2
解决办法
2万
查看次数

PHP/MongoDB:更新数组中的值

我有以下mongodb对象:

{
   "_id": ObjectId("4d0b9c7a8b012fe287547157"),
   "messages": {
     "0": {
       "toUname": "Eamorr3",
       "fromUname": "Eamorr2",
       "time": 1292606586,
       "id": "ABCDZZZ",
       "subject": "asdf",
       "message": "asdf",
       "read": 0   //I want to change this to 1!
    },
    "1": {
       "toUname": "Eamorr1",
       "fromUname": "Eamorr3",
       "time": 1292606586,
       "id": "EFGHZZZ",
       "subject": "asdf2",
       "message": "asdf2",
       "read": 0
    }
  },
   "uname": "Eamorr3"
}
Run Code Online (Sandbox Code Playgroud)

如何将"read"设置为1,其中id = ABCDZZZZ?我正在使用PHP.

我试过以下命令:

$driverInboxes->update(array('uname'=>$uname),array('$set'=>array('messages'=>array('id'=>$id,'read'=>'1'))));
Run Code Online (Sandbox Code Playgroud)

但当我这样做时,覆盖发生,我得到:

{
   "_id": ObjectId("4d0b9c7a8b012fe287547157"),
   "messages": {
     "id": "j7zwr2hzx14d3sucmvp5",
     "read": "1"
  },
   "uname": "Eamorr3"
}
Run Code Online (Sandbox Code Playgroud)

我完全陷入了困境.任何帮助非常感谢.

我是否需要拉出整个数组元素,修改并再次将其推回?

提前谢谢了,

php mongodb

14
推荐指数
1
解决办法
2万
查看次数

在iOS EventKit中自定义日历事件/警报?

我在写我的第一个iOS应用程序(我累了失踪事件提醒,并希望有一个基于规则的提醒,例如对某些日历和某些人,会响不同的,更大声地,10,5和0分钟活动前)

第一部分是访问日历,由于这个伟大的演示,我有这样的覆盖.让应用程序在我的iPhone上运行,我可以看到我的日历事件.

(好吧,第一部分是找出快速的,一般的iOS基础,我还在努力)

第二部分是我在花费数小时研究之前想问的地方.我还有两项任务要做

  1. 要么定期检查日历以获取新的/更新的事件,要么能够以编程方式订阅某种事件总线任何日历更新(新事件,事件更改)

  2. 在给定时间安排通知(我可能会使用此:如何为以下方案安排本地通知?)

我如何完成#1?

ios eventkit swift

14
推荐指数
1
解决办法
2739
查看次数

Hibernate - 使用all-delete-orphan清除集合然后添加到它会导致ConstraintViolationException

我有这些实体

class Foo{
    Set<Bar> bars;
}

class Bar{
    Foo parent;
    String localIdentifier;
}
Run Code Online (Sandbox Code Playgroud)

有了这个映射(对不起,没有注释,我很老式):

<class name="Foo">
    ...
    <set name="bars" cascade="all-delete-orphan" lazy="false" inverse="true">
        <key>...</key>
        <one-to-many class="Bar"/>
    </set>
</class>


<class name="Bar">
    ...
    <property name="localIdentifier" column="local_identifier"/>
    <many-to-one name="parent" column="parent_id" />
</class>
Run Code Online (Sandbox Code Playgroud)

我对2列也有一个唯一约束:local_identifierparent_id(不是每个列上的唯一约束,但是包含两者的单个唯一约束,例如,不允许具有相同父和相同localIdentifier的2行)

alter table bar add constraint unique_bar unique (parent_id, local_identifier)
Run Code Online (Sandbox Code Playgroud)

这个代码使用它们:

//foo is persistent, foo id = 1
Bars bars = foo.getBars();
bars.clear(); // bars contained 1 item [parent_id = 1, local_identifier = "a"]
Bar newBar = new …
Run Code Online (Sandbox Code Playgroud)

hibernate unique-constraint

13
推荐指数
1
解决办法
2万
查看次数

将对象列表减少到密钥映射及其聚合计数的惯用法?

我正在尝试在一个简单的Scala程序中重新创建Hadoop的字数映射/减少逻辑以供学习

这就是我到目前为止所拥有的

val words1 = "Hello World Bye World"      
val words2 = "Hello Hadoop Goodbye Hadoop"

val input = List(words1,words2)           
val mapped = input.flatMap(line=>line.split(" ").map(word=>word->1))
    //> mapped  : List[(String, Int)] = List((Hello,1), (World,1), (Bye,1), 
    //                                       (World,1), (Hello,1), (Hadoop,1), 
    //                                       (Goodbye,1), (Hadoop,1))

mapped.foldLeft(Map[String,Int]())((sofar,item)=>{
    if(sofar.contains(item._1)){
        sofar.updated(item._1, item._2 + sofar(item._1))
    }else{
        sofar + item
    }
})                              
    //>Map(Goodbye -> 1, Hello -> 2, Bye -> 1, Hadoop -> 2, World -> 2)
Run Code Online (Sandbox Code Playgroud)

这似乎有效,但我确信有一种更惯用的方法来处理reduce部分(foldLeft)

我在考虑也许是一个多图,但我有一种感觉,Scala有办法轻松地做到这一点

在那儿?例如,添加到地图的方法,如果密钥存在,而不是替换它,将值添加到现有值.我确定我已经在某个地方看到了这个问题,但找不到它,也没有找到答案.

我知道groupBy可能是在现实世界中这样做的方式,但我正在尝试尽可能接近上面链接中的原始地图/减少逻辑.

scala

13
推荐指数
3
解决办法
1万
查看次数