搜档网
当前位置:搜档网 › jxl使用说明文档

jxl使用说明文档

jxl使用说明文档
jxl使用说明文档

jxl.jar概述

通过java操作excel表格的工具类库

支持Excel 95-2000的所有版本

生成Excel 2000标准格式

支持字体、数字、日期操作

能够修饰单元格属性

支持图像和图表

应该说以上功能已经能够大致满足我们的需要。最关键的是这套API是纯Java的,并不依赖Windows系统,即使运行在Linux下,它同样能够正确的处理Excel文件。另外需要说明的是,这套API对图形和图表的支持很有限,而且仅仅识别PNG格式。

编辑本段搭建环境

将下载后的文件解包,得到JXL.JAR,放入classpath,安装就完成了。如果包不能正常的加载,可以把你下载好的JXL.JAR包放入D:\JAVA\jre\lib\ext 中(我的是JDK1.6)就OK了。我相信在配置TOMCAT时也需要把相关的三个包放到这里面。

编辑本段基本操作

一、创建文件

拟生成一个名为“测试数据.xls”的Excel文件,其中第一个工作表被命名为“第一页”,大致效果如下:

代码(CreateXLS.java):

//生成Excel的类

import java.io.*;

import jxl.*;

import jxl.write.*;

public class CreateXLS

{

public static void main(String args[])

{

try

{

//打开文件

WritableWorkbook book=

Workbook.createWorkbook(new File(“测试.xls”));

//生成名为“第一页”的工作表,参数0表示这是第一页

WritableSheet sheet=book.createSheet(“第一页”,0);

//在Label对象的构造子中指名单元格位置是第一列第一行(0,0)

//以及单元格内容为test

Label label=new Label(0,0,”test”);

//将定义好的单元格添加到工作表中

sheet.addCell(label);

/*生成一个保存数字的单元格

必须使用Number的完整包路径,否则有语法歧义

单元格位置是第二列,第一行,值为789.123*/

jxl.write.Number number = new jxl.write.Number(1,0,789.123);

sheet.addCell(number);

//写入数据并关闭文件

book.write();

book.close();

}catch(Exception e)

{

System.out.println(e);

}

}

}

编译执行后,会在当前位置产生一个Excel文件。

二、读取文件

以刚才我们创建的Excel文件为例,做一个简单的读取操作,程序代码如下://读取Excel的类

import java.io.*;

import jxl.*;

public class ReadXLS

{

public static void main(String args[])

{

try

{

Workbook book=

Workbook.getWorkbook(new File(“测试.xls”));

//获得第一个工作表对象

Sheet sheet=book.getSheet(0);

//得到第一列第一行的单元格

Cell cell1=sheet.getCell(0,0);

String result=cell1.getContents();

System.out.println(result);

book.close();

}catch(Exception e)

{

System.out.println(e);

}

}

}

程序执行结果:test

三、修改文件

利用jExcelAPI可以修改已有的Excel文件,修改Excel文件的时候,除了打开文件的方式不同之外,其他操作和创建Excel是一样的。下面的例子是在我们已经生成的Excel文件中添加一个工作表:

//修改Excel的类,添加一个工作表

import java.io.*;

import jxl.*;

import jxl.write.*;

public class UpdateXLS

{

public static void main(String args[])

{

try

{

//Excel获得文件

Workbook wb=Workbook.getWorkbook(new File(“测试.xls”));

//打开一个文件的副本,并且指定数据写回到原文件

WritableWorkbook book=

Workbook.createWorkbook(new File(“测试.xls”),wb);

//修改文本内容:例修改sheet2中cell B3的label内容

WritableSheet sheet2 = book.getSheet(1);

WritableCell cell = sheet2.getWritableCell(1, 2);

if (cell.getType() == https://www.sodocs.net/doc/0817823028.html,BEL)

{

Label l = (Label) cell;

l.setString("modified cell");

}

//修改文本格式:例修改sheet2中cell C5的Number的格式

WritableSheet sheet2 = book.getSheet(1);

WritableCell cell = sheet2.getWritableCell(2, 4);

NumberFormat fivedps = new NumberFormat("#.#####");

WritableCellFormat cellFormat = new WritableCellFormat(fivedps);

cell.setFormat(cellFormat);

//添加一个工作表

WritableSheet sheet=book.crea teSheet(“第二页”,1);

sheet.addCell(new Label(0,0,”第二页的测试数据”));

book.write();

book.close();

}catch(Exception e)

{

System.out.println(e);

}

}

}

编辑本段高级操作

一、数据格式化

在Excel中不涉及复杂的数据类型,能够比较好的处理字串、数字和日期已经能够满足一般的应用。

1、字串格式化

字符串的格式化涉及到的是字体、粗细、字号等元素,这些功能主要由WritableFont和WritableCellFormat类来负责。假设我们在生成一个含有字串的单元格时,使用如下语句,为方便叙述,我们为每一行命令加了编号:WritableFont font1= new

WritableFont(WritableFont.TIMES,16,WritableFont.BOLD); 或//设置字体格式为excel支持的格式 WritableFont font3=new

WritableFont(WritableFont.createFont("楷体

_GB2312"),12,WritableFont.NO_BOLD );

① WritableCellFormat format1=new WritableCellFormat(font1);

② Label label=new Label(0,0,”data 4 test”,format1);

③ 其中①指定了字串格式:字体为TIMES,字号16,加粗显示。

WritableFont有非常丰富的构造子,供不同情况下使用,jExcelAPI的java-doc中有详细列表,这里不再列出。

②处代码使用了WritableCellFormat类,这个类非常重要,通过它可以指定单元格的各种属性,后面的单元格格式化中会有更多描述。③处使用了Label类的构造子,指定了字串被赋予那种格式。在WritableCellFormat类中,还有一个很重要的方法是指定数据的对齐方式,比如针对我们上面的实例,可以指定:

//把水平对齐方式指定为居中

format1.setAlignment(jxl.format.Alignment.CENTRE);

//把垂直对齐方式指定为居中

format1.setVerticalAlignment(jxl.format.VerticalAlignment.CENTRE);

//设置自动换行

format1.setWrap(true);

二、单元格操作

Excel中很重要的一部分是对单元格的操作,比如行高、列宽、单元格合并等,所幸jExcelAPI提供了这些支持。这些操作相对比较简单,下面只介绍一下相关的API。

1、合并单元格

WritableSheet.mergeCells(int m,int n,int p,int q);

作用是从(m,n)到(p,q)的单元格全部合并,比如:

WritableSheet sheet=book.createSheet(“第一页”,0);

//合并第一列第一行到第六列第一行的所有单元格

sheet.mergeCells(0,0,5,0);

合并既可以是横向的,也可以是纵向的。合并后的单元格不能再次进行合并,否则会触发异常。

2、行高和列宽

WritableSheet.setRowView(int i,int height);

作用是指定第i+1行的高度,比如:

//将第一行的高度设为200

sheet.setRowView(0,200);

WritableSheet.setColumnView(int i,int width);

作用是指定第i+1列的宽度,比如:

//将第一列的宽度设为30

sheet.setColumnView(0,30);

三、操作图片

public static void write()throws Exception{

WritableWorkbook wwb=Workbook.createWorkbook(new

File("c:/1.xls"));

WritableSheet ws=wwb.createSheet("Test Sheet 1",0);

File file=new

File("C:\\jbproject\\PVS\\WebRoot\\weekhit\\1109496996281.png");

WritableImage image=new WritableImage(1, 4, 6, 18,file);////前两位是起始格,后两位是图片占多少个

//格,并非是位置

ws.addImage(image);

wwb.write();

wwb.close();

}

很简单和插入单元格的方式一样,不过就是参数多了些,WritableImage这个类继承了 Draw,上面只是他构造方法的一种,最后一个参数不用说了,前面四个参数的类型都是double,依次是 x, y, width, height,注意,这里的宽和高可不是图片的宽和高,而是图片所要占的单位格的个数,因为继承的Draw所以他的类型必须是double,具体里面怎么实现的我还没细看:)因为着急赶活,

先完成功能,其他的以后有时间慢慢研究。以后会继续写出在使用中的心得给大家。

读:

读的时候是这样的一个思路,先用一个输入流(InputStream)得到Excel文件,然后用jxl中的Workbook得到工作薄,用Sheet从工作薄中得到工作表,用Cell得到工作表中得某个单元格。

InputStream->Workbook->Sheet->Cell,就得到了excel文件中的单元格

代码:

String path="c:\\excel.xls";//Excel文件URL

InputStream is = new FileInputStream(path);//写入到FileInputStream jxl.Workbook wb = Workbook.getWorkbook(is); //得到工作薄

jxl.Sheet st = wb.getSheet(0);//得到工作薄中的第一个工作表

Cell cell=st.getCell(0,0);//得到工作表的第一个单元格,即A1

String content=cell.getContents();//getContents()将Cell中的字符转为字符串

wb.close();//关闭工作薄

is.close();//关闭输入流

我们可以通过Sheet的getCell(x,y)方法得到任意一个单元格,x,y和

excel中的坐标对应.

例如A1对应(0,0),A2对应(0,1),D3对应(3,2).Excel中坐标从A,1开

始,jxl中全部是从0开始.

还可以通过Sheet的getRows(),getColumns()方法得到行数列数,并用于循环控制,输出一个sheet中的所有内容.

写:

往Excel中写入内容主要是用jxl.write包中的类。

思路是这样的:

OutputStream<-WritableWorkbook<-WritableSheet<-Label

这里面Label代表的是写入Sheet的Cell位置及内容。

代码:

OutputStream os=new FileOutputStream("c:\\test.xls");//输出的

Excel文件URL

WritableWorkbook wwb = Workbook.createWorkbook(os);//创建可写工作薄

WritableSheet ws = wwb.createSheet("sheet1", 0);//创建可写工作表

Label labelCF=new Label(0, 0, "hello");//创建写入位置和内容

ws.addCell(labelCF);//将Label写入sheet中

Label的构造函数Label(int x, int y,String aString)xy意同读的时候

的xy,aString是写入的内容.

WritableFont wf = new WritableFont(WritableFont.TIMES, 12, WritableFont.BOLD, false);//设置写入字体

WritableCellFormat wcfF = new WritableCellFormat(wf);//设置CellFormat

Label labelCF=new Label(0, 0, "hello");//创建写入位置,内容和格式

Label的另一构造函数Label(int c, int r, String cont, CellFormat st)可以对写入内容进行格式化,设置字体及其它的属性.

现在可以写了

wwb.write();

写完后关闭

wwb.close();

输出流也关闭吧

os.close;

OK,只要把读和写结合起来,就可以在N个Excel中读取数据写入你希望的Excel新表中,还是比较方便的。

程序一例

程序代码:sql = "select * from tablename";

rs = stmt.executeQuery(sql);

//新建Excel文件

String filePath=request.getRealPath("aaa.xls");

File myFilePath=new File(filePath);

if(!myFilePath.exists())

myFilePath.createNewFile();

FileWriter resultFile=new FileWriter(myFilePath);

PrintWriter myFile=new PrintWriter(resultFile);

resultFile.close();

//用JXL向新建的文件中添加内容

OutputStream outf = new FileOutputStream(filePath);

jxl.write.WritableWorkbook wwb = Workbook.createWorkbook(outf);

jxl.write.WritableSheet ws = wwb.createSheet("sheettest", 0);

int i=0;

int j=0;

for (int k = 0; k < rs.getMetaData().getColumnCount(); k++) { ws.addCell(new Label(k,0,rs.getMetaData().getColumnName(k+1)));

}

while(rs.next()){

out.println(rs.getMetaData().getColumnCount());

for (int k = 0; k < rs.getMetaData().getColumnCount(); k++) { ws.addCell(new Label(k,j+i+1,rs.getString(k+1)));

}

i++;

}

wwb.write();

wwb.close();

}catch(Exception e){e.printStackTrace();}

finally{

rs.close();

conn.close();

}

response.sendRedirect("aaa.xls");

接口调用说明文档

XXX)科技有限公司 数据接口 2015-5-26

目录 第1章引言. ......................................................... 错误!未定义书签。 背景. ........................................................... 错误!未定义书签。 第2章接口与数据定义. ................................................... 错误!未定义书签。 曝光台查询接口. ..................................................... 错误!未定义书签。 曝光台列表查询.......................... 错误!未定义书签。 曝光台详情查询.......................... 错误!未定义书签。 信用公示查询接口定义.......................... 错误!未定义书签。 守信公示列表查询.......................... 错误! 未定义书签。 守信公示详情查询.......................... 错误!未定义书签。 失信公示列表查询.......................... 错误!未定义书签。 失信公示详情查询.......................... 错误!未定义书签。 企业名称查询接口定义.......................... 错误!未定义书签。 Webservice 方法定义 ........................ 错误! 未定义书签。 请求参数. .................................................... 错误! 未定义书签。 返回数据. .................................................... 错误!未定义书签。 企业信息查询接口定义.......................... 错误!未定义书签。 Webservice 方法定义 ........................ 错误! 未定义书签。 请求参数. .................................................... 错误! 未定义书签。 返回数据. .................................................... 错误!未定义书签。

JXL入门常用格式设置

创建 //输出流 OutputStream os = new FileOutputStream(“D:\\test.xls”); //创建workbook WritableWorkbook workbook= Workbook.createWorkbook(os); //创建一个sheet 参数(sheetName ,sheetNumber)下标0开始代表第一页WritableSheet sheet = workbook.createSheet(“第一个sheet”, 0); 宽度、高度、和并单元格 //设置列的默认列宽(所有单元格) sheet.getSettings().setDefaultColumnWidth(9); //设置列的默认行高(所有单元格) sheet.getSettings().setDefaultRowHeight(500); //宽度设定第一列宽16 下标0开始代表第一列 sheet.setColumnView(0, 16); //高度设定第一行高度700 sheet.setRowView(0, 700); //单元格合并开始列号,开始行号,结束列号,结束行号 sheet.mergeCells(0, 0, 31, 0); 文字格式: 字体、大小、背景色、对齐、边框线、自动换行 想使用自己定义的颜色请关注本人百度空间实现方法。 //生成字体字体MSPゴシック18号非粗体非斜体(字体在Excle中复制) WritableFont font = new WritableFont(WritableFont.createFont("MSPゴシック"), 18, WritableFont.NO_BOLD, false); //生成格式 WritableCellFormat format= new WritableCellFormat(); //向格式中加入字体 format.setFont(font); //背景色 format .setBackground(Colour.BLUE)

帝国CMS版接口说明

帝国CMS接口使用手册 一、简介 1、本接口应用于帝国CMS 版新闻系统模型的栏目文章发布; 2、本接口可以自动生成文章、栏目、首页等静态HTML页面; 3、本接口可以生成随机点击数,详见发布接口参数说明; 4、发布时请使用管理员用户帐号; 5、在帝国CMS utf8版使用本接口时,请在发布规则中选择编码为UTF-8; 6、本接口基于帝国CMS UTF8版制作,适用于帝国CMS GBK/utf-8等版本,应用于其他版本时请自行测试调整;; 7、接口文件无须任何改动即可使用,如果你希望增加校验或其他功能,请仔细修改; 8、2个接口文件请复制在网站 /e/admin目录下使用; 二、安装接口 在接口文件夹中找到接口文件,如图: 请将、等接口文件上传到指定目录,请使用二进制方式上传,如图: 三、配置发布规则 1、将范例发布规则文本导入ET2发布配置,或使用软件内置发布规则范例,如图:

2、将检查网址和发布网址中的“您的网站”改为您要发布的网站网址,如图: 3、在检查网址填上您要发布的栏目ID,如图: 4、在参数取值页,填上您要发布的网站栏目ID,如图: 这里查看栏目ID:

4、填上您的管理账号、密码,注意格式,如图: 四、接口说明 一、检查接口 1、接口文件名,为保密,请自行修改文件名; 2、本接口文件复制在网站/e/admin目录使用,如果目录名有变更,请自行对应; 3、主要参数 keyboard 文章标题 classid 栏目ID,用于指定检查栏目,可在后台网站栏目管理处查看; vercode 校验码,请自行设定,并在检查接口文件开始处修改$vercode 使其一致; 4、发布配置-文章检查网址处,可以如下填写: 注:使用大小写敏感的服务器的用户请注意网址大小写和网站文件一致 5、接口文件无须任何改动即可使用,如果你希望增加校验或其他功能,请仔细修改; 二、发布接口 1、接口文件名,为保密,请自行修改文件名; 2、本接口文件请复制在网站/e/admin目录下使用,为保密,请自行修改文件名;

java导入导出excel操作

java导入导出excel操作(jxl) Java解释Excel数据(包的使用) 关键字: java excel 包 下载地址: 真实下载地址: 网站上对它的特征有如下描述: ● 支持Excel 95-2000的所有版本 ● 生成Excel 2000标准格式 ● 支持字体、数字、日期操作 ● 能够修饰单元格属性 ● 支持图像和图表 应该说以上功能已经能够大致满足我们的需要。最关键的是这套API是纯Java 的,并不依赖Windows系统,即使运行在Linux下,它同样能够正确的处理Excel 文件。另外需要说明的是,这套API对图形和图表的支持很有限,而且仅仅识别PNG格式。 搭建环境 将下载后的文件解包,得到,放入classpath,安装就完成了。 基本操作 一、创建文件 拟生成一个名为“测试数据.xls”的Excel文件,其中第一个工作表被命名为“第一页”,大致效果如下: Java代码 /* * Created on Dec 30, 2007 * * To change the template for this generated file go to * Window>Preferences>Java>Code Generation>Code and Comments */ package ; import .*; import jxl.*; import .*;

/** * @author Ken * * To change the template for this generated type comment go to * Window>Preferences>Java>Code Generation>Code and Comments */ public class CreateXLS { public static void main(String[] args) { try { WritableWorkbook book = (new File("d:/")); 0 means this is 1st page. WritableSheet sheet = ("Sheet_1", 0); value is "test". Label label = new Label(0, 0, "test"); (label); WARN:necessarily use integrated package-path, otherwise will be throws path -error. value is . number = new0, ; (number); (); (); } catch (Exception e) { (); } } } 编译执行后,会在当前位置产生一个Excel文件。 二、读取文件 以刚才我们创建的Excel文件为例,做一个简单的读取操作,程序代码如下:

Redmine安装手册

RedMine 操作手册

目录 第 1 章概 述 (1) 第 2 章安装前的准备 (2) 2.1 下载相应文件 (2) 第 3 章安装与配置 (2) 第 4 章让RedMine自动运行 (4) 第 5 章 RedMine和Apache集成 (4) 第 6 章 RedMine和 Hudson的集成 (5) 第 7 章 RedMine和SVN的集成 (6)

第 1 章概 述 Redmine是基于ROR框架开发的一套跨平台项目管理系统,是项目管理系统的后起之秀,据说是源于Basecamp的ror版而来,支持多种数据库,除了和DotProject的功能大致相当外,还有不少自己独特的功能, 例如提供wiki、新闻台、时间跟踪、feed聚合、导出pdf等待,还可以集成其他版本管理系统和BUG跟踪系统,例如SVN、CVS、TD等等。配置 功能强大而且方便,自定义属性和更新通知也很实用。

第 2 章安装前的准备 2.1下载相应文件 安装需要用到如下的软件,请进行准备 1. Ruby ,现在最新稳定的Ruby 版本,建议下载 1.8.7 或更高的版本,地址 为:https://www.sodocs.net/doc/0817823028.html,/frs/download.php/72085/rubyinstaller ‐1.8.7‐p302.exe ; 2. RubyGems 1. 3.1 : https://www.sodocs.net/doc/0817823028.html,/frs/download.php/45906/rubygems ‐1.3.1.zip ,备注:RubyGems 是 一个方便而强大的Ruby 程序包管理器; 3. Rake 0.8.3,可以在线下载,是一门构建语言,它支持它自己的DSL 用来处理和维护 Ruby 应用程序; 4. Rails 2.2.2,https://www.sodocs.net/doc/0817823028.html,/frs/download.php/47183/rails ‐2.2.2.zip ; 5. MySQL 5,下载最新版本5.2,https://www.sodocs.net/doc/0817823028.html,/downloads/mysql ; 6. Redmine 1.0.4,https://www.sodocs.net/doc/0817823028.html,/frs/?group_id=1850,下载redmine ‐1.0.4.zip ; 7. Win32 OpenSSL v0.9.8j Light ,https://www.sodocs.net/doc/0817823028.html,/?yknwgltgzkj ,运行 rake 时要用到; 8. Visual C++ 2008 Redistributables , https://www.sodocs.net/doc/0817823028.html,/downloads/details.aspx?familyid=9B2DA534‐3E03‐4391‐8A 4D ‐074B9F2BC1BF&displaylang=en 。如果不安装这个,调用 OpenSSL 时可能会报“应用程序配置不正确,程序无法启动,重新安装应用程序可能解决问题。”错误; 9. ZLib 1.2.3 : https://www.sodocs.net/doc/0817823028.html,/zlib123‐dll.zip 。运行 rake 时要用到; 10. libiconv 1.9.1 : ftp://https://www.sodocs.net/doc/0817823028.html,/gnu/libiconv/libiconv ‐1.9.1.bin.woe32.zip 。运行 rake 时要用到; Apache ,需要OpenSSL 包, 2.2https://www.sodocs.net/doc/0817823028.html,/apache//httpd/binaries/win32/httpd-2.2.17-win32-x86-openssl-0.9.8o.msi ; 第 3 章安装与配置 1. 将 Ruby 1.8.7 的安装包解压到某个目录下(例如: D:\ruby ‐1.8.7 ),并将子目录 bin 的路径加入到 Windows 的 PATH 环境变量中(例如:在 PATH 环境变量中加入 D:\ruby ‐1.8.7\bin ); 2. 将 RubyGems 1. 3.1 安装包解压到某个临时目录下(例如: D:\rubygems-1.3.1 ),在 Windows 的命令行模式下切换当前目录为该临时目录,运行如下命令: ruby setup.rb 该命令将离线安装 RubyGems 。安装完毕后可删除该临时目录 3. 在命令行模式下运行如下命令:

软件工程·需求规格说明书模版

文档编号:_________ 版本号:_________ 文档名称:需求规格说明书项目名称:__________ 项目负责人:________ 编写:________ ____年__月__日 校对:____________年__月__日 审核:________ ____年__月__日 批准:________ ____年__月__日 开发单位:____________________

1.引言 1.1 编写目的 阐明编写需求规格说明书的目的,指明读者对象。 1.2 项目背景 应包括:项目的委托单位、开发单位和主管部门;该软件系统与其它系统的关系。 1.3 定义 列出文档中所用到的专门术语的定义和缩写词的原文。 1.4 参考资料 可包括:项目经核准的计划任务书、合同或上级机关的批文;项目开发计划;文档所引用的资料、标准和规范。列出这些资料的作者、标题、编号、发表日期、出版单位或资料来源。 2.任务概述 2.1 目标 2.2 运行环境 2.3 条件与限制 3.数据描述 3.1 静态数据 3.2 动态数据 包括输入数据和输出数据。 3.3 数据库描述 给出使用数据库的名称和类型。

3.4 数据词典 3.5 数据采集 4.功能需求 4.1 功能划分 4.2 功能描述 5.性能需求 5.1 数据精确度 5.2 时间特性 如响应时间、更新处理时间、数据转换与传输时间、运行时间等。 5.3 适应性 在操作方式、运行环境、与其他软件的接口以及开发计划等发生变化时,应具有适应能力。 6.运行需求 6.1 用户界面 如屏幕格式、报表格式、菜单格式、输入输出时间等。 6.2 硬件接口 6.3 软件接口 6.4 故障处理 7.其他需求 如可使用性、安全保密、可维护性、可移植性等。

jxl.jar使用方法

jxl.jar 通过java操作excel表格的工具类库 支持Excel 95-2000的所有版本 生成Excel 2000标准格式 支持字体、数字、日期操作 能够修饰单元格属性 支持图像和图表 应该说以上功能已经能够大致满足我们的需要。最关键的是这套API是纯Java的,并不依赖Windows系统,即使运行在Linux下,它同样能够正确的处理Excel文件。另外需要说明的是,这套API对图形和图表的支持很有限,而且仅仅识别PNG格式。 搭建环境 将下载后的文件解包,得到jxl.jar,放入classpath,安装就完成了。 基本操作 一、创建文件 拟生成一个名为“测试数据.xls”的Excel文件,其中第一个工作表被命名为“第一页”,大致效果如下: 代码(CreateXLS.java): //生成Excel的类 import java.io.*; import jxl.*; import https://www.sodocs.net/doc/0817823028.html,bel; import jxl.write.Number; import jxl.write.WritableSheet; import jxl.write.WritableWorkbook; public class CreateXLS { public static void main(String args[]) { try {

// 打开文件 WritableWorkbook book = Workbook.createWorkbook(new File("测试.xls")); // 生成名为“第一页”的工作表,参数0表示这是第一页 WritableSheet sheet = book.createSheet("第一页", 0); // 在Label对象的构造子中指名单元格位置是第一列第一行(0,0) // 以及单元格内容为test Label label = new Label(0, 0, "test"); // 将定义好的单元格添加到工作表中 sheet.addCell(label); /* * 生成一个保存数字的单元格必须使用Number的完整包路径,否则有语法歧义单元格位置是第二列,第一行,值为789.123 */ Number number = new Number(1, 0, 789.123); sheet.addCell(number); // 写入数据并关闭文件 book.write(); book.close(); } catch (Exception e) { System.out.println(e); } } } 编译执行后,会在当前位置产生一个Excel文件。 二、读取文件 以刚才我们创建的Excel文件为例,做一个简单的读取操作,程序代码如下:import java.io.*; import jxl.*; public class ReadXLS { public static void main(String args[]) { try { Workbook book = Workbook.getWorkbook(new File("测试.xls")); // 获得第一个工作表对象

Redmine项目管理实践操作指引.doc

精品资料 Redmine项目管理实践操作指引

目录 1. 目的 (3) 2. 角色 (3) 3. 各属性定义说明 (4) 3.1 问题类型定义 (4) 3.2 任务状态定义 (4) 3.3 问题优先级定义 (5) 3.4 错误报告严重程度定义 (5) 3.5 文档存放定义 (5) 3.6 “任务”处理流程 (5) 3.7 “ BUG”处理流程 (7) 4. 项目管理流程 (8) 4.1 项目准备阶段 (8) 4.2 项目需求 / 设计 / 编码阶段 . (8) 4.3 项目测试阶段 (8) 5. 统计功能 (8) 6. 操作要求 (8)

1.目的 为了提高沟通效率与执行力,养成快速反馈的习惯。增强责任感与主动性,建立问题及任务知识库。记录每个工作、每个动作。统计项目执行的资源耗费情况、考核工作量及执行 力 2.角色 角色职责 redmine创建新项目,配置项目信息 规划项目周期、分配任务与执行人员 新建问题并指派给相应的人员及负责人:事务分割细致、任务内容及 项目经理 要求描述明确、明确任务的完成时间及质量要求 协调资源分配、把握项目进度及质量 及时审核所派发任务的完成情况 任务不明确、需要及时反馈给上一级指派人 解决问题、更新问题记录、登记工时及进度达到项目的最终目标 每天及时更新任务进展,填报工时 开发人员 可建立子任务、自建任务、或将问题分割指派给其他执行人及报告人 如任务无法在承诺时间内处理好,需要反馈 测试阶段及时处理所负责的BUG 修改 规划测试的工作计划 测试负责人分配测试任务及执行人员 及时审核所派发任务的完成情况 完成测试任务,近视更新任务进度,填报工时 测试发现的BUG ,及时登记。新建“错误报告”,内容描述准确, 测试人员 明确 BUG 的严重程度。 及时验证已修正的BUG 跟踪各任务的进展 审核 Redmine操作的规范度 项目助理 统计各任务的进展产出项目周报 统计工时 部门助理 /QA查看项目进展

(完整word)软件项目文档全套模板-需求说明,推荐文档

<项目名称> 软件需求说明书 作者: 完成日期: 签收人: 签收日期: 修改情况记录:

目录 1 引言 (1) 1.1 编写目的 (1) 1.2 范围 (1) 1.3 定义 (1) 1.4 参考资料 (1) 2 项目概述 (2) 2.1 产品描述 (2) 2.2 产品功能 (2) 2.3 用户特点 (2) 2.4 一般约束 (2) 2.5 假设和依据 (3) 3 具体需求 (3) 3.1 功能需求 (3) 3.1.1 功能需求1 (3) 3.1.2 功能需求2 (4) 3.1.n 功能需求n (5) 3.2 外部接口需求 (5) 3.2.1 用户接口 (5) 3.2.2 硬件接口 (5) 3.2.3 软件接口 (5) 3.2.4 通信接口 (6) 3.3 性能需求 (6) 3.4 设计约束 (6) 3.4.1 其他标准的约束 (6) 3.4.2 硬件的限制 (7) 3.5 属性 (7) 3.5.1 可用性 (7) 3.5.2 安全性 (7) 3.5.3 可维护性 (7) 3.5.4 可转移\转换性 (8) 3.5.5 警告 (8) 3.6 其他需求 (8) 3.6.1 数据库 (8) 3.6.2 操作 (8) 3.6.3 场合适应性需求 (9) 4 附录 (9)

1 引言 1.1 编写目的 说明编写这份软件需求说明书的目的,指出预期的读者范围。 1.2 范围 说明: a.待开发的软件系统的名称; b.说明软件将干什么,如果需要的话,还要说明软件产品不干什么; c.描述所说明的软件的应用。应当: 1)尽可能精确地描述所有相关的利益、目的、以及最终目标。 2)如果有一个较高层次的说明存在,则应该使其和高层次说明中的类似的陈述相一致(例如,系统的需求规格说明)。 1.3 定义 列出本文件中用到的专门术语的定义和缩写词的原词组。 1.4 参考资料 列出要用到的参考资料,如: a.本项目的经核准的计划任务书或合同、上级机关的批文; b.属于本项目的其他已发表的文件; c.本文件中各处引用的文件、资料,包括所要用到的软件开发标准。 列出这些文件的标题、文件编号、发表日期和出版单位,说明能够得到这些文件资料的来源。

redmine说明

简介 Redmine是一个灵活的项目管理系统,使用Ruby on Rails 框架开发, 跨平台且可以使用多种数据库。 Redmine是开源软件,遵循GNU General Public License (GPL)协议 发布。 功能特性1 多项目支持 在一个Redmine平台上管理您的所有项目 用户在不同项目中可属于不同角色 项目可设定为公开的(所有人都可见)或者内部的(只有项目成员可见)可在项目中激活或隐藏模块(即:wiki、版本库、问题跟踪……) 基于角色的灵活访问控制 定义您自己的角色并快速设定他们的权限 灵活的问题跟踪系统 定义您自己的问题状态和问题类型 可以通过web管理界面为每种问题类型和角色设置工作流程(系统安装时可选择导入默认的工作流设置) 多语言支持 可以使用多种数据库 功能特性2 甘特图和日历 根据为问题设定的开始日期和完成日期自动生成甘特图和日历 功能特性3 时间跟踪功能 在项目级别或者问题级别设定时间 根据用户、问题类型、类别或者活动生成工作量报表 自定义属性 您可以为问题、项目和用户添加自定义属性

可以使用多种格式:文本、日期、证书、下拉列表、复选框 自定义属性可以像常规属性那样显示在问题列表中,并可以作为过滤器使用新闻、文档和文件管理 您可以方便的发布消息和共享文件 为每个项目设置独立的wiki和讨论区 Wiki使用textile语法,可以通过方括号标记设置指向在wiki内部的任意页面提供历史记录的对比和注释功能 功能特性4 版本库浏览器和对比查看器 可以为每个项目绑定已有的版本库 Redmine使您可以浏览版本库的内容,查阅和搜索变动 对比和注释(即追溯)查看器 支持的版本管理系统:Subversion, CVS, Mercurial, Darcs and Bazaar 订阅(Feeds)和邮件通知 项目活动、变更、新闻、问题、问题变更都可通过Atom feeds获取通知 支持多种LDAP认证方式 Redmine使您可以通过多种LDAP方式认证用户 用户账户可在从目录服务中发现用户后被自动创建(可选的) 支持用户自注册 您可以配置系统允许用户在线注册 提供3种用户激活方式:自动激活(不需要确认)、手动激活(由管理员激活)、通过邮件自动发送的邮件激活 登陆系统

项目需求规格说明书模板

精品文档 软件项目名称 错误!未指定书签。 拟制:日期: 审核:日期: 批准:日期:

文件修改记录

目录 1范围 (4) 2 总体概述 (4) 2.1 产品描述 (4) 2.2 软件功能 (4) 2.3 一般约束 (5) 2.4 假设和依赖 (5) 3 具体需求 (5) 3.1 功能需求 (5) 3.1.1 功能需求1 (5) 3.1.2 功能需求2 (6) 3.1.n 功能需求n (7) 3.2 外部接口需求 (7) 3.2.1 用户接口 (7) 3.2.2 硬件接口 (7) 3.2.3 软件接口 (7) 3.2.4 通讯接口 (7) 3.3 性能需求 (7) 4 设计约束 (8) 4.1 标准的约束 (8) 4.2 硬件的限制 (8) 4.3 技术的限制 (8) 5 软件质量属性 (8) 5.1 安全性 (9) 5.2 可维护性 (9) 5.3 可移植性 (9) 6 其他需求 (9) 6.1 数据库 (9) 6.2 本地化 (10) 7待确定问题 (10)

模板使用说明: [1]注明可选的部分,可以根据实际情况选择是否填写;如果不必说明,请保留相关的章节标题,同时在该可选章节的内容中填入“无”;未注名可选的,则必须描述;如果有些设计此模版中没有合适的地方填写,则补充在最后的其他栏目中 [2]模版中斜体字相当于撰写指南,最后文稿请将本模板中所有的斜体字部分全部删除。 [3]模板里并不说明设计技术和方法,而只是说明应包含哪些内容,以及如何描述、组织这些内容。

1范围 说明文档所包括和不包括的内容,具体是: a.待开发的软件系统的名称; b.说明软件将干什么,如果需要的话,还要说明软件产品不干什么; c.描述所说明的软件的应用。如果有一个较高层次的说明存在,则应该使其和高层次说明中的类似的陈述相一致(例如,系统的需求规格说明)。 2 总体概述 2.1 产品描述 叙述该项软件开发的意图、应用目标、作用范围以及其他应向读者说明的有关该软件开发的背景材料。解释被开发软件与其他有关软件之间的关系。如果本软件产品是一项独立的软件,而且全部内容自含,则说明这一点。如果所定义的产品是一个更大的系统的一个组成部分,则应说明本产品与该系统中其他各组成部分之间的关系,为此可使用一张方框图来说明该系统的组成和本产品同其他各部分的联系和接口。 2.2 软件功能 概述软件必须实现的和通过用户操作实现的主要功能。这里只需要进行简要描述(例如目录列表),详细描述在详细需求部分描述。 有时,如果存在较高层次的规格说明时,则功能摘要可从中取得,这个较高层次的规格说明为软件产品分配了特殊的功能,为了清晰起见,请注意: a.编制功能的一种方法是制作功能表,以便客户或者第一次读这个文件的人都可以理解; b.用方框图来表达不同的功能和它们的关系也是有帮助的。但应牢记,这样的图不是产品设计时所需求的,而只是一种有效的解释性的工具。 例如:高层的数据流图,面向对象的分析等。

接口使用说明文档

中国移动短信网关 SP端接口使用手册 China Mobile Shot Message Gateway Interface for SP Manual 作者:沈岗 日期:2004年1月 版本:V1.2

一、CMSMIF.CMPPApp 简要说明: 该类采用CMPP协议(V2.0)实现了SP端与移动短信网关的连接处理。 本类中,采用长连接方式与ISMG通讯。通信双方以客户-服务器方式建立TCP连接,用于双方信息的相互提交。当信道上没有数据传输时,通信双方应每隔时间C发送链路检测包以维持此连接,当链路检测包发出超过时间T后未收到响应,立即再发送链路检测包,再连续发送N-1次后仍未得到响应则断开此连接。参数C、T、N可通过属性配置。 消息发送时采用并发方式,即发送一条消息不等待网关回复确认,继续向网关发送短信,这样发送消息速度非常快,完全取决于网关的处理速度及网络速度。为避免消息丢失,同时采用了滑动窗口流量控制,窗口大小可通过属性设置。 消息接收、网络断开等采用事件触发方式,不需应用程序轮询,在此接口基础之上编程方便。 类中运用了多线程技术,如一条线程处理发送网络包,而另一条线程处理从网关上接收网络包,其他还有一些线程处理检测包、网络连接情况监测等,使程序思路明确、执行效率很高、运行非常稳定。 (一)属性 1.ActiveInterval 说明:检测包发送时间间隔,单位:毫秒。默认值为120000,即120秒。为上 述类说明中的C参数。 2.MaxNetworkPackSize 说明:与ISMG通讯时最大网络包大小,单位:字节。默认值为512Byte。 3.MaxRetryTimes 说明:网络超时最大重发次数,单位:次。默认值为3次。为类说明中的N。 4.OverTime 说明:网络包发送超时时间,单位:毫秒,超过此值还未收到回复则重发。默认值 为60000,即60秒。为类说明中的T。 5.QueueLength 说明:网络队列大小,单位:个,默认值为20。为类说明中的滑动窗口大小, 以控制发送流量。 (二)方法 1.ConnectToIsmg 方法说明: 连接到远程短信网关ISMG上,只有连接到远程短信网关上,才可进行短信收发操作。 在本操作中,自动初始化本地Socket,以连接到指定IP服务器的指定端口上。 声明原型:int ConnectToIsmg(string ServerIP,int Port,string SP_ID,string Secret,string SN) 参数说明: ServerIP:远程短信网关服务器的IP地址,如211.138.200.51 Port:远程短信网关服务器的端口号,如7890 SP_ID:企业服务代码

Redmine使用手册

Redmine使用手册 一、 Redmine简介 Redmine是基于ROR框架开发的一套跨平台项目管理系统,是项目管理系统的后起之秀,据说是源于Basecamp的ror版而来,支持多种数据库,除了和DotProject的功能大致相当外,还有不少自己独特的功能,例如提供wiki、新闻台、时间跟踪、feed聚合、导出pdf等,还可以集成其他版本管理系统和BUG跟踪系统,例如SVN、CVS、TD 等等。 它具有以下功能: ● 多项目和子项目支持 ● 可配置的用户角色控制 ● 可配置的问题追踪系统 ● 自动日历和甘特图绘制 ● 支持 Blog 形式的新闻发布、Wiki 形式的文档撰写和文件管理 ● RSS 输出和邮件通知 ● 每个项目可以配置独立的 Wiki 和论坛模块 ● 简单的任务时间跟踪机制 ● 用户、项目、问题支持自定义属性 ● 支持多种版本控制系统绑定(SVN、CVS、Git、Mercurial、Darcs) ● 支持多 LDAP 用户认证 ● 支持用户自注册和用户激活 ● 多语言支持(已经内置了简体中文) ● 多数据库支持(MySQL、SQLite、PostgreSQL) ● 外观模版化定制(可以使用 Basecamp 、Ruby安装) 接下来详细介绍redmine的使用。 二、 Redmine操作详解 2.1、登录系统 使用Internet连接到redmine页面,会看到下面的界面

图 2-1 点击新闻标题或者项目标题都可以看到具体的内容。但是未登录只能查看,不能进行实质性操作。 点击右上角的“登录”按钮。(前提是已经注册成功,这里的注册根据管理员设置的不同方法也不相同。一般情况下是管理员添加用户后用邮件通知,用户激活。(还有的直接注册就可以登录了。)会看到下面的界面 未登录状态仅显示公开的项目 页面左面是“最近的新闻”,右面是“最近更新的项目” 左上角是快键菜单,点击“项目”可以看到所有公开的项目 右上角有登陆和注册按钮 图 2-2

软件开发文档说明(又全又详细)

在软件行业有一句话:一个软件能否顺利的完成并且功能是否完善,重要是看这个软件有多少文档,软件开发文档是一个软件的支柱,如果你的开发文档漏洞百出,那么你所开发出来的软件也不可能会好;开发文档的好坏可以直接影响到所开发出来软件的成功与否。 一、软件开发设计文档:软件开发文档包括软件需求说明书、数据要求说有书、概要设计说明书、详细设计说明书。 1.软件需求说明书:也称为软件规格说明。该说明书对所开发软件的功能、性能、用户界面及运行环境等做出详细的说明。它是用户与开发人员双方对软件需求取得共同理解基础上达成的协议,也是实施开发工作的基础。软件需求说明书的编制目的的就是为了使用户和软件开发者双方对该软件的初始规定有一个共同的理解、并使之面成为整个开发工作的基础。 其格式要求如下: 1 引言1.1 编写目的。1. 2 背景1. 3 定义 2 任务概述2.1 目标2.2 用户的特点2. 3 假定和约束 3 需求规定3.1 对功能的规定3.2 对性能的规定3.2.1 精度3.2.2 时间特性的需求3.2.3 灵活性3.3 输入输出要求3. 4 数据管理能力要求3. 5 故障处理要求3. 6 其他专门要求 4 运行环境规定4.1 设备4.2 支持软件4.3 接口4.4 控制 2.概要设计说明书:又称系统设计说明书,这里所说的系统是指程序系统。编制的目的是说明对程序系统的设计考虑,包括程序系统的基本处理。流程、程序系统的组织结构、模块划分、功能分配、接口设计。运河行设计、数据结构设计和出错处理设计等,为程序的详细设计提供基础。 其格式要求如下: 1 引言1.1 编写目的1. 2 背景1. 3 定义1. 4 参考资料 2 总体设计2.1 需求规定2.2 运行环境2. 3 基本设计概念和处理流程2. 4 结构2. 5 功能需求与程序的关系2. 6 人工处理过程2. 7 尚未解决的问题 3 接口设计3.1 用户接口3.2 外部接口3.。3 内部接口 4 运行设计4.1 运行模块的组合4.2 运行控制4.3 运行时间 5 系统数据结构设计5.1 逻辑结构设计要点5.2 物理结构设计要求5.3 数据结构与程序的关系 6 系统出错处理设计6.1 出错信息6.2 补救措施6.3 系统维护设计。 3.详细设计文档:主要是把我们每个小模块,小功能的业务逻辑处理用文字的方式表达出来,让程序员在编码的时

jxl使用说明文档

jxl.jar概述 通过java操作excel表格的工具类库 支持Excel 95-2000的所有版本 生成Excel 2000标准格式 支持字体、数字、日期操作 能够修饰单元格属性 支持图像和图表 应该说以上功能已经能够大致满足我们的需要。最关键的是这套API是纯Java的,并不依赖Windows系统,即使运行在Linux下,它同样能够正确的处理Excel文件。另外需要说明的是,这套API对图形和图表的支持很有限,而且仅仅识别PNG格式。 编辑本段搭建环境 将下载后的文件解包,得到JXL.JAR,放入classpath,安装就完成了。如果包不能正常的加载,可以把你下载好的JXL.JAR包放入D:\JAVA\jre\lib\ext 中(我的是JDK1.6)就OK了。我相信在配置TOMCAT时也需要把相关的三个包放到这里面。 编辑本段基本操作 一、创建文件 拟生成一个名为“测试数据.xls”的Excel文件,其中第一个工作表被命名为“第一页”,大致效果如下: 代码(CreateXLS.java): //生成Excel的类 import java.io.*; import jxl.*; import jxl.write.*; public class CreateXLS { public static void main(String args[]) { try { //打开文件 WritableWorkbook book= Workbook.createWorkbook(new File(“测试.xls”)); //生成名为“第一页”的工作表,参数0表示这是第一页

WritableSheet sheet=book.createSheet(“第一页”,0); //在Label对象的构造子中指名单元格位置是第一列第一行(0,0) //以及单元格内容为test Label label=new Label(0,0,”test”); //将定义好的单元格添加到工作表中 sheet.addCell(label); /*生成一个保存数字的单元格 必须使用Number的完整包路径,否则有语法歧义 单元格位置是第二列,第一行,值为789.123*/ jxl.write.Number number = new jxl.write.Number(1,0,789.123); sheet.addCell(number); //写入数据并关闭文件 book.write(); book.close(); }catch(Exception e) { System.out.println(e); } } } 编译执行后,会在当前位置产生一个Excel文件。 二、读取文件 以刚才我们创建的Excel文件为例,做一个简单的读取操作,程序代码如下://读取Excel的类 import java.io.*; import jxl.*; public class ReadXLS { public static void main(String args[]) { try { Workbook book= Workbook.getWorkbook(new File(“测试.xls”)); //获得第一个工作表对象 Sheet sheet=book.getSheet(0); //得到第一列第一行的单元格 Cell cell1=sheet.getCell(0,0); String result=cell1.getContents(); System.out.println(result); book.close();

readmine的用户手册

Redmine 用户手册 作者:北京群英汇信息技术有限公司网址: 版本: 日期:2010-08-13 11:18:52 版权信息: 目录 1???说明 2???用户账号 o???我的账号 o???忘记密码 o???注册 o???我的工作台 3???登录 4???注册 5???项目概述 6???项目活动 7???问题跟踪 o???问题列表 o???路线图 ???版本概述 o???日历 o???甘特图 8???实时跟踪 9???新闻 10???文档 11???文件 12???讨论区 13???Wikis 14???Redmine wiki的文本格式 o???链接 ???Redmine链接 ???wiki链接 ???链接到其他资源 ???转意字符 ???外部链接 o???文本格式 ???字体样式 ???内嵌图片 ???标题

???段落 ???块引用 ???无序列表 ???有序列表 ???表格 ???内容列表 ???宏(Macros) 15???版本库 o???版本库统计 16???项目配置 17???Redmine与其他工具整合 o???Redmine与TestLink的整合 o???Redmine与TortoiseSVN的整合 o???Redmine与Mylyn的整合 ???通用的Web仓库链接器(Web Repository connector) ???配置步骤 ???创建一个任务仓库(Task Repository) ???创建一个查询 ???Redmine专用的 Redmine-Mylyn Connector ???插件的依赖关系: ???客户端安装 ???服务器端安装 ???配置步骤 ???在Eclipse中添加任务仓库 ???为刚创建的任务仓库添加查询 1???说明 关于手册中方框标记部分的说明 Note?是需要注意的部分。 Hint?是群英汇为Redmine扩展的部分。 2???用户账号 ???我的账号 我的账号截图 信息 该区域用于修改用户的姓名、邮件地址和语言设置。 邮件通知 邮件通知的下拉框选项有: o只收取我跟踪或参与的项目的通知 o收取我的项目的所有通知 你可以根据自己的需要选择不同的邮件通知策略 同时,你也可以选种下拉框下面的那个复选框(不要发送对我自己提交的修改的通知),这样就可以避免接收到你自己活动的邮件通知。 首选项 o隐藏我的邮件地址

使用JAVA存储过程导入EXCEL文件操作指南

利用JAV A存储过程进行EXCEL导入 导入思路 顾问提供的PO导入FORM已经给了我们一个导入数据到系统的一个模板,基本能够满足我们的要求,该FORM主要完成以下动作: 1.显示文件上传页面给用户选择文件 2.将文本文件以字符流的形式存入到fnd_lobs表的BLOB字段 3.从BLOB字段读取数据,通过逗号分割(,)的方式从BLOB字段获取每个字段的值 4.存入系统临时表进行后续的导入处理 该方法的主要缺点在于需要用户手工将EXCEL文件存为.csv文件(即普通.txt文件),以及通过逗号分割进行解析字符流的方式进行文本文件的处理,如果用户提供的EXCEL单元格的数据中有逗号(,),则解析会出错。 该方法可以利用JAV A存储过程进行改进为: 1.在上传页面用户直接上传EXCEL文件 2.将文本文件以字符流的形式存入到fnd_lobs表的BLOB字段 3.以BLOB字段作为文件输入流,调用JAV A存储过程获取EXCEL文件内容 4.存入系统临时表进行后续的导入处理 在新方法的第3步中,调用JAV A类型的存储过程,引用处理EXCEL的JAV A API进行文件内容的读取。由于是直接解析EXCEL文件,可以减少出错的概率,另外也可以通过对API 进行替换的方式来处理其他类型的文件,如WORD或XML文件等。 导入实现 具体细节部分请参照附件的XXEXCELIMPORT.fmb文件,以下部分只说明主要步骤。 创建FORM 1.创建临时表块以及上传功能按钮 2.添加上传文件功能, 以上FORM部分具体参照顾问提供的PO导入FORM以及其中的文件上传程序段UPLOAD_FILE

相关主题