- 浏览: 130589 次
- 性别:
- 来自: 衡阳
文章分类
最新评论
-
smallsilver:
,确实是这么回事,回头看看parse的方法,thanks!
解决java.net.MalformedURLException: unknown protocol问题 -
伊然01:
...
struts2.1.8+json+jquery1.3实现ajax -
skyjun:
2011-4-11 11:59:36 com.opensymp ...
struts2.1.8+json+jquery1.3实现ajax -
itpentiuman:
哥们多谢,例子很简单管用,注释也写得详细!
struts2.1.8+json+jquery1.3实现ajax -
chenandzoff:
例子不错 谢谢
struts2.1.8+json+jquery1.3实现ajax
下面是我做一个程序:用java语言将Bugzilla系统的Bug Xml转化为excel文件。
用java处理excel文件的第三方包: pio-3.7-20101029.jar
主要代码:
读取Xml:
package com.tzp.bugzilla; import java.io.File; import java.util.ArrayList; import java.util.List; import javax.xml.parsers.DocumentBuilder; import javax.xml.parsers.DocumentBuilderFactory; import org.w3c.dom.Document; import org.w3c.dom.Element; import org.w3c.dom.Node; import org.w3c.dom.NodeList; public class ReadXml { public List<Bug> GetBugList(String xmlPath) throws Exception{ DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); DocumentBuilder builder; builder = factory.newDocumentBuilder(); File file=new File(xmlPath); //boolean b=file.exists(); //System.out.println(b); Document document = builder.parse(file); Element e1=document.getDocumentElement(); NodeList nodeList=e1.getChildNodes(); List<Bug> bugList=new ArrayList<Bug>(); for(int i=0;i<nodeList.getLength();i++){ Node bugNode=nodeList.item(i); if("bug".equalsIgnoreCase(bugNode.getNodeName())){ Element bugEle=(Element)bugNode; Bug bug=GetBugInfor(bugEle); bugList.add(bug); }; } return bugList; } public Bug GetBugInfor(Element e){ Bug bug =new Bug(); bug.setBug_ID(e.getElementsByTagName("bug_id").item(0).getTextContent()); bug.setBug_opened_time(e.getElementsByTagName("creation_ts").item(0).getTextContent()); bug.setBug_summary(e.getElementsByTagName("short_desc").item(0).getTextContent()); bug.setBug_changed_time(e.getElementsByTagName("delta_ts").item(0).getTextContent()); bug.setBug_product(e.getElementsByTagName("product").item(0).getTextContent()); bug.setBug_comp(e.getElementsByTagName("component").item(0).getTextContent()); bug.setBug_version(e.getElementsByTagName("version").item(0).getTextContent()); bug.setBug_hardware(e.getElementsByTagName("rep_platform").item(0).getTextContent()); bug.setBug_OS(e.getElementsByTagName("op_sys").item(0).getTextContent()); bug.setBug_status(e.getElementsByTagName("bug_status").item(0).getTextContent()); bug.setBug_priority(e.getElementsByTagName("priority").item(0).getTextContent()); bug.setBug_severity(e.getElementsByTagName("bug_severity").item(0).getTextContent()); bug.setBug_reporter(e.getElementsByTagName("reporter").item(0).getTextContent()); bug.setBug_reporter_realname(((Element)e.getElementsByTagName("reporter").item(0)).getAttribute("name")); bug.setBug_assign(e.getElementsByTagName("assigned_to").item(0).getTextContent()); bug.setBug_assign_realname(((Element)e.getElementsByTagName("assigned_to").item(0)).getAttribute("name")); //bug.setBug_frequency(e.getElementsByTagName("cf_frequency").item(0).getTextContent()); if(e.getElementsByTagName("cf_language").getLength()==0){ bug.setBug_language(""); }else{ bug.setBug_language(e.getElementsByTagName("cf_language").item(0).getTextContent()); } if(e.getElementsByTagName("cf_frequency").getLength()==0){ bug.setBug_frequency(""); }else{ bug.setBug_frequency(e.getElementsByTagName("cf_frequency").item(0).getTextContent()); } if(e.getElementsByTagName("resolution").getLength()==0){ bug.setBug_resolution(""); }else{ bug.setBug_resolution(e.getElementsByTagName("resolution").item(0).getTextContent()); } //读取desc NodeList descList=e.getElementsByTagName("long_desc"); String comments=""; String desc=""; for(int i=0;i<descList.getLength();i++){ Element descEle=(Element)descList.item(i); //将第一个desc设置为Reproduce steps and test results,将其它desc设置为comments if(i==0){ desc=descEle.getElementsByTagName("thetext").item(0).getTextContent(); }else{ comments=comments +descEle.getElementsByTagName("bug_when").item(0).getTextContent()+" " +((Element)descEle.getElementsByTagName("who").item(0)).getAttribute("name")+" : \n" +descEle.getElementsByTagName("thetext").item(0).getTextContent()+"\n"; } } bug.setBug_desc(desc); bug.setBug_comments(comments); return bug; } public void PrintBugList(List<Bug> bugList){ for(Bug bug:bugList){ System.out.println(bug); } } }
写入Excel文件代码:
package com.tzp.bugzilla;
import java.io.FileOutputStream; import java.util.List;
import org.apache.poi.hssf.usermodel.HSSFCellStyle; import org.apache.poi.hssf.usermodel.HSSFFont; import org.apache.poi.hssf.usermodel.HSSFWorkbook; import org.apache.poi.hssf.util.HSSFColor; import org.apache.poi.ss.usermodel.Cell; import org.apache.poi.ss.usermodel.CellStyle; import org.apache.poi.ss.usermodel.Font; import org.apache.poi.ss.usermodel.Row; import org.apache.poi.ss.usermodel.Sheet; import org.apache.poi.ss.usermodel.Workbook; import org.apache.poi.ss.util.CellRangeAddress;
public class WriteToExcel {
private Workbook wb=null; private Sheet sh=null; private CellStyle defStyle=null; private CellStyle defStyle1=null; private Font redFont=null; private Font blackFont=null; private int ID=0; private int id_Id=0; private int product_Id=0; private int version_Id=0; private int assign_Id=0; private int severity_Id=0; private int hardware_Id=0; private int OS_Id=0; private int priority_Id=0; private int frequency_Id=0; private int language_Id=0; private int reopen_version_Id=0; private int close_version_Id=0; private int summary_Id=0; private int desc_Id=0; private int comments_Id=0; private int opened_time_Id=0; private int changed_time_Id=0; private int comp_Id=0; private int status_Id=0; private int assign_realname_Id=0; private int reporter_Id=0; private int reporter_realname_Id=0; private int resolution_id=0; public void writeBug(List<Bug> list,String strPath,SelectInfor sInfor) throws Exception{ //set excel style , width ,titles writeTitle(sInfor); int intNum=2; for(int i=0;i<list.size();i++){ Bug bug=list.get(i); //定义sheet的列默认style:水平居中,垂直居中,画出边框线 defStyle=wb.createCellStyle(); defStyle.setVerticalAlignment(HSSFCellStyle.VERTICAL_CENTER); defStyle.setAlignment(HSSFCellStyle.ALIGN_CENTER); defStyle.setWrapText(true);//自动换行 defStyle.setBorderBottom(HSSFCellStyle.BORDER_THIN); defStyle.setBottomBorderColor(HSSFColor.BLACK.index); defStyle.setBorderLeft(HSSFCellStyle.BORDER_THIN); defStyle.setLeftBorderColor(HSSFColor.BLACK.index); defStyle.setBorderRight(HSSFCellStyle.BORDER_THIN); defStyle.setRightBorderColor(HSSFColor.BLACK.index); defStyle.setBorderTop(HSSFCellStyle.BORDER_THIN); defStyle.setTopBorderColor(HSSFColor.BLACK.index); //定义sheet的列默认style:水平靠左,垂直居中,画出边框线 defStyle1=wb.createCellStyle(); defStyle1.setVerticalAlignment(HSSFCellStyle.VERTICAL_CENTER); defStyle1.setAlignment(HSSFCellStyle.ALIGN_LEFT); defStyle1.setWrapText(true);//自动换行 defStyle1.setBorderBottom(HSSFCellStyle.BORDER_THIN); defStyle1.setBottomBorderColor(HSSFColor.BLACK.index); defStyle1.setBorderLeft(HSSFCellStyle.BORDER_THIN); defStyle1.setLeftBorderColor(HSSFColor.BLACK.index); defStyle1.setBorderRight(HSSFCellStyle.BORDER_THIN); defStyle1.setRightBorderColor(HSSFColor.BLACK.index); defStyle1.setBorderTop(HSSFCellStyle.BORDER_THIN); defStyle1.setTopBorderColor(HSSFColor.BLACK.index); //判断是否为critical bug 和blocker bug,用红色字体 if(bug.getBug_severity().equalsIgnoreCase("critical") || bug.getBug_severity().equalsIgnoreCase("blocker")){ defStyle.setFont(redFont); defStyle1.setFont(redFont); //System.out.println("*******"); }else{ defStyle.setFont(blackFont); defStyle1.setFont(blackFont); //System.out.println("++++++"); } Row row=sh.createRow(intNum); if(sInfor.isId()){ Cell cellId=row.createCell(this.id_Id); cellId.setCellValue(bug.getBug_ID()); cellId.setCellStyle(defStyle); } if(sInfor.isStatus()){ Cell cellStatus=row.createCell(this.status_Id); cellStatus.setCellValue(bug.getBug_status()); cellStatus.setCellStyle(defStyle); } if(sInfor.isResolution()){ Cell cellStatus=row.createCell(this.resolution_id); cellStatus.setCellValue(bug.getBug_resolution()); cellStatus.setCellStyle(defStyle); } if(sInfor.isPriority()){ Cell cellPriority=row.createCell(this.priority_Id); cellPriority.setCellValue(bug.getBug_priority()); cellPriority.setCellStyle(defStyle); } if(sInfor.isSeverity()){ Cell cellSeverity=row.createCell(this.severity_Id); cellSeverity.setCellValue(bug.getBug_severity()); cellSeverity.setCellStyle(defStyle); } if(sInfor.isProduct()){ Cell cellProduct=row.createCell(this.product_Id); cellProduct.setCellValue(bug.getBug_product()); cellProduct.setCellStyle(defStyle); } if(sInfor.isOS()){ Cell cellOS=row.createCell(this.OS_Id); cellOS.setCellValue(bug.getBug_OS()); cellOS.setCellStyle(defStyle); } if(sInfor.isHardware()){ Cell cellHardware=row.createCell(this.hardware_Id); cellHardware.setCellValue(bug.getBug_hardware()); cellHardware.setCellStyle(defStyle); } if(sInfor.isComp()){ Cell cellComp=row.createCell(this.comp_Id); cellComp.setCellValue(bug.getBug_comp()); cellComp.setCellStyle(defStyle); } if(sInfor.isSummary()){ Cell cellSummary=row.createCell(this.summary_Id); cellSummary.setCellValue(bug.getBug_summary()); cellSummary.setCellStyle(defStyle1); } if(sInfor.isDesc()){ Cell cellDesc=row.createCell(this.desc_Id); cellDesc.setCellValue(bug.getBug_desc()); cellDesc.setCellStyle(defStyle1); } if(sInfor.isFrequency()){ Cell cellFrequency=row.createCell(this.frequency_Id); cellFrequency.setCellValue(bug.getBug_frequency()); cellFrequency.setCellStyle(defStyle); } if(sInfor.isVersion()){ Cell cellVersion=row.createCell(this.version_Id); cellVersion.setCellValue(bug.getBug_version()); cellVersion.setCellStyle(defStyle); } if(sInfor.isLanguage()){ Cell cellLanguage=row.createCell(this.language_Id); cellLanguage.setCellValue(bug.getBug_language()); cellLanguage.setCellStyle(defStyle); } if(sInfor.isReporter_realname()){ Cell cellReporterRealName=row.createCell(this.reporter_realname_Id); cellReporterRealName.setCellValue(bug.getBug_reporter_realname()); cellReporterRealName.setCellStyle(defStyle); } if(sInfor.isOpened_time()){ Cell cellOpened=row.createCell(this.opened_time_Id); cellOpened.setCellValue(bug.getBug_opened_time()); cellOpened.setCellStyle(defStyle); } if(sInfor.isReporter()){ Cell cellReporter=row.createCell(this.reporter_Id); cellReporter.setCellValue(bug.getBug_reporter()); cellReporter.setCellStyle(defStyle); } if(sInfor.isAssign_realname()){ Cell cellAssignRealName=row.createCell(this.assign_realname_Id); cellAssignRealName.setCellValue(bug.getBug_assign_realname()); cellAssignRealName.setCellStyle(defStyle); } if(sInfor.isAssign()){ Cell cellAssign=row.createCell(this.assign_Id); cellAssign.setCellValue(bug.getBug_assign()); cellAssign.setCellStyle(defStyle); } if(sInfor.isChanged_time()){ Cell cellChanged=row.createCell(this.changed_time_Id); cellChanged.setCellValue(bug.getBug_changed_time()); cellChanged.setCellStyle(defStyle); } if(sInfor.isComments()){ Cell cellComments=row.createCell(this.comments_Id); cellComments.setCellValue(bug.getBug_comments()); cellComments.setCellStyle(defStyle1); } if(sInfor.isReopen_version()){ Cell cellReopenVersion=row.createCell(this.reopen_version_Id); cellReopenVersion.setCellValue(bug.getBug_reopen_version()); cellReopenVersion.setCellStyle(defStyle); } if(sInfor.isClose_version()){ Cell cellClosed=row.createCell(this.close_version_Id); cellClosed.setCellValue(bug.getBug_close_version()); cellClosed.setCellStyle(defStyle); } intNum++; } //output excel file OutputExcel(strPath); }
public void writeTitle(SelectInfor sInfor){ //new excel wb=new HSSFWorkbook();
//new sheet sh=wb.createSheet(); //set sheet name wb.setSheetName(0, "Bug List"); //定义red font redFont=wb.createFont(); redFont.setColor(HSSFColor.RED.index); //define black font blackFont=wb.createFont(); blackFont.setColor(HSSFColor.BLACK.index); /* //定义sheet的列默认style:水平居中,垂直居中,画出边框线 defStyle=wb.createCellStyle(); defStyle.setVerticalAlignment(HSSFCellStyle.VERTICAL_CENTER); defStyle.setAlignment(HSSFCellStyle.ALIGN_CENTER); defStyle.setWrapText(true);//自动换行 defStyle.setBorderBottom(HSSFCellStyle.BORDER_THIN); defStyle.setBottomBorderColor(HSSFColor.BLACK.index); defStyle.setBorderLeft(HSSFCellStyle.BORDER_THIN); defStyle.setLeftBorderColor(HSSFColor.BLACK.index); defStyle.setBorderRight(HSSFCellStyle.BORDER_THIN); defStyle.setRightBorderColor(HSSFColor.BLACK.index); defStyle.setBorderTop(HSSFCellStyle.BORDER_THIN); defStyle.setTopBorderColor(HSSFColor.BLACK.index); //定义sheet的列默认style:水平靠左,垂直居中,画出边框线 defStyle1=wb.createCellStyle(); defStyle1.setVerticalAlignment(HSSFCellStyle.VERTICAL_CENTER); defStyle1.setAlignment(HSSFCellStyle.ALIGN_LEFT); defStyle1.setWrapText(true);//自动换行 defStyle1.setBorderBottom(HSSFCellStyle.BORDER_THIN); defStyle1.setBottomBorderColor(HSSFColor.BLACK.index); defStyle1.setBorderLeft(HSSFCellStyle.BORDER_THIN); defStyle1.setLeftBorderColor(HSSFColor.BLACK.index); defStyle1.setBorderRight(HSSFCellStyle.BORDER_THIN); defStyle1.setRightBorderColor(HSSFColor.BLACK.index); defStyle1.setBorderTop(HSSFCellStyle.BORDER_THIN); defStyle1.setTopBorderColor(HSSFColor.BLACK.index); */
//new title row Row row0=sh.createRow(0); row0.setHeightInPoints(35); Cell cellTitle=row0.createCell(0); cellTitle.setCellValue("Bug List Report"); //定义title style CellStyle titleStyle=wb.createCellStyle(); titleStyle.setVerticalAlignment(HSSFCellStyle.VERTICAL_CENTER); titleStyle.setAlignment(HSSFCellStyle.ALIGN_CENTER); titleStyle.setFillForegroundColor(HSSFColor.GREEN.index); titleStyle.setFillPattern(HSSFCellStyle.SOLID_FOREGROUND); titleStyle.setBorderBottom(HSSFCellStyle.BORDER_THIN); titleStyle.setBottomBorderColor(HSSFColor.BLACK.index); titleStyle.setBorderLeft(HSSFCellStyle.BORDER_THIN); titleStyle.setLeftBorderColor(HSSFColor.BLACK.index); titleStyle.setBorderRight(HSSFCellStyle.BORDER_THIN); titleStyle.setRightBorderColor(HSSFColor.BLACK.index); titleStyle.setBorderTop(HSSFCellStyle.BORDER_THIN); titleStyle.setTopBorderColor(HSSFColor.BLACK.index); Font titleFont=wb.createFont(); titleFont.setFontHeightInPoints((short)16); titleFont.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD); titleStyle.setFont(titleFont); //设置Title row 的style cellTitle.setCellStyle(titleStyle); //设第2行的style CellStyle rowTitleStyle=wb.createCellStyle(); rowTitleStyle.setVerticalAlignment(HSSFCellStyle.VERTICAL_CENTER);//垂直居中 rowTitleStyle.setAlignment(HSSFCellStyle.ALIGN_CENTER);//水平居中 //设置背景颜色为浅橙色 rowTitleStyle.setFillForegroundColor(HSSFColor.LIGHT_ORANGE.index); rowTitleStyle.setFillPattern(HSSFCellStyle.SOLID_FOREGROUND); rowTitleStyle.setBorderBottom(HSSFCellStyle.BORDER_THIN); rowTitleStyle.setBottomBorderColor(HSSFColor.BLACK.index); rowTitleStyle.setBorderLeft(HSSFCellStyle.BORDER_THIN); rowTitleStyle.setLeftBorderColor(HSSFColor.BLACK.index); rowTitleStyle.setBorderRight(HSSFCellStyle.BORDER_THIN); rowTitleStyle.setRightBorderColor(HSSFColor.BLACK.index); rowTitleStyle.setBorderTop(HSSFCellStyle.BORDER_THIN); rowTitleStyle.setTopBorderColor(HSSFColor.BLACK.index); Font rowTitleFont=wb.createFont(); rowTitleFont.setFontHeightInPoints((short)10); //字体10号 rowTitleFont.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD);//加粗 rowTitleStyle.setFont(rowTitleFont); //new second row Row row=sh.createRow(1); row.setHeightInPoints(25); //是否有选择ID if(sInfor.isId()){ this.id_Id=ID; sh.setColumnWidth(this.id_Id, 8*256); // new Bug ID cell Cell cellId=row.createCell(id_Id); cellId.setCellValue("Bug ID"); cellId.setCellStyle(rowTitleStyle);
ID++; } if(sInfor.isStatus()){ this.status_Id=ID; sh.setColumnWidth(this.status_Id, 12*256); // new Status cell Cell cellStatus=row.createCell(status_Id); cellStatus.setCellValue("Status"); cellStatus.setCellStyle(rowTitleStyle); ID++; } if(sInfor.isResolution()){ this.resolution_id=ID; sh.setColumnWidth(this.resolution_id, 12*256); // new Status cell Cell cellStatus=row.createCell(resolution_id); cellStatus.setCellValue("Resolution"); cellStatus.setCellStyle(rowTitleStyle); ID++; } if(sInfor.isPriority()){ this.priority_Id=ID; sh.setColumnWidth(this.priority_Id, 10*256); // new Priority cell Cell cellPriority=row.createCell(priority_Id); cellPriority.setCellValue("Priority"); cellPriority.setCellStyle(rowTitleStyle); ID++; } if(sInfor.isSeverity()){ this.severity_Id=ID; sh.setColumnWidth(this.severity_Id, 10*256); // new severity cell Cell cellSeverity=row.createCell(severity_Id); cellSeverity.setCellValue("Severity"); cellSeverity.setCellStyle(rowTitleStyle);
ID++; } if(sInfor.isProduct()){ this.product_Id=ID; sh.setColumnWidth(this.product_Id, 12*256); // new product cell Cell cellProduct=row.createCell(product_Id); cellProduct.setCellValue("Product"); cellProduct.setCellStyle(rowTitleStyle); ID++; } if(sInfor.isOS()){ this.OS_Id=ID; sh.setColumnWidth(this.OS_Id, 12*256); // new OS cell Cell cellOS=row.createCell(OS_Id); cellOS.setCellValue("OS"); cellOS.setCellStyle(rowTitleStyle); ID++; } if(sInfor.isHardware()){ this.hardware_Id=ID; sh.setColumnWidth(this.hardware_Id, 12*256); // new Hardware cell Cell cellHardware=row.createCell(hardware_Id); cellHardware.setCellValue("Hardware"); cellHardware.setCellStyle(rowTitleStyle); ID++; } if(sInfor.isComp()){ this.comp_Id=ID; sh.setColumnWidth(this.comp_Id, 12*256); // new Component cell Cell cellComp=row.createCell(comp_Id); cellComp.setCellValue("Component"); cellComp.setCellStyle(rowTitleStyle); ID++; } if(sInfor.isSummary()){ this.summary_Id=ID; sh.setColumnWidth(this.summary_Id, 60*256); // new Summary cell Cell cellSummary=row.createCell(summary_Id); cellSummary.setCellValue("Summary"); cellSummary.setCellStyle(rowTitleStyle);
ID++; } if(sInfor.isDesc()){ this.desc_Id=ID; sh.setColumnWidth(this.desc_Id, 60*256); // new Description cell Cell cellDesc=row.createCell(desc_Id); cellDesc.setCellValue("Detail Description"); cellDesc.setCellStyle(rowTitleStyle);
ID++; } if(sInfor.isFrequency()){ this.frequency_Id=ID; sh.setColumnWidth(this.frequency_Id, 10*256); // new Frequency cell Cell cellFrequency=row.createCell(frequency_Id); cellFrequency.setCellValue("Frequency"); cellFrequency.setCellStyle(rowTitleStyle); ID++; } if(sInfor.isVersion()){ this.version_Id=ID; sh.setColumnWidth(this.version_Id, 15*256); // new severity cell Cell cellVersion=row.createCell(version_Id); cellVersion.setCellValue("Version"); cellVersion.setCellStyle(rowTitleStyle); ID++; } if(sInfor.isLanguage()){ this.language_Id=ID; sh.setColumnWidth(this.language_Id, 15*256); // new language cell Cell cellLanguage=row.createCell(language_Id); cellLanguage.setCellValue("language"); cellLanguage.setCellStyle(rowTitleStyle); ID++; } if(sInfor.isReporter_realname()){ this.reporter_realname_Id=ID; sh.setColumnWidth(this.reporter_realname_Id, 20*256); // new Reporter real name cell Cell cellReporterRealName=row.createCell(reporter_realname_Id); cellReporterRealName.setCellValue("Reporter"); cellReporterRealName.setCellStyle(rowTitleStyle); ID++; } if(sInfor.isOpened_time()){ this.opened_time_Id=ID; sh.setColumnWidth(this.opened_time_Id, 20*256); // new Opened time cell Cell cellOpened=row.createCell(opened_time_Id); cellOpened.setCellValue("Opened"); cellOpened.setCellStyle(rowTitleStyle); ID++; } if(sInfor.isReporter()){ this.reporter_Id=ID; sh.setColumnWidth(this.reporter_Id, 20*256); // new Reporter cell Cell cellReporter=row.createCell(reporter_Id); cellReporter.setCellValue("Report Email"); cellReporter.setCellStyle(rowTitleStyle); ID++; } if(sInfor.isAssign_realname()){ this.assign_realname_Id=ID; sh.setColumnWidth(this.assign_realname_Id, 20*256); // new assign real name cell Cell cellAssignRealName=row.createCell(assign_realname_Id); cellAssignRealName.setCellValue("Assign"); cellAssignRealName.setCellStyle(rowTitleStyle); ID++; } if(sInfor.isAssign()){ this.assign_Id=ID; sh.setColumnWidth(this.assign_Id, 20*256); // new assign cell Cell cellAssign=row.createCell(assign_Id); cellAssign.setCellValue("Assign Email"); cellAssign.setCellStyle(rowTitleStyle); ID++; } if(sInfor.isChanged_time()){ this.changed_time_Id=ID; sh.setColumnWidth(this.changed_time_Id, 20*256); // new severity cell Cell cellChanged=row.createCell(changed_time_Id); cellChanged.setCellValue("Changed"); cellChanged.setCellStyle(rowTitleStyle); ID++; } if(sInfor.isComments()){ this.comments_Id=ID; sh.setColumnWidth(this.comments_Id, 60*256); // new comments cell Cell cellComments=row.createCell(comments_Id); cellComments.setCellValue("Comments"); cellComments.setCellStyle(rowTitleStyle); ID++; } if(sInfor.isReopen_version()){ this.reopen_version_Id=ID; sh.setColumnWidth(this.reopen_version_Id, 20*256); // new severity cell Cell cellReopened=row.createCell(reopen_version_Id); cellReopened.setCellValue("Reopen version"); cellReopened.setCellStyle(rowTitleStyle); ID++; } if(sInfor.isClose_version()){ this.close_version_Id=ID; sh.setColumnWidth(this.close_version_Id, 20*256); // new severity cell Cell cellClosed=row.createCell(close_version_Id); cellClosed.setCellValue("Close version"); cellClosed.setCellStyle(rowTitleStyle); ID++; } //合并第一行单元格 sh.addMergedRegion(new CellRangeAddress(0,0,0,ID-1)); } /** * 将workbokk 通过fileOutputStream输入为excel文件 * @param wb */ public void OutputExcel(String strPath) throws Exception{ FileOutputStream fileOut =null; try{ fileOut=new FileOutputStream(strPath); wb.write(fileOut); } finally{ if(fileOut!=null){ fileOut.close(); } } } }
- BugzillatoolV0.2.jar (1.5 MB)
- 下载次数: 21
- BugzillaTool-2012-05-08.rar (57 KB)
- 下载次数: 16
发表评论
-
eclipse VE插件
2013-03-28 00:00 635Eclipse VE 这个插件的官方地址已经不可用了 ... -
解决java.net.MalformedURLException: unknown protocol问题
2012-05-08 15:57 50110最近在写一个工具时,java 解析Xml时,出现下面异常 ... -
String 和StringBuffer
2010-03-30 17:10 835String 是值传递, StringBuffer 是引用传 ... -
corejava学习(集合)
2009-05-23 02:48 999集合 Collection(元素 ... -
corejava学习8(io)
2009-05-15 18:01 912Vector 的方法都是synchronized ... -
corejava学习7(多线程)
2009-05-15 17:57 789Cpu内部是串行的是分时执行,在外面是并行的 ... -
corejava学习6(界面)
2009-05-10 10:56 717界面 1 选择容器 2 设置布局管理器 3 ... -
corejava学习5(异常)
2009-05-10 10:52 787Exception Throwable(运 ... -
corejava学习4(内部类)
2009-05-10 10:49 9651 Wrapper class OverLoadi ... -
corejava学习3(接口)
2009-05-10 10:44 770Interface(接口) Inte ... -
corejava学习2(三大特性)
2009-05-10 10:41 1206面向对象的三大特性: 封装(encapsulation),继 ... -
corejava学习1(基本概念和语法)
2009-05-09 17:51 916Java基础: 1)文件名以java结尾 ...
相关推荐
Bugzilla 中导出的 BUG 列表...从 Bugzilla 中导出的 BUG 列表可以通过 CSV 文件格式导出,然后使用 Microsoft Excel 转换为可以查看的 Excel 文档。这样可以方便地查看和分析 BUG 列表,提高软件开发的效率和质量。
Excel可以方便地与其它工具(如版本控制系统、Bug跟踪系统)交换数据,通过CSV或XML格式进行导入导出。 9. **版本控制**: 虽然Excel本身不自带版本控制功能,但可以通过外部工具(如Git)来管理不同版本的BUG...
测试管理工具 Bugzilla 权限配置详解 Bugzilla 权限配置是测试管理工具中的一项重要功能,它允许管理员对不同的项目组和用户进行权限控制,从而实现项目组之间的隔离和安全保障。本文将详细介绍 Bugzilla 权限配置...
Bugzilla是一款广泛使用的开源Bug跟踪管理系统,专为软件开发团队设计,以协助他们高效地管理和解决软件中的问题和缺陷。这个系统提供了强大的功能,确保软件的质量控制和开发流程的顺畅。 1. **Bug生命周期管理**...
开发者可以免费下载Bugzilla,他们需要一个易用、高效的bug跟踪工具,现在有很多这样的工具。 Bugzilla就是其中之一。 它是Mozilla的跟踪工具,可以用来跟踪和报告网络和应用程序上的错误和错误。 安装说明:...
4. **导出到Excel**:Bugzilla支持数据导出功能,用户可以将缺陷列表导出为CSV或Excel格式。在导出时,描述字段应一同包含,以便在外部工具中进行进一步分析和管理。 5. **模板和报告**:如果需要自定义报告,用户...
Bugzilla 是 Mozilla 公司提供的一个开源的免费缺陷跟踪工具,可以帮助建立一个完善的 Bug 跟踪体系,包括报告 Bug、查询 Bug 记录并产生报表、处理解决、管理员系统初始化和设置四部分。 Bugzilla 系统的特点有:...
在配置Apache时,需要将Bugzilla的Perl脚本目录设置为可执行,并正确配置虚拟主机以指向Bugzilla的根目录。 MySQL则是常用的关系型数据库管理系统,用于存储Bugzilla的数据,如bug报告、用户信息和权限设置等。安装...
此外,对于系统管理员,他们还可以在中文环境下进行更高级的配置,如设置权限、定制工作流程、导入导出数据等。这使得非英语背景的管理员也能轻松管理整个Bugzilla实例,确保团队的协作流程顺畅。 总的来说,...
4. **创建数据库**:在MySQL中创建一个名为'bugs'的数据库,这将是Bugzilla存储bug信息的地方。 5. **安装Bugzilla**:下载Bugzilla的源代码包,将其解压到一个目录中。这个目录通常包含Perl模块和Bugzilla的配置...
bugzilla使用说明.doc
Bugzilla是一个基于Web的工具,它允许团队成员报告、跟踪和解决软件开发中的问题,即“bug”。它的安装通常涉及几个步骤:下载源代码、配置环境、运行安装脚本以及进行必要的数据库设置。 1. **下载安装包**:在这...
Bugzilla中无法直接删除bug,但可以创建一个名为“回收站”的项目,将无效bug移动进去。 5. **新建bug**: - 创建bug前,需要先创建项目和模块。在“Administration”>“Products”下添加新项目,再在项目中添加...
Bugzilla是一个广泛使用的开源缺陷跟踪系统,可以帮助开发者和测试者有效地管理和追踪软件中的bug。以下是在Windows环境下安装Bugzilla的详细步骤和相关知识点。 1. 准备软件包 首先,需要准备以下软件包: - MySQL...
**Bugzilla** 是一款开源的错误追踪系统,它主要用于帮助软件开发团队管理和跟踪在软件开发过程中出现的各种问题或缺陷(通常被称为“Bug”)。该系统由Mozilla基金会维护和支持,旨在为用户提供一个高效且功能丰富...
7. **API与扩展**:学习BugZilla的API,如XML-RPC和REST接口,以及如何利用这些接口与其他工具(如持续集成系统或自动化测试框架)进行集成。同时,也会了解到社区提供的各种扩展和插件。 8. **报表与统计**:理解...
- **报告 Bug**:用户可以通过 Bugzilla 界面提交新发现的问题,包括问题描述、影响版本、优先级和严重性等信息。 - **查询 Bug**:系统提供了多种查询条件,如产品、组件、状态、优先级等,以便快速找到所需的...
Bugzilla 主页通常包含一些关键功能入口,比如新建 bug、查询 bug 等。对于 Firefox 浏览器用户来说,界面友好且易于操作。 **2.2 注册新用户** 新用户可以通过点击“注册新用户”按钮开始注册流程。填写必要的...