当前位置:  编程技术>软件工程/软件设计
本页文章导读:
    ▪Maven实战(一)安装与配置      1. 简介   Maven是基于项目对象模型(POM),可以通过一小段描述信息来管理项目的构建,报告和文档的软件项目管理工具.  如果你已经有十次输入同样的Ant targets来编译你的代码、jar或者w.........
    ▪jeecg-framework-3.1.0.RELEASE 正式发布       【jeecg-framework-3.1.0.RELEASE(精简版)升级日志】 ———————————————————————————————————————— version: jeecg-framework-3.1.0.RELEASE date:    2012-04.........
    ▪什么是模型驱动应用(MDApp)      首先设定一个基本的讨论背景,如图1。它表现了模型驱动应用所处的典型情景,显示了信息技术(左侧)与业务(右侧)之间的鸿沟,包括它们各自的抽象层级系统(呈现为两个方向相反的.........

[1]Maven实战(一)安装与配置
    来源: 互联网  发布时间: 2013-11-19
1. 简介

  Maven是基于项目对象模型(POM),可以通过一小段描述信息来管理项目的构建,报告和文档的软件项目管理工具.

 如果你已经有十次输入同样的Ant targets来编译你的代码、jar或者war、生成javadocs,你一定会自问,是否有一个重复性更少却能同样完成该工作的方 法。 Maven便提供了这样一种选择,将你的注意力从作业层转移到项目管理层。Maven项目已经能够知道如何构建和捆绑代码,运行测试,生成文档并宿主项目网页

2.核心价值

   * 简单

      Maven 暴露了一组一致、简介的操作接口,能帮助团队成员从原来的高度自定义的、复杂的构建系统中解脱出来,使用Maven现有的成熟的、稳定的组件也能简   化构建系统的复杂度。

   * 交流与反馈

      与版本控制系统结合后,多有人都能执行最新的构建并快速得到反馈。此外,自动生成的项目报告也能帮助成员了解项目的状态,促进团队的交流。

   * 测试驱动开发

      TDD强调测试先行,所有产品都应该由测试用例覆盖。而测试是maven生命周期的最重要组成部分之一,并且Maven有现成的成熟插件支持业界流行的测试框架,如Junit和TestNG。

   * 快速构建

    只需要一些配置,之后用一条简单的命令就能让Maven帮你清理、编译、测试、打包、部署,然后得到最终产品。[/size]

   * 持续集成

      更加方便的持续集成

   * 富有信息的工作区

2.主要内容

   我将会发表一系列课程来讲解Maven的应用,基于Maven3.0,主要内容如下:

   1)安装和配置

   2)Maven使用入门

   3)坐标和依赖

   4)Maven仓库

   5)  生命周期和插件

   6)聚合与继承

   7)使用Nexus创建私服

   8)使用Maven进行测试

   9)m2eclipse的使用

   10)自动部署maven项目

   11)使用Hudson进行持续集成


3. 安装好JDK

    以JDK1.5以上为例


4. Maven 的下载
   下载地址:http://maven.apache.org/download.html


5.Maven安装

   将下载到的文件解压到指定目录即可,如:C:\maven\apache-maven-3.0.4


6.环境变量的配置

    在系统环境变量中新增如下环境变量
    M2_HOME:  Maven的安装目录,如:C:\maven\apache-maven-3.0.4
    M2:  %M2_HOME%\bin
    并在path中添加%M2%,这样便可以在任何路径中执行mvn命令


7. 检测安装是否成功

    Cmd窗口执行命令:mvn –v

    得到如下图所示结果:

  

8.设置代理

  有时候你所在的公司基于安全因素考虑,要求你使用通过安全认证的代理访问因特网。这时就需要为Maven配置HTTP代理。

   在目录~/.m2/setting.xml文件中编辑如下(如果没有该文件,则复制$M2_HOME/conf/setting.xml):

<proxies>
    <proxy>
      <id>optional</id>
      <active>true</active>
      <protocol>http</protocol>
      <username>proxyuser</username>
      <password>proxypass</password>
      <host>proxy.host.net</host>
      <port>80</port>
      <nonProxyHosts>local.net|some.host.com</nonProxyHosts>
    </proxy>    
 </proxies>


作者:luqin1988 发表于2013-4-14 13:48:25 原文链接
阅读:55 评论:0 查看评论

    
[2]jeecg-framework-3.1.0.RELEASE 正式发布
    来源: 互联网  发布时间: 2013-11-19
 【jeecg-framework-3.1.0.RELEASE(精简版)升级日志】

————————————————————————————————————————
version: jeecg-framework-3.1.0.RELEASE
date:    2012-04-14
————————————————————————————————————————

1、 最大亮点:开放UI标签库源码(让用户更好的把控平台,进行二次开发)
2、 增加查询过滤器、实现组合查询
3、 增加excel等工具类
4、 修复[系统管理]模块的bug
5、 集成报表,采用highchart报表(用户分析模块柱状图、线性图等)
6、 提供数据监测功能
7、 tab采用href和ifram两种模式,提高页面速度并保证具有独立样式的页面能够加载;
8、 抽取V2 spring jdbc方式
9、 对Session失效进行处理
10、 一对多示例程序
11、支持对菜单排序功能
12、通过Hiberate拦截器对添加人、添加时间、修改人、修改时间自动追加,记录数据操作日志
13、提供一套专业的单元测试代码
14、制作学习帮助书籍《JEECG UI标签库帮助文档》《JEECG_v3开发指南》《JEECG_v3系统表设计》



下载地址:http://code.google.com/p/jeecg/d ... &q=#makechanges
作者:zhangdaiscott 发表于2013-4-14 18:13:19 原文链接
阅读:0 评论:0 查看评论

    
[3]什么是模型驱动应用(MDApp)
    来源: 互联网  发布时间: 2013-11-19

首先设定一个基本的讨论背景,如图1。它表现了模型驱动应用所处的典型情景,显示了信息技术(左侧)与业务(右侧)之间的鸿沟,包括它们各自的抽象层级系统(呈现为两个方向相反的金字塔)。模型驱动应用基于人可理解/操作且计算机可处理的中介模型,跨越鸿沟,对业务领域和计算机领域建立连接(参看 Situation for Discussions about MDApps及此文)。本文将主要基于这一背景,对“模型驱动应用”概念进行讨论。近十多年来,我们一直使用类似的词语,包括企业模型驱动应用,模型驱动应用或信息系统等,并没有见到其它相似用法的明确定义[1];在近期发布的论文[2]中,对此做了专门界定。本文建议,模型驱动应用(英文model-driven application, 缩写为MDApp)这一词语,作为专门的术语,主要用于两种含义:一种是指特定的系统类型,另一种指与此类型相关的理念、架构(architecture)、途径或相应的研究领域或知识体;在英文表达中,参照诸如“信息系统”(Information Systems)一词的用法,对后者主要使用复数形式(model-driven applications, MDApps)。


图1:一个讨论模型驱动应用的情境

 

模型驱动应用系统

根据论文[2]中的定义,模型驱动应用就是一种模型驱动系统,其功能与行为基于或受控于可演变的应用模型,而这些模型的对象就是应用的对象。这个定义是建立在更一般化的概念,即模型驱动系统和模型驱动机制(MDS & MDM)上,它们为模型驱动应用提供了构造性的准则。这一概念的理解涉及三个关键词。

第一个是应用模型(applied model),它定义于模型驱动机制,“应用”意味着该模型作用于应用系统之中,并且其对象(即模型所表达的对象,参见此文)就是用户要通过该系统处理的事物,控制相关的系统系统功能或行为而不是直接对它们建模。

第二个是对象(target),在这双重使用:一是对应着应用模型,一是对应着应用系统,它们指向相同的目标事物;换言之,系统的作用对象就是应用模型表示的对象。例如,一个模型驱动的货仓应用系统,其对象可包括仓位、货品、存货、交货单、交货流程等;那么,这个系统的应用模型就将包括仓位模型、货品模型、存货模型、交货单模型、交货流程模型 [3]。

第三个是应用模型的可演变性(evolutionary),即系统运行于应用模型上,同时应用的用户可以在系统运行中,即运行时(runtime),对应用模型进行添加、修改、清除。这意味着系统能够通过使用者对应用模型的更新而适应(adapt)其应用对象的变化。例如,如果需要系统处理某种单据,就需要在应用模型中创建它的模型;而当我们想要改变它的格式,就必须为它创建新的模型,或者对现有的模型做出修改。

此外,按照TOGAF 9 [4]定义,应用(application)是“支持业务功能与服务的,部署并运行的IT系统”。根据这个定义,模型驱动应用可表述为,部署并基于业务(中的事物)模型运行的IT系统,其应用对象就是业务(中的事物),这些事物的模型就是应用模型。

建立一个模型驱动应用的基本构造已经被识别和提炼出来,这就是模型驱动机制。在此基础上,可以设计和实现各种不同的实际系统。对真实的软件来说,模型驱动机制中的操作装置可能划分成几个不同的模块,例如建模器(建模工具)、模型驱动器(引擎)、作业器(或功能引擎)等。图2显示了这样一个模型驱动应用的初步结构,这样的软件系统,可称为模型驱动应用平台(platform)。

 

图2:一个基本的模型驱动应用结构(根据[2] Fig. 4.)


在实践中,真实的企业/业务应用平台设计通常比图2复杂得多,并且可能结合其它的架构风格,例如SOA,以及运用许多互相关联的模型驱动机制结构,即多重模型驱动机制。无论如何,模型驱动机制都是决定模型驱动应用关键特征所必需的核心构造。

概括地说,模型驱动应用就是运行于可演变的应用对象模型之上的计算机应用,这种模型称为应用模型。它最重要的特征是对用户的,即其所支持的功能/操作与应用对象事物(业务)的联系建立在这些事物的模型上[5],而这些模型可以由用户在系统运行中更新。这一特征可以概括为“模型即所能”,或参照耳熟能详的短语WYSIWYG,表述为 "what you model is what you handle" (WYMIWYH;要处理什么就对其建模) [6]。客户从软件供应商那里购买的不再是带着所谓“最佳实践”的业务解决方案,而仅仅是业务支撑平台和工具,客户的业务及其独特的需求则反映在属于他们自己的应用模型之中,所以,对具体客户而言,模型就是应用。

值得留意,应用模型的对象事物也可以是系统自身(或其部分),例如用户接口(UI)、外观、配置或结构等等;运行于这种模型之上(即反射,reflection),可能尤为软件架构师或程序员关注,对最终用户,这当然也是极其重要的特性,然而,模型驱动应用最有意义的贡献,无疑是基于系统外(常称为现实世界)事物的模型,而与面向固定业务功能设计的常见应用相比,这个“小小的”差异,会导致整个应用生命周期及生态系统的巨大区别。

模型驱动应用理念

在实践中,模型驱动理念具体表现为一种强壮的富架构(architecture),参见MDApps vs. MDA and OO: from an Architectural Perspective,Architecture(架构/体系结构)与营造法式:一个简单的理解等文。由企业应用探索十五年之路线图可窥见,在模型驱动应用背后,有一系列协调一致的原理。 与近几十年流行的观点相比,它实际上反映了一个完全不同的计算机应用“世界观”。这需要更详细的阐述。在论文[2]中(第二章),对此有一个初步的陈述。更多的相关讨论如

  • Situation for Discussions about MDApps
  • Human, Computer, the Real World, and Inevitable Mediating Model
  • Model-Dependent Realism: Is This the Worldview of Software Engineering?
  • Three Spaces for Entities and Models of Applications
  • Abstraction (III) Make Long Story Short
  • 一个模型,从认知架构到信息系统架构及认知结构三角模型及映像、模型与理论概念
  • 开放的世界与有限的模型;等等。

这些讨论看起来很零散,但背后有一副完整的图画。

最后,正如TOGAF和图1(

    
最新技术文章:
▪主-主数据库系统架构    ▪java.lang.UnsupportedClassVersionError: Bad version number i...    ▪eclipse项目出现红色叉叉解决方案
▪Play!framework 项目部署到Tomcat    ▪dedecms如何做中英文网站?    ▪Spring Batch Framework– introduction chapter(上)
▪第三章 AOP 基于@AspectJ的AOP    ▪基于插件的服务集成方式    ▪Online Coding开发模式 (通过在线配置实现一个表...
▪观察者模式(Observer)    ▪工厂模式 - 程序实现(java)    ▪几种web并行化编程实现
▪机器学习理论与实战(二)决策树    ▪Hibernate(四)——全面解析一对多关联映射    ▪我所理解的设计模式(C++实现)——解释器模...
▪利用规则引擎打造轻量级的面向服务编程模式...    ▪google blink的设计计划: Out-of-Progress iframes    ▪FS SIP呼叫的消息线程和状态机线程
▪XML FREESWITCH APPLICATION 实现    ▪Drupal 实战    ▪Blink: Chromium的新渲染引擎
▪(十四)桥接模式详解(都市异能版)    ▪你不知道的Eclipse用法:使用Allocation tracker跟...    ▪Linux内核-进程
▪你不知道的Eclipse用法:使用Metrics 测量复杂度    ▪IT行业为什么没有进度    ▪Exchange Server 2010/2013三种不同的故障转移
▪第二章 IoC Spring自动扫描和管理Bean    ▪CMMI简介    ▪目标检测(Object Detection)原理与实现(六)
▪值班总结(1)——探讨sql语句的执行机制    ▪第二章 IoC Annotation注入    ▪CentOS 6.4下安装Vagrant
▪Java NIO框架Netty1简单发送接受    ▪漫画研发之八:会吃的孩子有奶吃    ▪比较ASP和ASP.NET
▪SPRING中的CONTEXTLOADERLISTENER    ▪在Nginx下对网站进行密码保护    ▪Hibernate从入门到精通(五)一对一单向关联映...
▪.NET领域驱动设计—初尝(三:穿过迷雾走向光...    ▪linux下的块设备驱动(一)    ▪Modem项目工作总结
▪工作流--JBPM简介及开发环境搭建    ▪工作流--JBPM核心服务及表结构    ▪Eclipse:使用JDepend 进行依赖项检查
▪windows下用putty上传文件到远程Linux方法    ▪iBatis和Hibernate的5点区别    ▪基于学习的Indexing算法
▪设计模式11---设计模式之中介者模式(Mediator...    ▪带你走进EJB--JMS编程模型    ▪从抽象谈起(二):观察者模式与回调
▪设计模式09---设计模式之生成器模式(Builder)也...    ▪svn_resin_持续优化中    ▪Bitmap recycle方法与制作Bitmap的内存缓存
▪Hibernate从入门到精通(四)基本映射    ▪设计模式10---设计模式之原型模式(Prototype)    ▪Dreamer 3.0 支持json、xml、文件上传
▪Eclipse:使用PMD预先检测错误    ▪Jspx.net Framework 5.1 发布    ▪从抽象谈起(一):工厂模式与策略模式
▪Eclipse:使用CheckStyle实施编码标准    ▪【论文阅读】《Chain Replication for Supporting High T...    ▪Struts2 Path_路径问题
▪spring 配置文件详解    ▪Struts2第一个工程helloStruts极其基本配置    ▪Python学习入门基础教程(learning Python)--2 Python简...
▪maven springmvc环境配置    ▪基于SCRUM的金融软件开发项目    ▪software quality assurance 常见问题收录
▪Redis集群明细文档    ▪Dreamer 框架 比Struts2 更加灵活    ▪Maven POM入门
▪git 分支篇-----不断更新中    ▪Oracle非主键自增长    ▪php设计模式——UML类图
▪Matlab,Visio等生成的图片的字体嵌入问题解决...    ▪用Darwin和live555实现的直播框架    ▪学习ORM框架—hibernate(二):由hibernate接口谈...
▪(十)装饰器模式详解(与IO不解的情缘)    ▪无锁编程:最简单例子    ▪【虚拟化实战】网络设计之四Teaming
▪(十)装饰器模式详解(与IO不解的情缘)    ▪无锁编程:最简单例子    ▪【虚拟化实战】网络设计之四Teaming iis7站长之家
▪Entity Framework底层操作封装(3)    ▪HttpClient 发送GET、POST请求    ▪使用spring框架,应用启动时,加载数据
▪Linux下Apache网站目录读写权限的设置    ▪单键模式的C++描述    ▪学习ORM框架—hibernate(一):初识hibernate
 


站内导航:


特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

©2012-2021,,E-mail:www_#163.com(请将#改为@)

浙ICP备11055608号-3