小编Jon*_*nas的帖子

简单的Java Web框架

是否有像sinatra(用于ruby)或web.py(用于python)的简单java Web框架?

java web-frameworks

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

Mac OS X上的Python和非框架构建之间的差异

在Mac OS X上,Python构建和非框架构建(即标准UNIX构建)之间有什么区别?另外,每个的优点和缺点是什么?

初步研究

以下是我在发布此问题之前找到的信息:

  • [Pythonmac-SIG]为什么需要使用Python的Framework构建
    • B. Grainger:"我似乎记得,如果你想用原生Mac GUI做任何事情,就需要一个Python的Framework构建.我的理解是否正确?"
    • C. Barker:"非常多 - 要访问Mac GUI,应用程序需要在适当的Mac应用程序包中.框架构建提供了这个."
  • Apple Developer Connection:框架定义
    • "框架是一个包(结构化目录),它包含动态共享库以及相关资源,例如nib文件,图像文件和头文件.当您开发应用程序时,您的项目将链接到一个或多个框架.例如,iPhone应用程序项目默认链接到Foundation,UIKit和Core Graphics框架.您的代码通过应用程序编程接口(API)访问框架的功能,API由框架通过其头文件发布.动态共享,多个应用程序可以同时访问框架代码和资源.系统根据需要将框架的代码和资源加载到内存中,并在所有应用程序之间共享资源的一个副本.
  • 框架编程指南:什么是框架?
    • "与静态链接库和其他类型的动态共享库相比,Frameworks具有以下优势:
      • 框架组相关,但是分开,资源在一起.通过此分组,可以更轻松地安装,卸载和定位这些资源.
      • 框架可以包括比库更多种资源类型.例如,框架可以包含任何相关的头文件和文档.框架的多个版本可以包含在同一个包中.这使得可以向后兼容旧程序.
      • 无论有多少进程正在使用这些资源,在任何给定时间,只有一个框架的只读资源副本驻留在内存中.这种资源共享减少了系统的内存占用,有助于提高性能."

背景

在Mac OS X 10.6 Snow Leopard之前,我没有考虑过这个,因为我只是下载并安装Python 2.6.2 Mac安装程序磁盘映像,这是一个框架构建,并使用virtualenv,pip继续我的业务但是,随着Snow Leopard到64位,gcc等的变化,我注意到一些问题让我想要从源代码构建/编译Python 2.6.2+,这让我想到了将Python构建为MacOSX | Darwin框架的差异和优缺点的问题.

python macos frameworks

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

启用/安装GD扩展?--without-GD

当我在"配置命令"中输入phpinfo()时,如何启用(或者我需要安装)GD; --without-gd?

我的phpinfo()输出"Core"中也没有任何内容列出"gd"

AWS上的PHP V5.2.4.

php gd amazon-ec2

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

"在这台电脑上记住我" - 它应该如何运作?

查看Gmail的Cookie,很容易看到存储在"记住我"cookie中的内容.用户名/一次访问令牌.在用户名是秘密的情况下,它可以以不同的方式实现.但无论如何......事情的安全性不是很高:你偷走了饼干而你已经准备好了.

我的问题是在功能方面,但是你什么时候擦拭他们的访问权限?如果用户登录而未在另一台计算机上单击"记住我",是否应该在所有计算机上使其访问权限无效?我问的是传统上如何实现它,以及它应该如何实现.

security password-protection remember-me

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

Java反思:为什么这么慢?

基于其缓慢的声誉,我总是避免使用Java反射.我在当前项目的设计中达到了一个重点,能够使用它会使我的代码更具可读性和优雅性,所以我决定试一试.

我对这种差异感到惊讶,有时候我注意到运行时间差了近100倍.即使在这个简单的例子中它只是实例化一个空类,它也令人难以置信.

class B {

}

public class Test {

    public static long timeDiff(long old) {
        return System.currentTimeMillis() - old;
    }

    public static void main(String args[]) throws Exception {

        long numTrials = (long) Math.pow(10, 7);

        long millis;

        millis = System.currentTimeMillis();

        for (int i=0; i<numTrials; i++) {
            new B();
        }
        System.out.println("Normal instaniation took: "
                 + timeDiff(millis) + "ms");

        millis = System.currentTimeMillis();

        Class<B> c = B.class;

        for (int i=0; i<numTrials; i++) {
            c.newInstance();
        }

        System.out.println("Reflecting instantiation took:" 
              + timeDiff(millis) + "ms");

    } …
Run Code Online (Sandbox Code Playgroud)

java reflection performance

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

如何为Gson编写自定义JSON反序列化器?

我有一个Java类,用户:

public class User
{
    int id;
    String name;
    Timestamp updateDate;
}
Run Code Online (Sandbox Code Playgroud)

我收到一个包含来自Web服务的用户对象的JSON列表:

[{"id":1,"name":"Jonas","update_date":"1300962900226"},
{"id":5,"name":"Test","date_date":"1304782298024"}]
Run Code Online (Sandbox Code Playgroud)

我试图编写一个自定义反序列化器:

@Override
public User deserialize(JsonElement json, Type type,
                        JsonDeserializationContext context) throws JsonParseException {

        return new User(
            json.getAsJsonPrimitive().getAsInt(),
            json.getAsString(),
            json.getAsInt(),
            (Timestamp)context.deserialize(json.getAsJsonPrimitive(),
            Timestamp.class));
}
Run Code Online (Sandbox Code Playgroud)

但我的解串器不起作用.如何为Gson编写自定义JSON反序列化器?

java json gson deserialization

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

如何从Canvas上的HTML5 File API中绘制图像?

我想在画布上绘制一个用HTML5 File API打开的图像.

在该handleFiles(e)方法中,我可以访问文件,e.target.files[0]但我无法直接使用该图像drawImage.如何从HTML5画布上的File API中绘制图像?

这是我用过的代码:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8"/>
<script>
window.onload = function() {
    var input = document.getElementById('input');
    input.addEventListener('change', handleFiles);
}

function handleFiles(e) {
    var ctx = document.getElementById('canvas').getContext('2d');
    ctx.drawImage(e.target.files[0], 20,20);
    alert('the image is drawn');
}
</script>
</head>
<body>
<h1>Test</h1>
<input type="file" id="input"/>
<canvas width="400" height="300" id="canvas"/>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)

javascript drawimage fileapi html5-canvas

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

是否有任何工具可用于执行Scala代码的静态分析?

是否有用于执行Scala代码静态分析的工具,类似于FindBugs和PMD for Java或Splint for C/C++?我知道FindBugs可以处理编译Java所产生的字节码,所以我很好奇它如何在Scala上运行.

谷歌搜索(截至2009年10月27日)显示的很少.

谷歌搜索(截至2010年2月1日)揭示了这个问题.

testing functional-programming static-analysis scala

46
推荐指数
5
解决办法
8283
查看次数

实施30天的时间试验

对于独立Mac开发者的问题:

我如何以非邪恶的方式实施30天的时间试验?将计数器放在prefs中是不可取的,因为每月擦除一次prefs对普通用户来说不是问题.将计数器放在隐藏文件的某个地方听起来有点狡猾 - 作为一个用户,我讨厌当应用程序将随机文件洒在我的硬盘上时.有任何想法吗?

macos cocoa licensing

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

Apache Tapestry和Apache Wicket之间的区别

Apache Wicket(http://wicket.apache.org/)和Apache Tapestry(http://wicket.apache.org/)都是面向组件的Web框架 - 与Apache Foundation的基于行为的框架(如Stripes)相反.两者都允许您使用Java中的组件构建应用程序.它们看起来和我很相似.

这两个框架之间有什么区别?有人有经验吗?特别:

  • 他们的表现如何,国家处理能够定制多少,他们可以无国籍地使用吗?
  • 它们的组件模型有什么区别?
  • 您会选择哪些应用程序?
  • 他们如何与Guice,Spring,JSR 299集成?

编辑:我已经阅读了两者的文档,我已经使用过两者.这些问题不能通过阅读文档来回答,而是根据使用这些问题一段时间的经验,例如如何在无状态模式下使用Wicket用于高性能站点.谢谢.

java wicket tapestry web-frameworks

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