Archive for ‘ May, 2017

《Spring 5 官方文档》21. 与其他Web框架集成

原文链接 译者:dan  QQ:903585177

21. 与其他Web框架集成

21.1 简介

Spring Web Flow

Spring Web Flow (SWF) 旨在成为管理Web应用程序页面流的最佳解决方案。

SWF与Servlet和Portlet环境中的Spring MVC和JSF等现有框架集成。 如果您有一个业务流程(或流程)将受益于会话模型而不是纯粹的请求模型,则SWF可能是解决方案。

SWF允许您将逻辑页面流作为在不同情况下可重用的自包含模块捕获,因此非常适合构建引导用户通过驱动业务流程的受控导航的Web应用程序模块。

Read more

《Maven官方指南》标准目录结构

原文链接     译者:carvendy

介绍标准目录结构

有一个公共的目录结构考虑到用户对一个Maven项目能马上找到家的感觉就算在另外一个Maven项目。这个好处是类似于网站范围内的外观和感觉。

下一个选项文档目录结构为Maven的预期和目录结构油Maven创建。请尽可能地尝试确认这个结构。无论如何,你不能设置那些由项目描述符重写的。

Read more

《阿里感悟》-能力和晋升

晋升是一个水到渠成的过程,能力到了自动就能晋升(这个能力是指综合能力,而不但指技术能力),能力没到晋升上去也会很累。所以需要努力突破自己,超越本层级的能力,并创造当前层级的人创造不出来的价值。晋升意味着对自己更高的要求,更高的责任和更多的思考。 Read more

《Maven官方指南》设置多仓库

原文链接     译者:carvendy

设置多仓库

这里有两个不同的方式让你可以指定多仓库。第一种方式是在pom中指定你想要使用的仓库: Read more

《阿里感悟》- 提高执行力

什么是执行力

百度上对于执行力的定义如下,有效利用资源、保质保量达成目标的能力。是一种把行动变成结果的能力。通俗来讲就是,老板布置了一个任务,无论多么麻烦,多么没时间,都要想办法利用各种资源完成它,而不是找各种理由和借口,要有强烈的把事情做成的决心。老板要的是结果,而不是抱怨和过程。

Read more

《Spring官方文档》IoC容器(1-2)

原文链接  译者:kl2422

3.1 Spring IoC容器和beans的介绍

本章涵盖了Spring框架实现控制反转(IoC)[1]的原理。IoC又叫依赖注入(DI)。它描述了对象的定义和依赖的一个过程,也就是说,依赖的对象通过构造参数、工厂方法参数或者属性注入,当对象实例化后依赖的对象才被创建,当创建bean后容器注入这些依赖对象。这个过程基本上是反向的,因此命名为控制反转(IoC),它通过直接使用构造类来控制实例化,或者定义它们之间的依赖关系,或者类似于服务定位模式的一种机制。

Read more

《Maven官方指南》使用工具链指南

原文链接  译者:carvendy

使用工具链指南

什么是工具链?

Maven 工具链提供了一种当他们构建的时候需要时候插件发现使用jdk(或者别的工具),而不需要配置他们在每一个pom.xml中,或者强制给出精确的路径在每个构建的机器上。

有了maven工具链申请JDK工具链,一个项目可以在构建的时候被指定一个版本的jdk依赖maven正使用的JDK。想一想JDK能怎么设置到IDE类似IDEA,NetBean和eclipse,或者你能怎么从Maven构建使用的JDK中使用老的JDK编译。

Read more

阿里感悟 – 如何成为一名优秀的新人

成为一名优秀的新人,我认为要做到三点:良好的心态,积极的思考和高效的学习。

Read more

《Maven官方文档》插件前缀解析策略

原文链接  译者:carvendy

插件前缀解析策略

当你执行maven的时候使用一个标准的生命周期,这些插件参与的生命周期就像是一个相当简单的进程。无论如何,当你从命令行中引用一个指令,例如clean,Maven必须有一些可靠的方式让clean插件前缀为maven-clean-plugin。这提供了简洁的命令行调用,当保存这些描述性的插件的真实工件id。

对于很多复杂性的问题,不是所有插件应该被强制使用同样的组id(在仓库中)。从这些组id在一个项目中假定被控制,和对于Maven多个项目可能使用的插件,它跟随着插件前缀匹配必须容纳多个插件组id。 对于地址关系,Maven提供了一块新的的仓库级别元数据(与任何单一的工件无关)对于插件组来说,在一个插件匹配管理者来组织多个插件组合提供功能性的搜索。

指定的插件前缀

为了给使用者方便的前缀去引用你的插件,一个前缀必须与你的插件相关在构建的时候。在默认的情况下,Maven将令一个猜想的前缀被使用,被移除任何被“maven”或者“plugin”的连字符在这些插件的工件id。方便的工件id格式被定为:

  • maven-${prefix}-plugin – 官方Apahe团队的插件(你不必使用这些命名的规则作为你的插件,看看更多的信息
  • ${prefix}-maven-plugin – 其他来源的插件。

如果你的插件工件id符合这个规则,Maven将会根据元数据中正确的前缀自动匹配你插件的组id在仓库中的路径。无论如何,如果你想自定义前缀来引用的你插件,你可以指定前缀来引导通过配置参数在maven-plugin-plugin在你的pom中:

<project>
  ...
  <build>
    ...
    <plugins>
      ...
      <plugin>
        <artifactId>maven-plugin-plugin</artifactId>
        <version>2.3</version>
        <configuration>
          ...
          <goalPrefix>somePrefix</goalPrefix>
        </configuration>
      </plugin>
    </plugins>
  </build>
</project>

以上的配置讲允许使用者引用你的插件通过前缀somePrefix,作为一个例子:

mvn somePrefix:goal

匹配前缀插件

对于每一个组id配置是为了搜索,Maven将:

  1. 从每一个远程仓库下载maven-metadata.xml到本地仓库,和命名为maven-metadata-${repoId}.xml 在内部使用 ${groupId}路径。
  2. 加载元数据文件,在maven-metadata-local.xml(如果存在)中,在内部使用 ${groupId}路径。合并它们。
  3. 发现插件前缀在合并元数据。如果它匹配,它应该引用一个具体的组和工件对。否则,继续在用户插件组中找下一个组id。 这些元数据文件组成的组(为了清晰当这些文件被大块在容器之外的目录),和一个组的插件节点。

在列表中每个插件包含一个前缀节点表示插件的命令行前缀,和一个工件节点, 提供的前缀映射对方提供了足够的信息来查找和使用插入部件。当一个插件被安装和发布,适当的元数据文件被放置和如果前缀匹配丢失了,修改前缀匹配。

配置Maven查找插件

默认情况下,maven将搜索组id org.apache.maven.plugins 为了前缀工件匹配插件,它需要在构建过程中执行。无论如何,前面提到的,使用者可能需要一个第三方的插件。从Maven项目被假定有控制的默认插件组,这意味着配置maven来搜索其他组的位置为了插件前缀匹配。

这很简单。在Maven配置文件(当前用户:${user.home}/.m2/settings.xml; 全局:${maven.home}/conf/settings.xml),你可以提供一个自定义的插件组项目,列出你想要搜索的插件(每个都在自己的plugingroup GroupID的子元素)。作为例子,如果我的项目使用了一个 模板文件,我可以设置:

<pluginGroups>
  <pluginGroup>org.codehaus.modello</pluginGroup>
</pluginGroups>

这使我能够执行以下,这将从模式生成java类:

mvn -Dversion=4.0.0 -Dmodel=maven.mdo modello:java

Maven会搜索以下GroupID的搜索后,在用户设置中指定的任何插件组:

  • org.apache.maven.plugins
  • org.codehaus.mojo

注意:当指定被使用的插件组在搜索的前缀匹配中,秩序是关键!被指定的一个插件组 com.myco.plugins有一个前缀clean,我可以覆盖maven-clean-plugin的时候,当clean:clean被调用的时候。 笔记2:想了解更多信息可以查看 settings.xml

资源

maven配置指南

《Maven官方指南》jdk1.4项目使用JDK1.5构建指南

原文链接  译者:carvendy

jdk1.4项目使用JDK1.5构建指南

你自从Maven 2.2.0 需要 JDK 1.5 来执行,很多用户他们的项目依然使用java 1.4或者更老的版本,他们将需要做一些调整。 理想的情况下,你可以通过使用JDK 1.4编译和测试来解决这个问题,提供适当的工具链配置。无论如何,当前版本编译插件(2.0.2)不是工具链能做的,所以构建一个妥当的构建使用 Maven 2.2.0来构建java面板,比1.5还要老的需要更多其他的配置。 Read more

《Maven官方指南》使用Maven 2 为不同环境构建

原文链接     译者:carvendy

使用Maven 2 为不同环境构建

构建同一个组件到不同的环境是经常让人苦恼的。你有多个环境,为了实例化测试和生产服务或者可能是一个服务的集合他们使用了不同的配置文件。在指南中我将解释怎么样使用配置属性来构建和打包组件并指定环境。看看构建配置属性解释 为了配置属性的概念更深入的解释。 笔记:

  • 指南指出你必须要有基本的Maven 2.
  • 将使用一种方式配置Maven,简单地解决了配置安装。由简单配置安装你,我的意思是你只能有一个文件或者小集合文件来指定环境。有其他更好的方法来处理两个和许多尺寸配置问题·····

这个例子使用标准的文档结构Read more

《Maven官方指南》插件文档标准指南

原文链接     译者:carvendy

介绍

标准从哪里来?

插件文档标准为解决经常抱怨的缺乏文档而编制,特别在Maven插件这块。标准是基于Maven开发邮箱列表的建议而改进。这一个社区maven插件应该怎么样使用的文档共识。

为什么需要一个文档标准

标准不是设置一些条例二十引导插件开发者如何更好地使用插件,为了那些对用户有用的插件来说。标准提醒插件开发者重要的细节需要有文档的,来帮助加快插件推进。 Read more

《Maven官方指南》拷贝sun的jar包

原文地址     译者:carvendy

拷贝sun的jar包

经常用户面对需要构建反对的被sun提供的jar比如Javamail包或者Activation包和用户发现那些不在中心仓库这个破碎建筑里。不幸的很多工件在sun的二进制许可证,不允许我们分发他们的ibiblio而失败。

另外一个问题就是sun没有有任何惯例来他们命名的jar,所以我们建议使用一些公共的命名sun的工件。你可以找到一个我们建议的列表:

Read more

《Maven官方指南》 迁移引导

原文链接

迁移引导

有时候在仓库中迁移工件是很重要的事情。例如一个项目从Maven 1 转 Maven 2。Maven 1 项目传统上使用扁平存储结构,而使用Maven 2使用的深度结构。作为一个例子Maven 1 项目有一个 maven组,而Maven 2的项目中有 org.apache.maven 的组。

制造改变了仓库可以说有很深远的影响。所以最好是第一时间获取正确,它将通过一组不同类型的迁移。

Read more

《Spring5官方文档》19. 视图技术

原文链接  译者:dan  QQ:903585177

19.1 简介

Spring架构与其他MVC框架所不同的重要一点是视图技术,比如  , 决定使用Groovy Markup Templates 或者Thymeleaf代替JSP仅仅是配置的问题 . 这个章节主要设计主流的视图技术,以及简单提及怎样使用新的技术。这个章节假设你已经熟悉第18.5节 “Resolving views” ,该章节涵盖了视图怎样与MVC框架结合的基本知识。

Read more

return top