问题列表 - 第39034页

如果使用String实现String连接是使用StringBuilder实现的,那么为什么在连接期间会创建额外的对象?

如果以下代码:

String s = "a" + 1 + "b";// 1.
Run Code Online (Sandbox Code Playgroud)

使用StringBuilder等效实现

String s = new StringBuilder().append("a").append(1).append("b");
Run Code Online (Sandbox Code Playgroud)

然后将在1中创建额外的对象"a"和"b",为什么?

java string stringbuilder

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

如何覆盖整数,字符串等基本类型?

我正在为大型应用程序扩展vb.net中的一些基本数据类型.这包括integer,string,short等目前的情况是,我的新数据类型的对象有像MYInteger和myString的名字.由于这些是我用于我的应用程序的唯一类型,并且它们大多与默认类型兼容,有没有办法可以覆盖我的默认值,所以当你Dim iThing as Integer实际使用我稍微定制的整数类型时?

vb.net types overriding

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

这个Oracle SQL Developer图标对我的存储过程意味着什么?

我一直在使用Oracle SQL开发人员创建存储过程.

出于某种原因,其中一个图标不包含绿色圆圈.是什么赋予了?这个非绿色图标是什么意思?

替代文字

oracle stored-procedures oracle-sqldeveloper

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

为什么ZipInputStream无法读取ZipOutputStream的输出?

我坚持这个junit测试:

public void test() throws Exception {
    ByteArrayOutputStream out = new ByteArrayOutputStream();
    ZipOutputStream zipOut = new ZipOutputStream( out );
    zipOut.putNextEntry( new ZipEntry( "file" ) );
    zipOut.write( (new byte[] { 0x01, 0x02, 0x03 }) );
    zipOut.closeEntry();
    zipOut.close();

    ZipInputStream zipIn = new ZipInputStream( new ByteArrayInputStream( out.toByteArray() ) );
    ZipEntry entry = zipIn.getNextEntry();
    assertNotNull( entry );
    assertEquals( "file", entry.getName() );
    assertEquals( 3, entry.getSize() );
}
Run Code Online (Sandbox Code Playgroud)

我正在写一个名为"file"的文件和一个ZipOutputStream的三个字节的内容.然后我尝试用ZipInputStream读取创建的数据,但最后一个断言失败,因为entry.getSize()-1和否3,正如预期的那样.

我在这做错了什么?我需要更改什么才能恢复"文件"的内容?我想,我首先要知道能够从流中读取数据的长度吗?

java zip

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

如何将我的视图模型绑定到jqGrid?

使用MVC2和EF框架.到目前为止,我发现的大多数参考/博客文章都涉及将单个表及其数据(有时是分层的)绑定到具有编辑功能的jqGrid.我不需要这个.我甚至不需要编辑数据 - 只需显示.我需要显示和分页数据.排序是一个加号,我猜想搜索奖金.

jqGrid的文档显示了绑定的数据源,如下所示:

return gridModel.OrdersGrid.DataBind(northWindModel.Orders);
Run Code Online (Sandbox Code Playgroud)

但是,我只有我的实体上下文而没有对视图模型的引用.我可以在这里创建一个实体集吗?对此不太熟悉.

我的所有视图模型都包含来自几个不同表的数据.如何将视图模型属性绑定到jqGrid?我玩Trirand的jqGrid的的30天试用版的MVC.同样,我只需要显示和分页数据,但我不确定如何将视图模型连接到jqGrid数据源.

编辑

public ActionResult test()
    {
        var gridModel = new testmodel();
        var viewModel = gridModel.testgrid;
        SetupTestGrid(viewModel);
        return View(gridModel);
    }

    private void SetupTestGrid(JQGrid viewModel)
    {
        viewModel.ID = "TestGrid";
        viewModel.DataUrl = Url.Action("SearchTestGridDataRequested");
        viewModel.ToolBarSettings.ShowEditButton = false;
        viewModel.ToolBarSettings.ShowAddButton = false;
        viewModel.ToolBarSettings.ShowDeleteButton = false;
    }

    public JsonResult SearchTestGridDataRequested(string sidx, string sord, int page, int rows)
    {
        var gridModel = new testmodel(sidx, sord, page, rows);
        SetupTestGrid(gridModel.testgrid);
        return Json(gridModel.datasource);
    }
Run Code Online (Sandbox Code Playgroud)

在testmodel和testmodel(参数)中,我创建了一个包含Phil Haack参数的匿名类型(名为datasource); 总计,页面,记录和行.在SearchTestGridDataRequested的最后一个语句中,此属性是JSON'ified.

linq data-binding asp.net-mvc linq-to-entities jqgrid

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

如何在插入电源时启动Android设备?

我需要将它用于三星平板电脑.

通常,如果关闭设备并连接USB电缆,显示屏将唤醒显示动画电池几秒钟.相反,我想让它启动.

我怀疑这是接近金属的.我在哪里进行修改?在内核中,在Android平台上,还是隐藏在制造商的某些专有代码中?

android linux-kernel android-ndk

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

经典的侧面滚动器如何实现定时事件和动画触发器?

我一直对Snes的超级马里奥系列感到惊讶.我认为它主要是在Z80组装中制作的.但由于没有实时时钟,他们究竟如何管理所有那些定时的动画事件,而且没有实时时钟?

谢谢

graphics assembly

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

如何使用MySQL DB连接设计守护进程

假设您正在编写一个为作业队列提供服务的守护进程.各种其他软件将守护程序的作业写入队列.守护程序每隔几秒轮询队列以查找挂起的作业.假设队列是作为MySQL数据库中的表实现的,并且守护进程是一个简单的循环:

  1. 从队列中获取所有到期作业
  2. 做这些工作
  3. 睡了N秒
  4. 转到1

守护程序必须经受MySQL数据库服务器的中断服务和数据库连接中断.

您是否会将守护进程设计为每个周期连接一次数据库服务器?即在1.之前连接并在2和3之间断开连接?

或者你有守护进程保持连接打开?在这种情况下,它还需要a)检测服务器或连接何时不工作,b)断开连接和重新连接,以及c)这样做而不累积数据库连接,哑连接描述符或其他死资源.

如果您有偏好,为什么?

优点和缺点?

进入设计的因素?

还有其他方法吗?

答案在这里:用PHP编写的守护进程的mysql连接并没有说为什么最好保持连接打开.我在别处读到MySQL中的每个连接开销非常轻.因此,为什么永久消耗一个服务器连接比每隔几秒连接/断开更好是不明显的.

在我的例子中,守护进程是用PHP编写的.

php database daemon

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

自修改代码始终是Linux上的分段错误

我发现了一篇关于自修改代码的文章,并试图做一些例子,但我总是得到分段错误.就像我能理解的那样,内存权限存在违规行为.代码段是(r)ead/e(x)ecute,因此写入的尝试导致此错误.有没有办法通过在运行时或之前更改内存权限来测试程序?我正在使用linux,这个例子是用GAS汇编编写的.

.extern memcpy
.section .data
string:
        .asciz  "whatever"
string_end:
.section .bss
        .lcomm buf, string_end-string
.section .text
.globl main
main:
        call changer
        mov $string, %edx
label:
        push string_end-string
        push $buf
        push $string
        call memcpy
changer:
        mov $offset_to_write, %esi
        mov $label, %edi
        mov $0xb, %ecx
loop1:
        lodsb
        stosb
        loop loop1
        ret
offset_to_write:
        push 0
        call exit
end:
Run Code Online (Sandbox Code Playgroud)

所以在osgx建议的修改后,这是一个工作代码.(实际上,如果你组装并链接并运行它崩溃,但如果你看着使用gdb,它确实修改了它的代码!)

.extern memcpy
.section .data
string:
        .asciz  "Giorgos"
string_end:
.section .bss
        .lcomm buf, string_end-string
.section .text
.globl main
main:
        lea (main), %esi                # get the …
Run Code Online (Sandbox Code Playgroud)

linux x86 assembly self-modifying

10
推荐指数
2
解决办法
3786
查看次数

从Web反序列化XML

通常,这是我反序列化XML文件的方式:

    string location = "C:\\test.xml";
    XmlObjectClass member_data = new XmlObjectClass();

                using (Stream XmlStream = new FileStream(location,FileMode.Open))
                {
                    data = (XmlObjectClass)serializer.Deserialize(XmlStream);
                }
Run Code Online (Sandbox Code Playgroud)

这在我对XML文件进行反序列化时有效,但如果我想反序列化由Web请求返回的XML(即转到URL),该怎么办?

c# xml xml-serialization

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