编程语言

SQL 已经应用到了我们周围的各个角落,不管你信不信。操纵任何种类数据的每个应用程序都需要将数据存放在某处。无论它是大数据,还是只有简单数行的数据包;无论是政府、还是创业公司;无论是横跨多台服务器的大型数据库、还是运行着自己小型数据库的手机,SQ...

引言 最近有位细心的朋友在阅读笔者的文章时,对java类的生命周期问题有一些疑惑,笔者打开百度搜了一下相关的问题,看到网上的资料很少有把这个问题讲明白的,主要是因为目前国内java方面的教材大多只是告诉你“怎样做”,但至于“为什么这样做”却不多说,...

介绍 众所周知,AOP(面向切面编程)是Spring框架的特色功能之一。通过设置横切关注点(cross cutting concerns),AOP提供了极高的扩展性。那AOP在Spring中是怎样运作的呢?当你只能使用core java,却需要AOP技术时,这个问题的解答变得极为关键。不仅如此,...

说起观察者模式,估计能搜出一堆来。所以写这篇博客的目的有两点: 观察者模式是写松耦合代码的必备模式,重要性不言而喻,抛开代码层面,许多组件都采用了Publish-Subscribe模式,所以我想按照自己的理解重新设计一个使用场景并把观察者模式灵活使用在其中...

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

1.读取UTF-8编码文本原理 首先了解UTF-8的编码方式,UTF-8采用可变长编码的方式,一个字符可占1字节-6字节,其中每个字符所占的字节数由字符开始的1的个数确定,具体的编码方式如下: U-00000000 - U-0000007F: 0xxxxxxx U-00000080 - U-000007FF: 110xxxxx 1...

前因 Grails默认情况使用Hibernate作为数据存取的框架。不过Hibernate的缺点是众所周知的。所以各位同行在一些复杂的场合需要通过 groovy.sql.Sql 直接使用sql来获取数据。这样就会存在如下的问题:如何使用Grails配置的数据库连接 如何执行sql,进行数据库...

location表达式类型 ~ 表示执行一个正则匹配,区分大小写 ~* 表示执行一个正则匹配,不区分大小写 ^~ 表示普通字符匹配。使用前缀匹配。假若匹配成功,则不再匹配其他location。 = 进行普通字符精确匹配。也就是完全匹配。 @ 它定义一个命名的 location,使...

MySQL凭借着出色的性能、低廉的成本、丰富的资源,已经成为绝大多数互联网公司的首选关系型数据库。虽然性能出色,但所谓“好马配好鞍”,如何能够更好的使用它,已经成为开发工程师的必修课,我们经常会从职位描述上看到诸如“精通MySQL”、“SQL语句优化”...

对于数据过滤而言CHECK约束已经算是相当不错了。然而它仍存在一些缺陷,比如说它们是应用到表上面的,但有的时候你可能希望指定一条约束,而它只在特定条件下才生效。 使用SQL标准的WITH CHECK OPTION子句就能完成这点,至少Oracle和SQL Server都实现了这个功...

创建一个自定义的Annotation import java.lang.annotation.*; import java.lang.reflect.Method; @Documented @Target(ElementType.METHOD) @Retention(RetentionPolicy.RUNTIME) public @interface MethodInfo { String author() default '.....

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

概要 ITJS的这篇文章主要介绍了灰度化的几种方法,以及如何使用Java实现灰度化。同时分析了网上一种常见却并不妥当的Java灰度化实现,以及证明了opencv的灰度化是使用“加权灰度化”法 24位彩色图与8位灰度图 首先要先介绍一下24位彩色图像,在一个24位彩色图...

最近在用 NHibernate 做多对多更新时突然发现 NHibernate 更新的策略很差, 对多对多关系的更新居然是先全部删除再插入全部数据, 感觉非常奇怪, 现在还原如下: 原来的实体类关系如下: public class User { public virtual int Id { get; set; } public...

Java 8中的java.util.zip.ZipFile包中提供了stream方法,能够非常容易的获取ZIP压缩包中的条目。在这篇文章中,本人会通过一系列的示例来展示各位同行可以非常快速的遍历ZIP文件中的条目。 注意:为了在这篇博客中做演示,本人从GitHub上以ZIP文件的形式下载...

ITJS的这篇文章来自StackOverflow问答网站的一个热门讨论:如何用Java编写一段会发生内存泄露的代码。 Q:刚才本人参加了面试,面试官问本人如何写出会发生内存泄露的Java代码。这个问题本人一点思路都没有,好囧。 A1:通过以下步骤可以很容易产生内存泄露...

文首先给出个例子来探究下什么是实例变量初始化器,什么是实例初始化器,以及什么是静态初始化器。然后看看实例初始化器是怎么工作的。 1. 执行的顺序 先看看下面这段代码,你觉着哪部分会先被执行呢? public class Foo {//instance variable initializer 实...

今天花了四个小时, 终于在linux下把eclipse下java开发opencv给搞定了... 至于为什么花这么久的时间... 且听本人慢慢讲... linux编译安装opencv 首先, linux下安装opencv其实不麻烦的, 参考文档即可完成: http://docs.opencv.org/trunk/doc/tutorials/introduc...

很多人一直唠叨着并发中的新概念。然而,许多开发人员还没有机会把过多的注意力都放在上面。在这篇文章中,各位同行将带您了解Java 8 streams、 Hadoop、 Apache Spark、 Quasar fibers以及响应式编程,让你迅速入门。尤其是如果你不经常用它们的话。一句话,...

做最坏的打算 提前检查 不要信任外部数据 可信任的设备:摄像头、鼠标以及键盘 ?“写操作”同样可能失效安全编程 不要抛出“new Exception()” 不要将重要的异常信息存储在Message属性中 每个线程要包含一个try/catch块 捕获异常后要记录下来 不要只记录Exc...

在过去的几天里,我有了开发生涯中最有意义的经历之一, 想在这里跟大家分享。 现在我们已经让 ClojureScript 可以在 Android 上运行了。不是在一个 WebView 里面,也不是利用像 Cordova 这样的东西,而是实实在在的运行在一个嵌入式的 JavaScript 引擎中。到...

在主流的Web站点中,图片往往是不可或缺的页面元素,尤其在大型网站中,几乎都将面临“海量图片资源”的存储、访问等相关技术问题。在针对图片服务器的架构扩展中,也会历经很多曲折甚至是血泪教训(尤其是早期规划不足,造成后期架构上很难兼容和扩展)。...

Nginx (engine-x)是一个开源的高性能 HTTP 服务器、反向代理和 IMAP/POP3 代理服务器。nginx 杰出的功能有:稳定、丰富的功能集、简单的配置和低资源消耗。nginx 被用于一些高性能网站并在站长之间变得越来越流行。本教程会从源码构建一个带有 google paesp...

槽点一:集成方式采用ANT 工程还是传统的工程,集成还在用的ant,当然ant来做没有什么不可以,但是作为OSC这么高大上的作者拿出的作品能不能槽点高一些?已经采用了Maven了,用Maven无法独立完成的意思么? 槽点二:提交内容的不审慎 居然把Eclipse的工程...