小编Dra*_*mon的帖子

LSSerializer vs Transformer用于将xml序列化为String

我必须将org.w3c.dom.Document转换为java.lang.String.我找到了两种可能的方法,一种使用org.w3c.dom.ls.ls.LSSerializer,另一种使用javax.xml.transform.Transformer.我有下面的样品.

谁能告诉我哪种方法更受青睐?

public String docToStringUsingLSSerializer(org.w3c.dom.Document doc) {
    DOMImplementationRegistry reg = DOMImplementationRegistry.newInstance();
    DOMImplementationLS impl = (DOMImplementationLS) reg.getDOMImplementation("LS");
    LSSerializer serializer = impl.createLSSerializer();
    return serializer.writeToString(doc);
}

public String docToStringUsingTransformer(org.w3c.dom.Document doc) {
    Transformer transformer = TransformerFactory.newInstance().newTransformer();
    StringWriter stw = new StringWriter();  
    transformer.transform(new DOMSource(doc), new StreamResult(stw));  
    return stw.toString();
}
Run Code Online (Sandbox Code Playgroud)

java xml dom

12
推荐指数
1
解决办法
4969
查看次数

如何在不键入完整路径的情况下从命令行运行程序?

我可以用一个例子来解释我的问题.我最近下载了Python for Windows,安装到C:\ Python.所以,如果我在包含myscript.py的文件夹X中,并且我想调用它,我必须调用它:

> C:\Python\python.exe myscript.py
Run Code Online (Sandbox Code Playgroud)

但是,如果我可以在任何文件夹中执行此操作,那将是非常酷的:

> python myscript.py
Run Code Online (Sandbox Code Playgroud)

我该如何制作"全球"?

windows command-line

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

如何在文本文件中"应用"退格字符(理想情况下是在vim中)

我有一个带有退格字符的日志文件(^ H).我正在查看Vim中的文件,很难看到发生了什么.

理想情况下,我希望能够"应用"给定行/范围内的所有^ H,以便我可以看到最终结果.

我宁愿在Vim中逐行进行此操作,但转换整个文件的解决方案总比没有好.

vim text

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

任何可扩展的OLAP数据库(Web应用程序规模)?

我有一个应用程序需要针对不同级别的聚合进行分析,这就是OLAP工作负载.我也想经常更新我的数据库.

例如,这是我的更新看起来像(架构看起来像:时间,目标,源IP,浏览器 - >访问)

(15:00-1-2-2010, www.stackoverflow.com, 128.19.1.1, safari) -->  105

(15:00-1-2-2010, www.stackoverflow.com, 128.19.2.1, firefox) --> 110

...

(15:00-1-5-2010, www.cnn.com, 128.19.5.1, firefox) --> 110
Run Code Online (Sandbox Code Playgroud)

然后我想问一下上个月从firefox浏览器访问www.stackoverflow.com的访问量是多少.

我知道Vertica系统可以以相对便宜的方式实现这一点(明智的性能和可扩展性,但可能不是成本方面的).我这里有两个问题.

1)是否有可以构建的开源产品来解决这个问题?特别是,蒙德里安系统的运作情况如何?(可扩展性和性能)2)是否有HBase或Hypertable基础解决方案(显然,裸HBase/Hypertable不能这样做)? - 但如果有基于HBase/Hypertable的项目,可扩展性可能不会成为IMO的问题)?

谢谢!

database olap hadoop hbase olap-cube

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

如何返回sqlalchemy查询中相关实体的计数

我是sqlalchemy的新手,虽然文档似乎相当彻底,但我找不到一种方法来做我想要的.

说我有两张桌子:论坛和帖子.每个论坛都有一个家长论坛和任意数量的帖子.我想要的是:

  • 顶级论坛列表
  • 通过顶级论坛可以访问热切的儿童论坛
  • 每个儿童论坛的帖子数

所以我开始:

 query(Forum).filter(Forum.parent==None).all()
Run Code Online (Sandbox Code Playgroud)

这给了我所有顶级论坛.当然,访问子论坛会产生n个选择查询.

 query(Forum).options(eagerload('children')).filter(Forum.parent==None).all()
Run Code Online (Sandbox Code Playgroud)

这解决了n选择问题.

现在我最好的猜测是这样的:

 query(Forum, func.count(Forum.children.posts)).options(eagerload('children')).filter(Forum.parent==None).group_by(Forum.children.id).all()
Run Code Online (Sandbox Code Playgroud)

但我得到的只是:

AttributeError: Neither 'InstrumentedAttribute' object nor 'Comparator' object has an attribute 'posts'
Run Code Online (Sandbox Code Playgroud)

我尝试了一些变化,但没有进一步.为了清楚起见,我正在寻找相当于这个SQL:

select Forum.*, Child.*, count(Post.id)
from Forum
left join Forum Child on Child.parent = Forum.id
left join Message on Message.forum = Child.id
where Forum.parent is null
group by Child.id
Run Code Online (Sandbox Code Playgroud)

python sql sqlalchemy

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

有没有办法在Scala中指定类型参数的子集,推断其余的?

我有一个看起来像这样的课:

class X[A <: Throwable, B, C](b: B, c: C)
Run Code Online (Sandbox Code Playgroud)

可以推断出A,B和C,所以我可以用以下方法实例化它:

val x = new X(3, 4)
Run Code Online (Sandbox Code Playgroud)

这给了我一个X [Nothing,Int,Int] - 经常是我想要的.

但我有时想将A指定为Nothing以外的东西(比如说AssertionError).如果没有指定B和C,这是否可行.我想象的语法如下:

val x = new X[AssertionError](3, 4)
val x = new X[AssertionError, _, _](3, 4)
val x = new X[AssertionError,,](3, 4)
Run Code Online (Sandbox Code Playgroud)

但显然这不起作用.

是否有一些语法,或者某种方式我可以达到相同的结果?

scala type-inference

9
推荐指数
2
解决办法
569
查看次数

信任库是否需要sub-ca证书?

我正在尝试设置分层PKI.我是否可以创建仅包含根ca证书的信任库,这是否意味着我的应用程序信任由sub-ca证书签署的证书,而该证书又由root ca签名?

顺便说一下,您似乎必须提供整个证书链,包括根证书.当然,如果根ca是可信的,则不需要发送证书?我们只想检查下一个证书是否由它签名.

java ssl certificate certificate-authority

8
推荐指数
1
解决办法
2676
查看次数

有没有办法在JTree中有多个根的扩展器图标?

我有一个具有多个"根"的JTree(当然,我实际上有一个有多个孩子的隐形真根).

双击时节点会展开和折叠,但由于没有展开器图标,因此没有可视指示可以执行此操作.

由于默认情况下树被折叠这一事实使情况变得更糟,但扩展"根"并没有真正帮助,因为每个人都有很多孩子并且它看起来很杂乱.

有没有办法显示扩展器图标而不会使真实(并且完全没价值)的根可见?

任何其他建议,以使显示更清晰的欢迎.

java jtree

8
推荐指数
1
解决办法
2374
查看次数

如何从distutils二进制发行版中剥离源代码?

我想从distutils创建一个只有字节码的发行版(不是真的,我这样做;我知道我在做什么).使用setuptools和bdist_egg命令,您只需提供--exclude-source参数即可.不幸的是,标准命令没有这样的选项.

  • 是否有一种简单的方法可以在创建tar.gz,zip,rpm或deb之前去除源文件.
  • 是否有相对干净的按命令方式(例如,仅用于tar.gz或zip).

python distutils bytecode

8
推荐指数
1
解决办法
2707
查看次数

建筑MVC和Swing

我想使用MVC来构建我的Swing应用程序,但似乎存在冲突.

据我了解MVC,控制器应处理输入并更新模型.该模型应通知其观察者视图是哪一个.

我有两个问题

  • Swing是所有视图的一部分.组件具有自己的模型这一事实是一个实现细节.我想保留控制器/型号中特定于摆动的代码不是吗?
  • 我的控制器需要接收用户触发的事件,但这些事件来自视图中的swing组件,控制器不应该知道视图.

我敢肯定这个问题以前已经解决了很多次,但我找不到一个真实世界的例子,它是一个体面大小的基于MVC的摇摆应用程序.

更新 - 我忘了一个问题

MVC没有直接满足的是应用程序层次结构中各种MVC组件的结构.例如,主显示器可以具有"销售"和"购买"标签,每个标签可以具有"新"和"查询"面板.最重要的是,可能会有一个"修改选定"按钮,可以根据请求创建(可能是多个)窗口.

必须根据请求为这些子组件创建模型,视图和控制器.它不能是控制器或模型的控制器,因为它们不知道要创建哪个视图,因为它是应用程序逻辑并且它响应事件(这是控制器的工作),所以它不应该是视图.

有答案吗?

model-view-controller swing design-patterns

7
推荐指数
1
解决办法
4372
查看次数