`
senton
  • 浏览: 206753 次
  • 性别: Icon_minigender_1
  • 来自: 紫禁城
社区版块
存档分类
最新评论

Ant学习笔记

    博客分类:
  • Ant
阅读更多

 一 . Ant是一个类似make的工具,用来编译/运行/测试java程序。 构建、包装和发布过程中几乎每一件事都可以由Ant的任务来处理.
 Ant的用法:
 1.设置环境变量,在环境变量path的后面加上";C:\apache-ant-1.6.5\bin";
  没有指定任何参数时,Ant会在当前目录下查询build.xml文件。如果找到了就用该文件作为buildfile  。 如果你用 -find 选项。Ant就会在上级目录中寻找buildfile,直至到达文件系统的根。要想让Ant使用 其他的buildfile,可以用参数 -buildfile file,这里file指定了你想使用的buildfile。

 2.写一个build.xml文件,下面是一个简单的例子:
  <?xml version="1.0" encoding="gb2312"?><!--指定编码方式为gb2312这样就可以加上一些中文注释了-->
  <project name="antDemo" default="run">
   <!--属性文件 student.property 的内容:
   name=zhangsan
   age=18
   sex=m
   -->
   <property file="student.property"/>
   <target name="echo_1">
    <echo message="${name},${age},${sex}"/>
   </target>
   
   
   <!--定义一个全局变量 -->
   <property name="age" value="23"/>
   <target name="echo_2">
    <echo message="${age}"/>
   </target>
   
   <!--使用环境变量-->
   <property environment="envir"/>
   <target name="echo_3">
    <echo message="${envir.OS}"/>
   </target>
   
   <!--编译java源文件-->
   <target name="init">
   <!--使用mkdir创建dest目录-->
    <mkdir dir="dest"/>
   </target>
   
   <!--使用depends指定此target要依赖的对象-->
   <target name="compile" depends="init">
   <!--
   srcdir指定java源文件的路径,destdir指定class文件的路径,includes指定要编译
   的文件,如果不指定此属性,则编译srcdir指定目录下面的所有java源文件,还可以使用
   excludes指定要排斥的文件。
   -->
    <javac srcdir="src" destdir="dest" includes="test/Hello1.java, test/HelloWorld1.java"/>
   </target>   
   
   <target name="run" depends="compile">
   <!--classname属性指定要运行的class文件-->
    <java classname="Hello1">
    <!--classpath子元素的pathelement子元素指定classname指定的文件的路径-->
     <classpath>
      <pathelement path="dest"/>
     </classpath>
    </java>
   </target>
  
  </project>
  在DOS环境下运行ant,这时可能会有两种结果,一是正确执行得到你自己想要的结果了,而是出现错误提  示说找不到tools.jar包,这时就得设置java的环境变量了,本人都是用下面这方法设置的,
  (1).变量名:JAVA_HOME  值:"jdk的绝对路径",
  (2).变量名:classpath  值:"%JAVA_HOME%/lib",
  (3).变量名:path 值:";%JAVA_HOME%/bin",
  这样再重启命令行窗口运行ant命令就不会有错了.

二 . 一个对象池的例子,很有用的一个例子哦!在连接数据库时的连接对象池就可以用这样的方法,
  下面是两个比较简单的方法:
 /*此题设计一个ObjectPool类作为对象池,这个对象池负责创建和维护若干个Object对象,
  *其初始化有3个Object对象,此类提供一个getObject方法,该方法每次向外部提供一个未被
  *外部使用的Object对象,如果所维护的对象全部返回给了外面,则对象池负责创建新的Object
  *对象返回给外部,如果所返回给外部的对象达到10个时则抛出异常,此类还提供一个
  *releaseObject方法,用于将先前提供给外部的一个Object对象退还到对象池中,它维护的未
  *被外部使用的Object对象不能超过5个。
  */

 import java.util.*;
 public class ObjectPool
 {
  //  第一种方法

  Vector busyPool = new Vector();//正在使用的对象集合
  Vector freePool = new Vector();//没有使用的对象集合
  
  public ObjectPool()
  {
   //默认freePool里面有三个对象
   freePool.add(new Object());
   freePool.add(new Object());
   freePool.add(new Object());
  }
  
  public Object getObject() throws Exception
  {
   if(busyPool.size() >= 10)//大于10个对象时抛出异常
   {
    throw new Exception("异常!");
   }
   
   if(freePool.size() == 0)//如果freePool没对象就创建一个新对象添加到busyPool并返回
   {
    Object objNew = new Object();
    busyPool.add(objNew);
    return objNew;
   }   
   
   int index = freePool.size() - 1;//当集合里面还有对象时,
   Object obj = freePool.get(index);//获取freePool里面的最后一个对象obj
   busyPool.add(obj);//将obj添加到busyPool里面,
   freePool.remove(obj);//将obj从freePool对象里面删除。
   return obj;  
  }
  
  public void releaseObject(Object obj) throws Exception
  {
   if(busyPool.contains(obj))//如果busyPool集合里面存在这个对象则删除它
   {
    busyPool.remove(obj);
   }
   else//否则抛出异常
   {
    throw new Exception("异常");
   }
   
   if(freePool.size() < 5)//此对象池最多能容纳5个空闲对象。
   {
    freePool.add(obj);//如果不超过5个则将添加至freePool中
   }  
  } 
 
  /* 第二种方法,和第一种的相比在于releaseObject方法中不能判断外部退还的对象是不是此对象池给出去的对象
  
  Vector v = new Vector();//保存从外面传回来的对象,初始化有三个
  int count = 3;//定义一个记录总共对象的计数器
  
  public ObjectPool()
  {
   for(int i = 0; i < 3; i++)
   {
    Object obj= new Object();
    v.add(obj);
   }
  }
  
  public Object getObject() throws Exception
  {
   Object o = null;
   if(v.size() == 0 && count < 10)//当集合里面没有空闲对象且总共拿出去的对象不超过
   {        //10个时,则新建一个对象,计数器自 +1;
    o = new Object();
    count++;
   }
   else if(count == 10)    //当计数器记录的对象数达到10个时抛出异常。
   {
    throw new Exception("异常");
   }
   else if(v.size() > 0 && count < 10)//当集合里面有空闲对象且计数器记录的对
   {         //象数少于10个时,从集合里面取出一个并删除它
    o = v.get(v.size() - 1);  //最后返回
    v.remove(v.size() - 1);
    count++;
   }
   return o;
  }
  
  public void ReleaseObject(Object o)
  {
   if(v.size() < 5) //当空闲对象小于5个时就将外面传进来的对象放到集合中,
   {
    v.add(o); 
   }
   count--;   //每传回来一个就把计数器自 -1.
  }
  */
 }

分享到:
评论

相关推荐

    ant学习笔记之(ant执行命令的详细参数和Ant自带的系统属性)

    《Ant学习笔记:详解Ant执行命令参数与系统属性》 Ant,作为一个基于Java的构建工具,因其跨平台性以及XML格式的构建脚本而被广泛应用于自动化构建过程,如编译、打包、测试等。本篇文章将深入探讨Ant执行命令的...

    ant 学习 笔记 一个简单的java 编译部署实例

    根据提供的文件信息,这里将深入解析“ant学习笔记:一个简单的java编译部署实例”,涵盖标题、描述、标签以及部分内容中提及的关键知识点。 ### Apache Ant简介 Apache Ant是一款开源的Java环境下的自动化构建...

    Ant 学习笔记

    **Ant学习笔记** Apache Ant,一个Java库和命令行工具,其任务是驱动构建过程。它是Java世界中广泛使用的构建工具,类似于Unix世界的Make。Ant以其XML格式的构建文件(通常命名为`build.xml`)而闻名,这个文件包含...

    ant_学习笔记

    ### ant学习笔记:深入了解ant构建工具 #### 引言 `ant`,作为一款源自动网络的学习笔记,主要探讨了Apache Ant这一强大的构建工具。Apache Ant是一款开源的、跨平台的构建工具,专为Java应用程序设计,旨在简化并...

    ant 学习笔记

    NULL 博文链接:https://worktianqi.iteye.com/blog/2162932

    Ant 1.9.1 学习笔记

    Ant 1.9.1是Ant的一个版本,学习笔记通常记录了使用该工具的基本操作和配置方法。 ### Ant的下载和安装 要使用Ant,首先需要下载并安装。在Windows系统中,通常需要配置环境变量以便于命令行中使用Ant命令。ANT_...

    ant个人学习笔记和简单示例

    总的来说,这个“ant个人学习笔记和简单示例”应该能帮助你掌握Ant的基本用法,理解构建过程的自动化,以及如何编写和维护自己的构建文件。通过学习和实践其中的示例,你将能够熟练地运用Ant来构建和管理Java项目,...

    Java/JavaEE 学习笔记

    Java/JavaEE 学习笔记 作者在杰普学习时的学习笔记,是J2ee初学者必备手册,是大家学习J2EE开发的很好的参考笔记。 Java/JavaEE 学习笔记 内容...ant学习笔记...................387 Web Service学习笔记.....388

    Ant构建工具学习笔记

    《Ant构建工具学习指南》 Ant,作为Java领域的一个强大构建工具,它的主要作用在于将复杂的项目构建过程规范化、自动化,使得开发者能够更专注于代码的编写而非构建流程。本文将深入探讨Ant的基本概念、安装配置、...

    J2EE学习笔记(J2ee初学者必备手册)

    内容目录 .......................1 Java/JavaEE.....1 2008年11月1日...............1 Unix 学习笔记7 一、Unix前言............7 ...ant学习笔记...................387 Web Service学习笔记.....388

    ANT學習筆記(一)——ANT 結合JUNIT4學習DEMO

    **ANT学习笔记(一)——ANT结合JUNIT4学习DEMO** ANT,全称为Apache Ant,是一个基于Java的构建工具,用于自动化Java项目的构建、编译、测试和部署过程。它通过XML配置文件来定义任务,使得项目构建过程可配置且可...

    ANT學習筆記(二)—— 應用於WEB的ANT測試DEMO

    在本篇ANT学习笔记中,我们将探讨如何将ANT应用于WEB项目的测试DEMO。ANT是一个流行的Java构建工具,它允许开发者自动化构建、测试和部署软件。本文档将介绍ANT的基本概念,以及如何配置和运行一个针对WEB应用的构建...

    ant的学习笔记.doc

    ### ant的学习笔记知识点详解 #### 一、Ant的作用与特性 Ant是一款强大的自动化构建工具,主要应用于Java项目,能够高效地处理项目的编译、打包、测试等任务。它采用XML格式编写构建脚本,这使得Ant具有良好的跨...

    Ant打包编译部署工具学习笔记2(附件中含有测试项目)

    在"Ant打包编译部署工具学习笔记2"中,我们可以预期博主分享了关于如何利用Ant进行更复杂的构建操作,例如集成测试、优化和打包。这可能包括如何配置build.xml文件,添加自定义任务,以及如何处理依赖关系。由于没有...

    J2EE 资源集合

    3. **Ant学习笔记.doc与Ant权威指南.pdf** Ant是Java世界里常用的构建工具,能够自动化执行编译、打包、测试等任务。文档和PDF提供了Ant的基本使用、任务定义、宏定义等,对于项目构建流程的管理至关重要。 4. **...

Global site tag (gtag.js) - Google Analytics