小编Rob*_*Fox的帖子

单身模式(Bill Pugh的解决方案)

我正在阅读有关单例模式的维基,我不确定我是否理解这一点:https://en.wikipedia.org/wiki/Initialization-on-demand_holder_idiom正确部分.

所以要简单一点:为什么Bill Pugh的解决方案比上面的例子更好?

是因为VM在实际使用之前没有加载静态类或类似的东西,所以在转向getInstance()方法之前我们不创建对象?那个方法线程安全只是在初始化对象的程度吗?

java singleton design-patterns

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

Java中的类列表

我有多个类(B,C和D)是类A的子类.我需要创建一个包含B,C和D的List/Array,并根据我从List/Array中提取的任何元素创建Objects.

在AS3中,我会这样做:var classes:Array = [MovieClip,Sprite,Shape]; 或类的矢量.

我如何用Java做到这一点?我正在考虑这样的事情:

List<Class<? extends A>> list = new ArrayList<Class<? extends A>>();

list.add(B);
Run Code Online (Sandbox Code Playgroud)

java generics

21
推荐指数
1
解决办法
4万
查看次数

Ebean在Play Framework 2中查找错误的序列名称

我有一个id:

@Column(name = "device")
@GeneratedValue(strategy = GenerationType.AUTO, generator = "device_gen")
@SequenceGenerator(name = "device_gen", sequenceName = "device_id")
@Id
public Integer id;
Run Code Online (Sandbox Code Playgroud)

SequenceGenerator将sequenceName定义为device_id但尝试保存实体我得到错误:关系"public.device_seq"不存在.

为什么要寻找device_seq而不是device_id

我正在使用PostgreSQL

java postgresql orm ebean playframework-2.0

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

在Tomcat上运行Play Framework 2.0?

我找不到有关在Tomcat上部署Play Framework 2.0的任何信息,它甚至可能吗?如果是这样,我在哪里可以找到有关它的任何信息.

java tomcat playframework-2.0

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

意外的无效内存地址或nil指针取消引用

我收到无效内存地址的运行时错误.

panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x10 pc=0x4e0f24]

goroutine 1192592 [running]:
panic(0x793540, 0xc420010040)
#011/usr/local/go/src/runtime/panic.go:500 +0x1a1
foobar/sd.(*Channel).Attributes(0x0, 0xc420110101, 0xc42278f9b0, 0x9)
#011/home/app/go/src/foobar/sd/channel.go:36 +0x54
Run Code Online (Sandbox Code Playgroud)

channel.go看起来像这样:

35 func (m *Channel) Attributes() (*ChannelAttrs, error) {
36    redisHash := "sd:channels:" + m.hash
37
38    rc := m.ctx.RedisPool.Get()
39    values, err := redis.Values(rc.Do("HGETALL", redisHash))
40    rc.Close()
41    if err != nil {
42        return nil, err
43    }
44    attrs := ChannelAttrs{}
45    redis.ScanStruct(values, &attrs)
46    return …
Run Code Online (Sandbox Code Playgroud)

go

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

为什么Point占用的内存少于Integer

我通过检查字节数组使用ByteArrayOutputStream多长时间来测量对象的大小.做的时候:

System.out.println(Utils.getObjectSize(new Integer(123123)));
System.out.println(Utils.getObjectSize(new Point(123, 123)));
Run Code Online (Sandbox Code Playgroud)

他们回归81和51.

我相信Point由两个原语组成,但这似乎不是原因.

Utils.getObjectSize的代码I:

ByteArrayOutputStream byteStream = new ByteArrayOutputStream();
ObjectOutputStream objectStream = new ObjectOutputStream(byteStream);
objectStream.writeObject(object);
objectStream.close();
return byteStream.toByteArray().length;
Run Code Online (Sandbox Code Playgroud)

编辑:

我表达自己错了.我其实想知道为什么他们在流中占用更多的大小.

java memory

14
推荐指数
3
解决办法
701
查看次数

ArrayList <>()和ArrayList <>(){}之间的区别

这两者有什么区别.为什么后者会创建一个新的可序列化类?

new ArrayList<Clazz>() 
Run Code Online (Sandbox Code Playgroud)

创造一个新的空 ArrayList

new ArrayList<Clazz>(){}
Run Code Online (Sandbox Code Playgroud)

Eclipse显示: The serializable class does not declare a static final serialVersionUID field of type long

java

11
推荐指数
2
解决办法
808
查看次数

psycopg2不执行PostgreSQL函数

我试图psycopg2像这样调用一个函数:

conn = psycopg2.connect(host="name.host.ex", user="username", password="secret")
cur = conn.cursor()
cur.callproc("f_do_action", ["aaa", "bbb"])
cur.close()
conn.close()
Run Code Online (Sandbox Code Playgroud)

psql一切调用此函数工作正常但psycopg2似乎没有使用任何东西.我也不例外.它只是没有调用实际数据库上的函数.

还有来自psycopg2work(SELECT, INSERT)的其他查询.

python postgresql psycopg2

10
推荐指数
1
解决办法
5734
查看次数

删除日期输入上的"清除"按钮(iOS safari)

是否可以删除<input type="date">iOS Safari(图像)上输入字段的"清除"按钮?我尝试过使用必需但它在iOS6或iOS7上不起作用.

html safari html5 ios

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

redis 哈希是否维护插入顺序

Redis 哈希值是否保持它们插入的键值对的顺序?我在 redis 的文档中找不到任何相关内容。

一个简单的测试确实表明它们保持秩序,但这能保证吗?这可以与集群或哨兵一起使用吗?

redis

6
推荐指数
1
解决办法
2652
查看次数