我看到在Ruby(和动态类型语言,通常)中,一种非常常见的做法是传递散列,而不是声明具体的方法参数.例如,不是使用参数声明一个方法,而是像这样调用它:
def my_method(width, height, show_border)
my_method(400, 50, false)
Run Code Online (Sandbox Code Playgroud)
你可以这样做:
def my_method(options)
my_method({"width" => 400, "height" => 50, "show_border" => false})
Run Code Online (Sandbox Code Playgroud)
我想知道你对它的看法.这是好事还是坏事,我们应该这样做吗?在什么情况下使用这种做法是有效的,它有什么危险的情况?
我偶然发现了这个:
http://en.literateprograms.org/Vending_Machine_%28java%29
它是一个java自动售货机,我想阅读它并跟随,写相同的代码.
什么是获得Java设置的最快方法,以便我可以在阅读时开始编写java自动售货机?
当我查看同一页面的右侧并且意识到我也可以下载Netbeans时,我正在下载用于Windows,多语言的Java SE开发工具包6u17.
同样,问题是像我这样的新手可以用来做上面链接的java自动售货机的最好的Java IDE或编译器.
要么
java程序员使用什么来编写java代码?
我是java的新手,C++很容易安装并开始编码,PHP也是如此,但java对我来说似乎是一个有趣的新野兽,谢谢你没有火红.
我正在开发一个网站,有时浏览器会继续加载,我想知道究竟是什么让它加载了这么长时间.它被卡住了.
所以我想知道是否有任何应用程序或方法来检查加载到页面上的内容,所以我可以看到它被卡在哪个元素或对象上?
该网站使用php/javascript/mysql和html
我们正在开发一个包含大约400个数据库表的应用程 并且具有相同数量的EJB(All是本地接口,EJB是无状态的),并且一个EJB通过@EJB标记注入另一个EJB.
我怀疑的是,是否有更多的EJB对应用程序的性能有任何影响?
我有一个奇怪的问题,正在发送和接收的cookie,但Internet Explorer上的JavaScript无法访问.Chrome,Firefox,Opera和Safari JavaScript都可以.
发布到" http://wp.abc.example.com/content/sv2.cgi?id=1234 ",响应设置Cookie,问题302重定向:
HTTP/1.0 302 Moved Temporarily
Location: http://members.abc.example.com/abc/members/0912/07/news01.html
Set-Cookie: AID=1495763b4fc6d5f4290e2074ab1092f7; expires=Tue Feb 16 09:33:03 2010 GMT; path=/abc/members/0912/07/news01.html; domain=abc.example.com; ;
Set-Cookie: LEADENDDATE=20091218; expires=Tue Feb 16 09:33:03 2010 GMT; path=/abc/members/0912/07/news01.html; domain=abc.example.com; ;
Run Code Online (Sandbox Code Playgroud)浏览器请求目标页面,包括刚刚发送的cookie.
GET /abc/members/0912/07/news01.html HTTP/1.1
Cookie: AID=1495763b4fc6d5f4290e2074ab1092f7; LEADENDDATE=20091218;
Host: members.abc.example.com
Run Code Online (Sandbox Code Playgroud)运行"javascript:alert(document.cookie);" 在浏览器地址栏中.
在IE和IE上,cookie不在那里.其他浏览器都很好.这适用于IE6,7和8.
总而言之,
"wp.abc.example.com"在"abc.example.com"上设置一个cookie,该cookie在"members.abc.example.com"的请求中发送给服务器,但在该页面上的JavaScript不可见.
为什么?
我想也许不是"abc.example.com",应该在".abc.example.com"上设置cookie以允许子域匹配,但即便如此,它也会在"members.abc.example.com"请求标头中发送.
基本上它就像在cookie上设置"HttpOnly"一样,即使从上面显示的Set-Cookie头部示例中,也不包括该标志.额外的";" 也许有一些影响?
我有以下if语句
if (isset($part->disposition) and ($part->disposition=='attachment'))
Run Code Online (Sandbox Code Playgroud)
问题是该陈述的第二部分,我还需要包括这个;
($part->disposition=='inline')
Run Code Online (Sandbox Code Playgroud)
如果处置是附件或其内联,则该语句需要起作用.
任何人都可以指向我解释或向我解释我如何只使用Android OS Lib轻松解析XML并在Android上获取w3c.Document的值?
我试图使用dom4j的实现,但它很慢:-(
我注意到Java和JOGL以及C#和Tao.OpenGL在将PNG从存储器加载到内存中时,以及将BufferedImage(java)或Bitmap(C# - 两者都是硬盘驱动器上的PNG)加载到'OpenGL中时,性能差异很大.
这种差异非常大,所以我认为我做错了,但经过大量的搜索和尝试不同的加载技术后,我一直无法减少这种差异.
使用Java,我得到一个248ms加载的图像,并在728ms加载到OpenGL中C#上加载图像需要54ms,加载/创建纹理需要34ms.
上面讨论的图像是一个包含透明度的PNG,大小为7200x255,用于2D动画精灵.我意识到尺寸确实非常荒谬,我正在考虑削减精灵,但是差异仍然存在(并且令人困惑).
在Java端,代码如下所示:
BufferedImage image = ImageIO.read(new File(fileName));
texture = TextureIO.newTexture(image, false);
texture.setTexParameteri(GL.GL_TEXTURE_MIN_FILTER, GL.GL_LINEAR);
texture.setTexParameteri(GL.GL_TEXTURE_MAG_FILTER, GL.GL_LINEAR);
Run Code Online (Sandbox Code Playgroud)
C#代码使用:
Bitmap t = new Bitmap(fileName);
t.RotateFlip(RotateFlipType.RotateNoneFlipY);
Rectangle r = new Rectangle(0, 0, t.Width, t.Height);
BitmapData bd = t.LockBits(r, ImageLockMode.ReadOnly, PixelFormat.Format32bppArgb);
Gl.glBindTexture(Gl.GL_TEXTURE_2D, tID);
Gl.glTexImage2D(Gl.GL_TEXTURE_2D, 0, Gl.GL_RGBA, t.Width, t.Height, 0, Gl.GL_BGRA, Gl.GL_UNSIGNED_BYTE, bd.Scan0);
Gl.glTexParameteri(Gl.GL_TEXTURE_2D, Gl.GL_TEXTURE_MIN_FILTER, Gl.GL_LINEAR);
Gl.glTexParameteri(Gl.GL_TEXTURE_2D, Gl.GL_TEXTURE_MAG_FILTER, Gl.GL_LINEAR);
t.UnlockBits(bd);
t.Dispose();
Run Code Online (Sandbox Code Playgroud)
经过大量的测试后,我只能得出结论,Java/JOGL在这里速度较慢 - PNG读取可能不会那么快,或者我仍然在做错事.
谢谢.
EDIT2:
我发现创建一个格式为TYPE_INT_ARGB_PRE的新BufferedImage会使OpenGL纹理加载时间减少近一半 - 这包括必须创建新的BufferedImage,从中获取Graphics2D,然后将之前加载的图像渲染到它.
Edit3:5种变化的基准测试结果.我写了一个小的基准测试工具,下面的结果来自加载一组33个png,大多数是非常宽,5倍.
testStart: ImageIO.read(file) -> TextureIO.newTexture(image)
result: avg = 10250ms, total = 51251 …Run Code Online (Sandbox Code Playgroud) 好吧,这似乎是一个简单的任务,但我没有设法让它运行.
我有一个groovy脚本,在提示符调用时在Windows Vista下正常运行:
> cd MY_GAILS_PROJECT_DIR
> groovy cp src/groovy scripts/myscript.groovy
Run Code Online (Sandbox Code Playgroud)
现在,我想通过我的维护服务类(从控制器调用)执行此脚本(并向其传递一些输入参数),如下所示,
class MaintenanceService {
def executeMyScript() {
"groovy cp src/groovy scripts/myscript.groovy".execute()
}
}
Run Code Online (Sandbox Code Playgroud)
它根本不起作用!我甚至没有设法让execute()方法识别任何命令(比如"cd .".execute())抛出异常:
Error 500: java.io.IOException: Cannot run program "cd": CreateProcess error=2, The system cannot find the file specified
Run Code Online (Sandbox Code Playgroud)
1-如何从grails应用程序执行groovy脚本?
2-这里有哪些最佳做法?例如,我应该使用QuartzPlugin然后使用triggerNow方法来执行脚本吗?我应该使用Gant任务吗?如果是的话,该怎么办?
谢谢.
declare @top int
set @top = 5
select top @top * from tablename
Run Code Online (Sandbox Code Playgroud)
可能吗?
或任何想法这样的逻辑(我不想使用动态查询)?