草庐IT

system.data.datatable

全部标签

java - 意外的 GC 行为 : some data always going into the tenure generation

运行一个非常简单的代码来尝试查看垃圾收集器的功能。Stringa=null;while(true){a=newString("no...");}我正在使用ParallelGC。我打印了GC结果,这是第一个(次要)GC。[GC[PSYoungGen:16448K->1616K(19136K)]16448K->1624K(62848K),0.0022134secs][Times:user=0.00sys=0.00,real=0.00secs]youngGen下降了14880K然而fullHeap只下降了14872K这是否意味着8k已经进入了tenure一代?我的理解是GC可能被称为类'a'

java - 保护字段免受反射 - System.security 的奇怪案例

我目前正在研究Java安全性并遇到了一个奇怪的现象。java中的SecurityManager存放在java.lang.System中的“security”字段中。有趣的是,该字段似乎受到保护以防止反射访问,这确实有意义,但据我所知,该字段是唯一的。所以这里是例子:for(Fieldf:System.class.getDeclaredFields())System.out.println(f);输出publicstaticfinaljava.io.InputStreamjava.lang.System.inpublicstaticfinaljava.io.PrintStreamjava

用于将复杂实体发布到 Spring Data REST/HATEOAS 服务的 Java 客户端

据我所知,提供了将复杂对象转换为正确HAL格式的方法。这当然是在编码框架本身中的对象时利用的。Resource和Link对象等为了一个用例:Company1是我系统中现有的Company。我想添加一个为Company1工作的新Employee下面是一个示例Employee对象,您将从基于SpringDataREST的服务接收到该对象。SpringHATEOAS还提供了自己构造这些对象的方法。{"id":null,"firstName":"bZWthNFk","lastName":"GtTnrqka","loginId":"zTk5rT","active":true,"_links":{

java - 带有 postgresql 的串行列上的 Spring Data JPA "null value in column xxx violates not-null constraint"

我的实体有一个mapOrder字段,我希望它像下面这样自动递增:@EntitypublicclassMap{@Id@GeneratedValue(strategy=GenerationType.IDENTITY)privateLongid;@Column(columnDefinition="serial")privateLongmapOrder;//.......}生成的sql看起来不错:CREATETABLEmap(idbigserialNOTNULL,map_orderserialNOTNULL,...)但是当我用SpringDataJPA的存储库保存它时,像这样:Mapm=new

java - "system-dependent default"线程池是什么?

来自AsynchronousFileChannel应用程序接口(interface):WhenanAsynchronousFileChanneliscreatedwithoutspecifyingathreadpoolthenthechannelisassociatedwithasystem-dependentdefaultthreadpoolthatmaybesharedwithotherchannels.我没有在其他地方看到过这个术语,也没有通过网络搜索找到任何具体的解释。系统相关的默认线程池到底是什么?它有什么特点?它们在系统之间有何不同? 最佳答案

java - `System.console()` 如果从 `null` 开始执行则返回 `gradle run`

我有这个简单的Java程序:packageme.fornever.javaterminal;publicclassMain{publicstaticvoidmain(String[]args){System.out.println("Console:"+System.console());}}还有这个简单的build.gradle:applyplugin:'java'applyplugin:'application'mainClassName='me.fornever.javaterminal.Main'当我使用gradle--no-daemonrun执行它时,我得到以下输出:Cons

java - 使用 System.out.println() 的目的是什么

关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题?更新问题,以便editingthispost可以用事实和引用来回答它.关闭4年前。Improvethisquestion我正在研究System.out.println()的内部实现。虽然我了解它是如何工作的,但无法弄清楚:为什么他们决定首先使用System类。他们可以直接使用io包中的PrintStream类。className.referenceVariable.Methodname语法的意义是什么,因为我们通常不使用它。有什么具体原因吗?任何人都可以详细说明这些要点或任何相关信息会很棒。

java - System.out.println 是否违反得墨忒耳定律?

System.out.println是否违反得墨忒耳定律?如果不是,为什么? 最佳答案 取决于View。LoD:是的,因为它使用控制台。在LoD下,您不能承担访问权限。LoD-F:是的,因为它使用了不止一个点。LoD-F指出,在任何方法使用中,只有对象可能知道其自身的内部结构。浏览器System.out.println()需要系统结构的知识(它有.out)才能到达println(),为了系统不破坏LoD-F,它必须是System.println()为了用例子打破正式规则,println()(方法)只能访问:系统本身println()

java System.getenv 环境名称以 "="开头

我注意到Windows上Java中的环境(通过System.getenv()调用获得)包含一些在真实环境中不存在的变量。这些以和等号开头,包括“=ExitCode”,它映射到在此java调用之前运行的进程的退出代码;以及各种盘符的默认目录,如“=C:”、“=D:”。Sun的所有Java版本似乎都是这种情况,在所有Windows版本上运行。这在任何地方都有记录,还是仅供Sun内部使用?编辑这是一个简单的示例应用程序来说明我的意思。在命令行上编译并运行它:importjava.util.Map;classShowEnv{publicstaticvoidmain(String[]args){

java - 天真地用 Clock.systemDefaultZone().millis() 替换 System.currentTimeMillis() 是否安全?

Java8引入了java.time.Clock接口(interface),它应该允许我有效地模拟系统时间调用(太棒了!)。我想天真地用对someClock.millis()的调用替换对System.currentTimeMillis()的调用,但我不清楚这些根据Clock.system*文档中给出的caviet,两个时钟实际上将在所有情况下返回相同的值,该文档声明它们使用“...最佳可用系统时钟”。System.currentTimeMillis()没有指定任何关于使用最佳可用时钟的类似声明。 最佳答案 嗯,不,你不能保证它会完全一