草庐IT

pass-by-name

全部标签

java - 你能以编程方式访问当前的 Heroku dyno id/name 吗?

在Heroku上,您能否以编程方式从应用程序中获取当前正在执行代码的dyno的某种标识符?例如dyno名称(例如“web.1”或“worker.1”)或其他一些ID。如果是,如何在Java中执行此操作? 最佳答案 总是有机器的主机名(看起来像d.LONG_GUID。我想(虽然没有尝试过)这应该有效:Stringlocalhostname=java.net.InetAddress.getLocalHost().getHostName();此外,还有一个鲜为人知的secret,但您可以通过查看环境变量PS1的值来获取“web.1”、“w

Java : programmatically determine all of the package names loaded on the classpath

关于如何找到当前类路径中存在的包名称列表,有什么建议吗?这需要在运行时通过在类路径上加载(和执行)的类之一以编程方式完成(即由内而外,而不是由外而内)。更多详情:我考虑的一种方法是对类加载器到目前为止加载的每个类使用反射,并从中提取包名称。但是,我的应用程序已经运行了数千个类,因此我需要一种更高效的方法。我考虑的另一件事类似于找出类路径中的JAR文件,然后为每个JAR并行列出目录。但是,我不知道这是否可以从应用程序内部实现/如何实现。奖励积分任何建议可以按顶级包过滤的方法的人都可以获得奖励积分。例如。显示com.xyz下的所有包==>com.xyz.*,com.xyz.*.*谢谢!

java - 错误 : detached entity passed to persist - try to persist complex data (Play-Framework)

我在通过PlayFramework持久化数据时遇到问题。也许不可能达到那个结果,但如果它能奏效那就太好了。简单:我有一个复杂的模型(带地址的商店),我想立即更改带地址的商店并以相同的方式存储它们(shop.save())。但是错误detachedentitypassedtopersist发生了。更新历史05.1105.11使用属性mappedBy="shop"更新模型商店更新指向google用户组的链接09.11找到解决方法,但不是通用的16.11更新示例html表单,感谢@Pavel将解决方法(更新09.11)更新为通用方法,感谢@mericano121.11我放弃了寻找解决方案并等

Java 编译器 : How can two methods with the same name and different signatures match a method call?

我有一个名为Container的类:publicclassContainer{privatefinalMapmap=newHashMap();publicvoidput(Stringname,Objectvalue){map.put(name,value);}publicContainerwith(Stringname,Objectvalue){put(name,value);returnthis;}publicObjectget(Stringname){returnmap.get(name);}publicRget(Stringname,Functionmapper){Objectv

c# - C# 中的协变有哪些类型? (或者,协方差 : by example)

协变性(大致)是在使用“简单”类型的复杂类型中镜像继承的能力。例如。我们总是可以处理Cat的实例作为Animal的实例.ComplexType可能被视为ComplexType,如果ComplexType是协变的。我想知道:协方差的“类型”是什么,它们与C#有什么关系(是否支持它们?)代码示例会有所帮助。例如,一种类型是返回类型协方差,Java支持,但C#不支持。我希望有函数式编程能力的人也能插话! 最佳答案 这是我能想到的:更新在阅读了EricLippert提出(和撰写)的建设性评论和大量文章后,我改进了答案:更新了数组协方差的破损

java - JPA Criteria query group by 只使用id

这是一个示例实体:publicclassAccount{@IdLongidDoubleremaining;@ManyToOneAccountTypetype}publicclassAccountType{@IdLongid;Stringname;}现在我创建一个条件查询,加入如下:CriteriaBuildercriteriaBuilder=getEntityManager().getCriteriaBuilder();CriteriaQuerycriteriaQuery=criteriaBuilder.createquery();RootaccountRoot=criteriaQue

Java : How to force a given protected method to be overloaded by children classes?

父类不是也不可能是抽象的。重载方法受到保护,因此不能在那里使用接口(interface)。考虑到这两个限制是否可以做到? 最佳答案 您不能强制覆盖该方法-这就是抽象方法的用途(您已声明这不是一个选项)。一种可能是让基类中的方法抛出一个UnsupportedOperationException。然后,子类必须覆盖它以防止抛出错误。这样,您至少可以检测该方法是否已被覆盖。例如:publicclassFather{publicvoidmethod(){thrownewUnsupportedOperationException();}}pu

Java 8 : Duplicate method name&signature lambda

我正在使用Java8lambda、方法引用和接口(interface)默认方法来探索柯里化(Currying)的美妙世界,然后我遇到了这个我无法理解的Java错误。代码如下:publicclassMain{publicinterfaceCurryBiConsumerextendsBiConsumer{defaultpublicCurryConsumercurryFirst(Tt){return(u)->accept(t,u);}defaultpublicCurryConsumercurrySecond(Uu){return(t)->accept(t,u);}}publicinterfa

java - IllegalArgumentException : Executable name has embedded quote, 拆分参数

我收到一个错误:IllegalArgumentException:Executablenamehasembeddedquote,splitthearguments运行时Runtime.getRuntime().exec(cmd,envTokens,file1);我正在使用Windows7和Java7机器。同一行代码在其他环境下也能正常工作。给我一​​些建议。 最佳答案 发生这种情况是因为Java7update21发生了变化/Java6update45.您的问题的解决方案是重构您的代码以使用java.lang.ProcessBuild

java - 是 javax.naming.InitialContext ThreadSafe

目前,我正在使用以下代码查找普通POJO类的EJB3无状态sessionbean。(我们在JEE5中,所以我们不能在正常的POJO类中注入(inject)无状态sessionBean,我必须使用查找)importjavax.naming.Context;importjavax.naming.InitialContext;importjavax.naming.NamingException;importorg.apache.log4j.Logger;publicObjectgetEJB(StringjndiName){logger.debug("WEBSPHEREEJBLookup:"+