《Spring官方文档》17.利用O/X映射器编组XML

原文链接 译者:kdmhh

17. 利用O/X映射器编组XML

17.1 引言

这一章,我们将介绍Spring对对象/XML映射器的支持。对象/XML映射器或者简称O/X映射器,是一种在XML文档和对象之间互相转换的行为。这种转换过程也叫做XML编组或者XML序列化。本章将交替使用这两种术语。

在O/X映射器中,编组是指把对象序列化为XML的过程。同样,解组是指XML反序列化为对象,XML可以是DOM文档、输入输出流或者SAX处理程序。

阅读全文

《Java NIO教程》Java NIO Path

原文链接     作者:Jakob Jenkov     译者:黄国鹏

Java的Path接口是Java NIO2 的一部分,是对Java6 和Java7的 NIO的更新。Java的Path接口在Java7 中被添加到Java NIO,位于java.nio.file包中, 其全路径是java.nio.file.Path。

一个Path实例代表了一个文件系统中的路径。一个路径可以指向一个文件或者一个文件夹。一个路径可以是绝对路径或者是相对路径。绝对路径是从根路径开始的全路径,相对路径是一个相对其他路径的文件或文件夹路径。相对路径可能会造成一点混乱,但是不要担心,在本文章中,我会详细解释相对路径的。

阅读全文

Velocity原理探究

一、前言

常见的Java模板引擎有JSP、Freemark,Velocity。在MVC三层框架中,模板引擎属于view层,实质是把model层内容展现到前台页面的一个引擎,velocity以其前后端解耦使前后台可以同时开发和其语法的简易性得到了广泛的应用,集团WebX框架就建议使用它作为模板引擎。

阅读全文

子线程优雅调用父线程RequestScope作用域Bean问题的探究

 

一、前言

最近我们组在做项目分层模块化项目调研,就产生一个问题如何在开启的线程中不破坏使用习惯情况下使用请求线程里面的RequestScope作用域的bean,感觉这个问题比较有意思就研究并整理下一下,以便备忘,下面从最基础知识将起,一步步引入问题和解决方法

阅读全文

《Maven官方指南》Maven 配置

原文链接      译者:carvendy

Maven 配置

Maven 配置发生有三个级别:

  • Project – 静态配置在pom.xml
  • Installtion – 这个配置在maven的一次安装中
  • User – 这个配置指定部分用户

这样区分就清晰了 – 项目定义信息应用于项目,无论是谁构建它,当其他人也从定义了一些配置作为环境变量。

阅读全文

高并发编程必备基础

一、前言

借用Java并发编程实践中的话”编写正确的程序并不容易,而编写正常的并发程序就更难了”,相比于顺序执行的情况,多线程的线程安全问题是微妙而且出乎意料的,因为在没有进行适当同步的情况下多线程中各个操作的顺序是不可预期的,本文算是对多线程情况下同步策略的一个简单介绍。

阅读全文

Java中线程池ThreadPoolExecutor原理探究

一、 前言

线程池主要解决两个问题:一方面当执行大量异步任务时候线程池能够提供较好的性能,,这是因为使用线程池可以使每个任务的调用开销减少(因为线程池线程是可以复用的)。另一方面线程池提供了一种资源限制和管理的手段,比如当执行一系列任务时候对线程的管理,每个ThreadPoolExecutor也保留了一些基本的统计数据,比如当前线程池完成的任务数目。

另外,线程池提供许多可调参数和可扩展性钩子。程序员可以使用更方便
工厂方法比如newCachedThreadPool(无限线程池,线程自动回收),newFixedThreadPool(固定大小的线程池)newSingleThreadExecutor(单个线程),当然用户还可以自定义。

阅读全文

并发队列-有界阻塞队列ArrayBlockingQueue原理探究

一、 前言

上节介绍了无界链表方式的阻塞队列LinkedBlockingQueue,本节来研究下有界使用数组方式实现的阻塞队列ArrayBlockingQueue

阅读全文

并发队列-无界非阻塞队列ConcurrentLinkedQueue原理探究

一、 前言

常用的并发队列有阻塞队列和非阻塞队列,前者使用锁实现,后者则使用CAS非阻塞算法实现,使用非阻塞队列一般性能比较好,下面就看看常用的非阻塞ConcurrentLinkedQueue是如何使用CAS实现的。

阅读全文

《Maven官方指南》模型指南

原文链接     译者:carvendy

模型指南

模型是一个从简单模板生成源码的工具。从简单模板你可以生成这些:

  • Java源码
  • XML序列化源码模型
  • XML反序列化源码模型
  • 模型文档
  • XSD

阅读全文

《Maven官方指南》构建Maven

原文链接     译者:carvendy

构建Maven

为什么我想构建Maven?

构建有两个原因,其中一个是Maven的原因:

  • 为了尝试一些边缘特性或修正(版本可以在JRIA中找到)。
  • 为了你已经修复一个问题和提交分支到开发者团队。

阅读全文

《Maven官方指南》创建装配

原文链接     译者:carvendy

创建装配

装配机制在Maven中提供了一种简单的方式创建,分布使用一个装配描述符和依赖信息在你的pom中。为了有序地使用插件你需要配置装配插件在你的pom中和它可能看起来像这样:

阅读全文

并发队列-无界阻塞队列LinkedBlockingQueue原理探究

一、前言

前面介绍了使用CAS实现的非阻塞队列ConcurrentLinkedQueue,下面就来介绍下使用独占锁实现的阻塞队列LinkedBlockingQueue的实现。

阅读全文

并发队列-无界阻塞优先级队列PriorityBlockingQueue原理探究

一、 前言

PriorityBlockingQueue是带优先级的无界阻塞队列,每次出队都返回优先级最高的元素,是二叉树最小堆的实现,研究过数组方式存放最小堆节点的都知道,直接遍历队列元素是无序的。

阅读全文

《Spring 5 官方文档》15.使用JDBC实现数据访问

15.1 介绍Spring JDBC框架

表格13.1很清楚的列举了Spring框架针对JDBC操作做的一些抽象和封装。里面区分了哪些操作Spring已经帮你做好了、哪些操作是应用开发者需要自己负责的.

表13.1. Spring JDBC – 框架和应用开发者各自分工
阅读全文

return top