问题列表 - 第8772页

Class <T>的Java泛型

所以我有一张地图:

Map<String, Class> format = new HashMap<String, Class>();
Run Code Online (Sandbox Code Playgroud)

我会像这样添加元素:

format.put("Vendor Number", Integer.class);
format.put("Vendor Dispatch", Date.class); 
....
Run Code Online (Sandbox Code Playgroud)

我有一个通用的方法如下:

public static <T> T verifyType(String name, Class<T> type) {
    if (type == Integer.class) {
        return type.cast(new Integer(Integer.parseInt(name)));
    }
             ......
    return null;
}
Run Code Online (Sandbox Code Playgroud)

现在这段代码很好用,没有编译器问题:

Integer i = verifyType("100",Integer.class);
Run Code Online (Sandbox Code Playgroud)

但是,当我尝试这个:

    Integer i = verifyType("100",format.get("Vendor Number"));

OR 

    Class type = Integer.class
    Integer i = verifyType("100",type);
Run Code Online (Sandbox Code Playgroud)

编译器向我显示此警告:类型安全:未经检查的调用verifyType(String,Class)的泛型方法verifyType(String,Class)

这让我感到困惑......请帮忙...

java generics

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

ID列的推荐数据类型是什么?

我意识到这个问题之前很可能已被问过,但我在StackOverflow上搜索了一些问题,我没有真正找到答案,所以这里有.如果您发现重复,请链接到它.

出于某种原因,我更喜欢在我的主键字段中使用Guids(uniqueidentifier在MsSql中),但我真的不知道为什么这会更好.在许多教程中,我最近走了一段时间,int使用了自动递增.我可以看到两者的专业和缺点:

  • A Guid总是具有相同的大小和长度,并且没有理由担心耗尽它们,而在你用完一个数字之前,你可以拥有多少记录int.
  • int (至少在C#中)是一个可空类型,在查询数据时会打开几个快捷方式.
  • 而且int更容易阅读.
  • 我打赌你可以在这里提出至少几件事.

因此,就像标题所说的那样简单:数据库中ID(主键)列的推荐数据类型是什么?

编辑:收到几个简短的答案后,我还必须添加这个后续问题.没有它,你的答案既不引人注目也不教育...;)为什么你这么认为,另一种选择的缺点是什么让你选择呢?

language-agnostic database-design types primary-key database-agnostic

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

什么是DLR(.NET 4.0 beta 1)的最佳信息来源?

我目前正在深入研究第二版C#,并试图实现"动态协议缓冲区" - 即在我现有的协议缓冲库之上的动态支持级别.因此,我有一个DlrMessage派生自的类型DynamicObject.经过一段时间的游戏,我设法让它以极少的代码回应简单的属性,但我想要进一步 - 并真正了解正在发生的事情.

到目前为止,我还没有找到任何关于DLR的好解释 - 很多博客文章现在都已经过时了,因为之前的CTP和.NET 4.0 beta之间已经发生了变化(我相信).MSDN文档对于DynamicObject来说,目前还很少.

我最直接的疑问是,是否有一种简单的说法,"使用反射来绑定任何我无法处理的调用,使用这个特定的对象." (换句话说,如果可能的话,我想增加现有的反射绑定,而不是自己做所有事情.)不幸的是,我没有通过猜测得到很多.

我应该知道哪些最终和最近的文档来源?我知道关于新技术的部分写作探索,但是有助于获得帮助:)

c# dynamic-language-runtime dynamic c#-4.0

22
推荐指数
2
解决办法
2332
查看次数

c#和Encoding.ASCII.GetString

byte[] header = new byte[]{255, 216}; 

string ascii =  Encoding.ASCII.GetString(header);
Run Code Online (Sandbox Code Playgroud)

我希望ASCII等于FFD8(JPEG SOI标记)

相反,我得到"????"

c# encoding ascii

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

处理UITableViewCell中的touchesBegan会禁用didSelectRowAtIndexPath

我正在我的customtableviewcell控件中实现滑动手势,因此我可以实现touchesBegan事件.我能够实现滑动,但不幸的是,因为touchesBegan在customcell中处理,我没有在tablecontroller上获得didSelectRowAtIndexPath消息.如果禁用了touchesBegan方法,则可以正常工作.

应如何处理?我希望触摸事件在处理touchesBegan后冒泡响应者链.我怎样才能做到这一点?

谢谢.

iphone cocoa-touch uitableview

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

解析请求URL时如何获取URL标签?

URL可以有一个标签,用"#"符号分隔,位于URL参数之后.例如http://example.com/foo/bar.jsp?p1=v1#test_label

我希望label是request.getQueryString()的一部分,也是request.getRequestURL().toString()的一部分.但它似乎并不存在.

有没有办法从服务器端的HttpServletRequest中检索标签值?

java url label servlets

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

ASP.NET动态更改下拉列表控件ID

有人可以告诉我如何让这个工作.我想区分转发器控件中的下拉控件.我现在了解生命周期以及缓冲区是如何写入的,但我的替代方案是什么?这是发生了什么

代码文件

    Dim repeatTimes((TotalAdInsured - 1)) As Integer

    myRepeater.DataSource = repeatTimes
    myRepeater.DataBind()
Run Code Online (Sandbox Code Playgroud)

Aspfile

<asp:Repeater ID="myRepeater" runat="server">
    <ItemTemplate>
         <asp:DropDownList ID="AdTitle<%# Container.ItemIndex %>" runat="server">
             <asp:ListItem Selected="True" Value="" Text=""/>
             <asp:ListItem Selected="False" Value="Miss" Text="Miss"/>
             <asp:ListItem Selected="False" Value="Ms" Text="Ms"/>
             <asp:ListItem Selected="False" Value="Mrs" Text="Mrs"/>
             <asp:ListItem Selected="False" Value="Mr" Text="Mr"/>
             <asp:ListItem Selected="False" Value="Other" Text="Other"/>
         </asp:DropDownList>
    </ItemTemplate>
</asp:Repeater>
Run Code Online (Sandbox Code Playgroud)

返回此错误

分析器错误消息:'AdTitle <%#Container.ItemIndex%>'不是有效的标识符.

vb.net asp.net datarepeater

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

模拟对象什么时候进入重放状态?

执行此代码的第二行时,Rhino Mocks会抛出一个InvalidOperationException,并显示消息"当模拟对象处于重放状态时此操作无效"

var mockScanner = MockRepository.GenerateMock<PortScanner>(null);
        mockScanner.Expect((scanner => { scanner.Scan(null, null); }));
Run Code Online (Sandbox Code Playgroud)

单步执行调试器中的代码可以看到调试器运行类中定义的方法,并且在控制离开此方法后直接发生异常.

另一个测试中的类似代码确实可以正常工作

var mockView = MockRepository.GenerateMock<IScanView>(null);
        mockView.Expect(view => { view.Close(); });
        var controller = new ScanController(mockView);
        controller.Exit();
        mockView.VerifyAllExpectations();
Run Code Online (Sandbox Code Playgroud)

我可以想到的唯一区别可能是两个测试之间的任何后果是,Exit是接口上的成员,而Scan是类中的虚拟成员

我错过了什么?

更新
进一步的探索表明,这与Rhino处理虚拟方法的方式有关.我现在正专注于对文档的研究

rhino-mocks c#-3.0

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

如何请求浏览器始终更新(也称永不缓存)某些页面元素,例如CSS工作表?

我在开发我的页面时发现了一个问题,这一直困扰着我:虽然Firefox(我的通用"开发"浏览器)总是在服务器上更改时更新CSS和图像,但Internet Explorer并不总是这样做.通常,我需要在IE中刷新页面,然后才会向服务器询问更新版本的内容.

据我了解,浏览器不应该至少检查每个请求的所有服务器端对象的时间戳,然后根据需要更新它们的客户端?有没有办法我可以...不强迫,但是......"鼓励"浏览器为某些项目执行此操作?

我在这里遇到的主要问题是我的页面上有一些JavaScript依赖于以某种方式初始化CSS,反之亦然.当一个更新而另一个不更新时(在IE中非常常见,当两者都在他们自己的外部页面中时)它会导致混淆,并且偶尔会在页面上出现泼溅效果.我可以自己动手做"刷页"舞蹈,但是当我在网站上进行脚本狂欢时,我不想鼓励我的用户"刷新页面".

任何建议将不胜感激.页面本身更新顺利(它是PHP),所以最糟糕的情况我可以将CSS和JavaScript吐出到页面本身,但这真的很难看,当然我试图不惜一切代价避免它.

html css browser-cache

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

什么是特定场景的最佳Linux内核锁定机制

我需要为这种情况解决锁定问题:

  1. 一个多CPU系统.
  2. 所有CPU都使用通用(软件)资源.
  3. 只读访问资源非常常见.(传入网络数据包的处理)
  4. 写访问频率低得多.(仅限配置更改).

目前我使用的read_lock_bh,write_lock_bh(自旋锁)机制.问题是CPU越多,我在编写器上下文中获得的软锁定就越多.

我阅读了本书中的并发章节,但是在使用自旋锁时,无法理解读者或作者是否会获得优先权.

所以问题是:

  1. Linux自旋锁机制是否优先考虑读者/作者/没有人?
  2. 有没有一种更好的机制可以用来避免我的场景中的那些软锁定,或者在使用我当前的解决方案时,可能是一种让我在编写器获得锁定时优先考虑的方法?

谢谢,Nir

concurrency linux-kernel mutual-exclusion

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