JAVA

计算机专家在问题求解时非常重视表达式简洁性的价值。Unix的先驱者Ken Thompson曾经说过非常著名的一句话:“丢弃1000行代码的那一天是本人最有成效的一天之一。”这对于任罕救嘶个需要持续支持和维护的软件项目来说,都是一个当之无愧的目标。早期的Lisp贡献...

Java日志基础 Java使用了一种自定义的、可扩展的方法来输出日志。虽然Java通过java.util.logging包提供了一套基本的日志处理API,但你可以很轻松的使用一种或者多种其它日志解决方案。这些解决方案尽管使用不同的方法来创建日志数据,但它们的最终目标是一样...

Spring简介 Spring框架由Rod Johnson开发,2004年发布了Spring框架的第一版。Spring是一个从实际开发中抽取出来的框架,因此它完成了大量开发中的通用步骤,留给开发者的仅仅是与特定应用相关的部分,从而大大提高了企业应用的开发效率。 Spring总结起来优点...

问题背景: 本人要在一个表单里同时一次性提交多名乘客的个人信息到SpringMVC,前端HTML和SpringMVC Controller里该如何处理? 第1种方法:表单提交,以字段数组接收; 第2种方法:表单提交,以BeanListModel接收; 第3种方法:将Json对象序列化成Json字符...

《SQL Server自动化运维系列:监控性能指标脚本》 《SQL Server自动化运维系列:监控磁盘剩余空间及SQL Server错误日志》 《SQL Server自动化运维系列:关于邮件通知那点事》 《SQL Server自动化运维系列:监控跑批Job运行状态》 《SQL Server自动化运维系列...

开始之前 Java 虚拟机有自己完善的硬件架构, 如处理器、堆栈、寄存器等,还具有相应的指令系统。JVM 屏蔽了与具体操作系统平台相关的信息,使得 Java 程序只需生成在 Java 虚拟机上运行的目标代码 (字节码), 就可以在多种平台上不加修改地运行。Java 虚拟机在...

HashMap概述 HashMap是基于哈希表的Map接口的非同步实现。此实现提供所有可选的映射操作,并允许使用null值和null键。此类不保证映射的顺序,特别是它不保证该顺序恒久不变。 HashMap的数据结构 在Java编程语言中,最基本的结构就是两种,一个是数组,另外一...

预计发布的Java 9中,最令人兴奋的特性是什么? 有关Java9的消息最近显得有些沉寂,不要被它迷惑了。JDK开发者正在努力朝着下一个版本迈进,计划2015年12月前完成所有功能开发。之后,它会经历严格测试和bug修复以准备它的全面上市,按计划会在2016年9月发布...

在最近的面试中,本人曾被多次问到,怎么实现一个最近最少使用(LRU)的缓存。缓存可以通过哈希表来实现,然而为这个缓存增加大小限制会变成另一个有意思的问题。现在各位同行看一下怎么实现。 最近最少使用缓存的回收 为了实现缓存回收,各位同行需要很容易...

这两天在看一本书《Java测试新技术TestNG和高级概念》,作者是 TestNG 的创始人,了解了不少关于 TestNG 的知识,看了一篇文章基本把这本书的几个观点都体现了,那本人就直接翻译原文就好,省得自己总结。这两天要不是等原作者的授权的话可能周末ITJS的这篇文...

ITJS的这篇文章主要比较了Java和.NET提供的GZIP压缩功能。 介绍 在ITJS的这篇文章中,各位同行将讨论Java和.NET提供的GZIP压缩功能,并且用实例来说明哪个压缩方法更佳。 在Java中,各位同行有提供GZIP压缩的GZIPOutputStream类,这个类在Java.util.zip包中...

在尽可能短的篇幅里,将所有集合与并发集合的特征,实现方式,性能捋一遍。适合所有”精通Java”其实还不那么自信的人阅读。 不断更新中,请尽量访问博客原文。 List ArrayList 以数组实现。节约空间,但数组有容量限制。超出限制时会增加50%容量,用System...

现在大部分的网站和商城都会使用到URL重写,接触到这个,也是因为正在做的电子商务商城。URL重写,是将原有的URL采用另一种规则来显示,使得用户方便访问同时也屏北救嘶些信息。 在此说下它的好处,在开发过程中,经常会遇到一些带了一大堆参数的URL,这样子...

MySQL有很多的可视化管理工具,比如“mysql-workbench”和“sequel-pro-”。 现在我写MySQL的终端命令操作的文章,是想强化一下自己对于MySQL的理解,总会比使用图形化的理解透彻,因为我本来就比较喜欢写代码。同时写出来这些文章,是想要给大家当个参考,希...

Java 垃圾回收调优不同于任何其它性能优化活动。 首先你要确保自己足够了解整个应用的情况以及调优预期的结果,而不是单单满足于应用的某一部分调优。一般情况下,遵循以下过程比较容易: 明确自己的性能目标。 测试。 测量调优结果。 与目标进行比较。 改...

现在有很多库、实用工具和程序任Java开发人员选择。每个工具都有其优点,但其中有一些因它的知名度、多功能性和有效性从众多选项中脱颖而出。 以下这8个工具,从代码构建到错误挤压,覆盖Java开发的全域。学习这些工具可以帮助你改善代码质量,成为一个更高效...

当时发生了什么? 这得从一个小故事说起。本人在一个Java核心库的邮件列表中提交了一个修改 ——重写了一些本是 final 的方法。一石激起千层浪,这一改动引发了几番讨论。而其中一个讨论的话题是:调用一个去除 final 标记的方法,将导致哪种程度的性能下降(...

代号 Mars 的 Eclipse 4.5 版本发布了,这一版本在 Linux 工具中结合了额外的 Docker 工具,更好地支持 Maven 和 Gradle (包括对嵌入工具的更新),提升了 Java 8 的特性,并通过 Eclipse Marketplace 支持对 Java 9 早期访问。主要更新内容有以下几个方面:...

传统的 Java 内存模型涵盖许多 Java 语言语义上的保证。在ITJS的这篇文章中,各位同行将会强调其中的一些语义,并且深入的理解。各位同行也将尝试理解更新 Java 内存模型(JMM)的动机,这些更新都是与ITJS的这篇文章介绍的语义相关的。关于对 JMM 这次更新的...

Java 8的默认方法试图尝试更进一步简化Java API。不幸的是,这一最近的语言扩展带来了一系列复杂的规则,但只有少部分Java开发者意识到这一点。这篇文章告诉你为什么引入默认方法会破坏你的(用户的)代码。 起初看来,默认方法给Java虚拟机的指令集带来了很...

你是否正打算优化hashCode()方法?是否想要绕开正则表达式?Lukas Eder介绍了很多简单方便的性能优化小贴士以及扩展程序性能的技巧。 最近“全网域(Web Scale)”一词被炒得火热,人们也正在通过扩展他们的应用程序架构来使他们的系统变得更加“全网域”。...

这是一个比Josh Bloch的Effective Java规则更精妙的10条Java编码实践的列表。和Josh Bloch的列表容易学习并且关注日常情况相比,这个列表将包含涉及API/SPI设计中不常见的情况,可能有很大影响。 本人在编写和维护jOOQ(Java中内部DSL建模的SQL)时遇到过这些...

ITJS的这篇文章将为大家介绍8款超好用的Java测试工具和框架。 Java入门 如果你才刚开始接触Java世界,那么要做的第一件事情是,安装JDK——Java Development Kit(Java开发工具包),它自带有Java Runtime Environment(JRE)和JVM(Java运行时环境)。它能让...

简单的java加密算法有: BASE64 严格地说,属于编码格式,而非加密算法 MD5(Message Digest algorithm 5,信息摘要算法) SHA(Secure Hash Algorithm,安全散列算法) HMAC(Hash Message Authentication Code,散列消息鉴别码) 1. BASE64 Base64是网络上最常...

一、SpringMVC基础入门,创建一个HelloWorld程序 1.首先,导入SpringMVC需要的jar包。 2.添加Web.xml配置文件中关于SpringMVC的配置 <!--configure the setting of springmvcDispatcherServlet and configure the mapping--><servlet> <servl...