问题列表 - 第18630页

如何生成Java调用图

我想分析和理解某个Java应用程序,我认为调用图非常有用.我如何生成一个?我正在使用Eclipse.

java eclipse graph call-graph

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

将函数从递归转换为迭代

我有这个函数,我写的是非常慢,因为PHP不能很好地处理递归.我试图将它转换为while循环,但我无法绕过如何做到这一点.

谁能给我一些提示?

    public function findRoute($curLoc, $distanceSoFar, $expectedValue) {

    $this->locationsVisited[$curLoc] = true;
    $expectedValue += $this->locationsArray[$curLoc]*$distanceSoFar;

    $at_end = true;
    for($i = 1; $i < $this->numLocations; $i++) {
        if($this->locationsVisited[$i] == false) {
            $at_end = false;

            if($expectedValue < $this->bestEV)
                $this->findRoute($i, $distanceSoFar + $this->distanceArray[$curLoc][$i], $expectedValue);
        }
    }

    $this->locationsVisited[$curLoc] = false;

    if($at_end) {
        if($expectedValue < $this->bestEV) {
            $this->bestEV = $expectedValue;
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

php iteration recursion

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

在基类中实现IXmlSerializable时如何恢复到"默认"XML序列化?

我正在尝试序列化一个继承自实现IXmlSerializable的基类的类.

名为PropertyBag的基类是一个允许动态属性的类(Marc Gravell的学分).

我实现了IXmlSerializable,以便将动态属性(存储在Dictionary中)写为普通的xml元素.

例如,当序列化具有公共属性(非动态)名称和动态属性Age的类时,我希望它生成以下XML:

<Person>
  <Name>Tim</Name>
  <DynamicProperties>
    <Country>
      <string>USA</string>
    </Country>
  </DynamicProperties>
<Person>
Run Code Online (Sandbox Code Playgroud)

我可以让部分在基础PropertyBag类中使用WriteXml的以下实现:

public void WriteXml(System.Xml.XmlWriter writer)
    {
        writer.WriteStartElement("DynamicProperties");

        // serialize every dynamic property and add it to the parent writer
        foreach (KeyValuePair<string, object> kvp in properties)
        {
            writer.WriteStartElement(kvp.Key);

            StringBuilder itemXml = new StringBuilder();
            using (XmlWriter itemWriter = XmlWriter.Create(itemXml))
            {
                // serialize the item
                XmlSerializer xmlSer = new XmlSerializer(kvp.Value.GetType());
                xmlSer.Serialize(itemWriter, kvp.Value);                    

                // read in the serialized xml
                XmlDocument doc = new XmlDocument();
                doc.LoadXml(itemXml.ToString());

                // write to modified …
Run Code Online (Sandbox Code Playgroud)

c# ixmlserializable

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

通过log4j发送JNI C stderr/stdout

我的java应用程序使用JNI来调用用C编写的库.这个本机库将错误记录到stderr,但我想以某种方式通过我的log4j记录器重定向错误流.这可能吗?

C库是外部的 - 我没有源代码,因此无法更改它.

谢谢

java java-native-interface logging

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

键入"Enter"或"Esc"时如何停止窗口错误声音

我有一个带有单个文本框的表单.没有其他控制.每当我输入"Enter"键或"Esc"键时,表单就会按照我的意愿运行; 但我听到可怕的Windows错误声音.代码看起来类似于以下内容......

public class EntryForm: Form
{
  public EntryForm()
  {
  }

  private void EntryTextBox_KeyUp(object sender, KeyEventArgs e)
  {
    if(e.KeyCode == Keys.Enter)
    {
      // do some stuff
      Hide(); // I've also used DialogResult = DialogResult.OK here
      e.Handled = true;
    }
    else if(e.KeyCode == Keys.Escape)
    {
      Hide(); // I've also used DialogResult = DialogResult.Cancel here
      e.Handled = true;
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

我可以通过将以下代码添加到窗体的构造函数来"破解"它并使噪声停止.

AcceptButton = new Button();
CancelButton = new Button();
Run Code Online (Sandbox Code Playgroud)

正如我所说,这导致声音无法发挥,但我认为这是不好的形式; 特别是因为我不需要表格上的按钮.

任何人都知道为什么这是行为,如果有更清晰的方法来阻止播放错误声音?

c# winforms

7
推荐指数
2
解决办法
6624
查看次数

Google-Analytics API用于跟踪网站搜索?

所以在跟踪器对象上有这个漂亮的_trackPageview()api方法,但有没有相应的方法可以用来手动跟踪搜索?换句话说,_trackPageview()向GA报告用户点击页面.我想要这样的东西_trackSearch("terms")会向GA报告用户搜索的东西.

search google-analytics

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

是否可以自定义JAXB在编组到String时使用的名称空间前缀?

例如,我有一个导入另一个模式的简单模式.第二个模式(urn:just:attributes,just-attributes.xsd)只定义了一个属性组.

<?xml version="1.0" encoding="UTF-8"?>
<schema xmlns="http://www.w3.org/2001/XMLSchema" 
    targetNamespace="http://www.example.org/MySchema"
    xmlns:tns="http://www.example.org/MySchema" 
    elementFormDefault="qualified"
    xmlns:ja="urn:just:attributes">

    <import schemaLocation="just-attributes.xsd" namespace="urn:just:attributes"/>

    <element name="MyElement">
        <complexType>
            <attributeGroup ref="ja:AttributeGroup"/>
        </complexType>
    </element>
</schema>
Run Code Online (Sandbox Code Playgroud)

我正在使用Metro xjc Ant任务来生成此模式的类.我遇到的问题是我正在与之交互的第三方应用程序是名称空间特有的.这种情况我需要一个String值,所以我必须序列化它.我使用样板代码.

private static <T> String marshal(T object) throws JAXBException{
    OutputStream outputStream = new ByteArrayOutputStream();
    JAXBContext jaxbContext = JAXBContext.newInstance(object.getClass());
    Marshaller marshaller = jaxbContext.createMarshaller();
    marshaller.marshal(object, outputStream);
    return outputStream.toString();
}
Run Code Online (Sandbox Code Playgroud)

这给了我一些东西

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ns2:MyElement xmlns:ns1="urn:just:attributes" xmlns:ns2="http://www.example.org/MySchema" ns1:attrib1="1234" ns1:attrib2="5678"/>
Run Code Online (Sandbox Code Playgroud)

xmlns:thirdpartyns="urn:just:attributes"遇到的问题是这个第三方需要类似的东西,也就是说,它们是根据命名空间的名称进行解析.它已经是"thirdpartyns"为他们的软件工作.

有没有人知道如何解决这个问题,而不是在结果字符串中进行查找和替换?也许是自定义绑定规则?

java-metro-framework jaxb xml-serialization jaxb2

25
推荐指数
3
解决办法
5万
查看次数

使用 ruby​​ 读取音频文件元数据

我需要用 ruby​​ 从各种音频文件中读取元数据(歌曲名称、艺术家等),主要是 MP3 和 Apple 的 AAC。我用谷歌搜索,发现没有支持这两种格式的库。

你们如何用 ruby​​ 读取音频元数据?我更喜欢一个尽可能具有最小依赖性的解决方案。

谢谢。

ruby audio metadata

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

高性能分层文本搜索

我现在正处于升级主要交易系统中层次结构设计的最后阶段,我一直在这150行查询中盯着看(我将免除你阅读的所有单调)并认为那里必须是一个更好的方式.

该问题的快速摘要如下:

您将如何实现与层次结构中不同级别的多个搜索项匹配的分层搜索,并针对最快的搜索时间进行优化?


我发现了一个有点相关的问题,但它实际上只有我实际需要的答案的20%左右.这是完整的场景/规范:

  • 最终目标是在层次结构中的任意位置找到一个或多个任意项.
  • 完整的层次结构大约有80,000个节点,预计在几年内会增长到1M.
  • 层次结构中整个路径的全文是唯一且具有描述性的; 但是,单个节点的文本可能不是.这是一个商业现实,而不是一个轻率的决定.
  • 示例:一个节点可能有一个像"门"这样的名字,这本身就没有意义,但完整的背景,"Aaron> House> Living Room> Liquor Cabinet> Door",具有明确的含义,它描述了一个具体的特定门地点.(请注意,这只是一个例子,真正的设计远没那么简单)
  • 为了找到这个特定的门,用户可能会输入"aaron酒门",这可能只会产生一个结果.查询被翻译为序列:包含文本"door"的项目,在包含文本"liquor"的项目下,在包含文本"aaron"的另一项下.
  • 或者,用户可能只需键入"家酒"就可以列出人们家里的所有酒柜(不会那么好).我明确提到这个例子,表明搜索不需要匹配任何特定的根或叶级别.这个用户确切地知道他正在寻找哪个门,但不记得是谁拥有它,并且会记住这个名字是否出现在他面前.
  • 所有术语必须按指定的顺序匹配,但正如上面的示例所示,层次结构中的级别可以"跳过".术语"阿龙酒内阁"不会匹配这个节点.
  • 该平台是SQL Server 2008,但我认为这是一个独立于平台的问题,并且不希望限制该平台的答案.
  • 层次结构本身基于hierarchyid(物化路径),索引广度优先和深度优先.每个层次结构节点/记录都有一个Name要查询的列.基于节点的层次结构查询非常快,所以不要担心这些.
  • 没有严格的层次结构 - 根可能根本不包含任何节点,或者可能包含扇出到10,000个叶节点的30个子树.
  • 最大嵌套是任意的,但实际上它往往不超过4-8级.
  • 虽然不经常,但层次结构可以而且确实会发生变化.任何节点都可以移动到任何其他节点,但有明显的例外(父节点不能移动到自己的子节点等)
  • 如果还没有暗示:我确实可以控制设计,并可以添加索引,字段,表格,以及获得最佳结果所需的一切.

我的"梦想"是向用户提供即时反馈,如渐进式搜索/过滤器,但我知道这可能是不可能的或非常困难的.我对当前方法的任何重大改进感到满意,通常需要0.5s到1s,具体取决于结果的数量.

为了完整起见,现有查询(存储过程)首先收集包含最终项的所有叶节点,然后向上连接并排除其路径与先前项不匹配的任何路径.如果这对任何人来说都是落后的,那么请放心,它比从根源开始并散开更有效率.这是"旧的"方式,每次搜索可能需要几秒钟.

那么我的问题: 是否有更好(更有效)的方式来执行此搜索?

我不一定在寻找代码,只是方法.我考虑了一些可能性,但它们似乎都有一些问题:

  • 创建一个分隔的"路径文本"列,并使用全文搜索对其进行索引.麻烦的是,对此列的搜索也将返回所有子节点; "aaron house"也与"aaron house kitchen""aaron house basement"相匹配.
  • 创建一个NamePath实际上是嵌套字符串序列的列,使用CLR类型,类似于hierarchyid它自己.问题是,我不知道微软如何能够将这种类型的查询"转换"为索引操作,我甚至不确定是否可以在UDT上进行.如果最终结果只是一个完整的索引扫描,我通过这种方法得不到任何结果.

如果我不能做得比现有的更好,那真的不是世界末日; …

database performance search database-design hierarchy

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

当前的WCF技术替代.NET-to-.NET服务?

我正在拆分N层堆栈以允许层的独立扩展,更好的部署独立性,并且我想知道人们当前选择什么样的服务边界通信技术.

服务本身和服务的所有"客户"将通过内部网络相互访问,目前都是.NET 3.5 SP1(Windows Services 3.5,ASP.NET MVC 1.0,ASP.NET WebForm 3.5).

我倾向于Windows Communication Foundation,虽然我听说有关WCF在不久的将来改变方向的传闻.这些谣言有效吗?

我已经驳回了构建自定义ASP.NET MVC服务和作为旧式SOAP Web服务的想法,因为WCF将以自定义响应的能力为代价提供更灵活的传输选择.

是否还有其他.NET服务技术需要考虑?


谢谢各位的意见.很高兴听到我对WCF的倾向仍然是正确的选择,它将会持续一段时间.

.net service wcf communication n-tier-architecture

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