摘要: JDBC數據源很簡單主要是SQL的功底,但是它是最基礎的,網上一大堆這方面的介紹哦,可以參考別人的多看看哦,我寫的這些都有點語無倫次了,主要是我自己不怎么寫東西,多以代碼的形式留給自己了,現在寫出來和大家交流,當時做這個的時候找了好多的文章沒有一篇寫的深刻的,大多都是copy的
閱讀全文
posted @
2008-12-11 14:45 凌晨風 閱讀(5868) |
評論 (3) |
編輯 收藏
摘要: 隨便說說parameters、Fields、Variables三個報表基礎的東東,為下來的做做基礎
閱讀全文
posted @
2008-12-11 11:47 凌晨風 閱讀(4626) |
評論 (23) |
編輯 收藏
摘要: 項目中學到的一些jasperReport的東東,先說點基礎的概念吧!
閱讀全文
posted @
2008-12-11 10:10 凌晨風 閱讀(3398) |
評論 (0) |
編輯 收藏
關于怎么整合網上到處都是例子、apache也有比較詳細的例子說明,我是參考這篇文章的http://www.tkk7.com/sterning/archive/2008/01/02/172317.html我使用他的源碼HTML預覽時還是不能正常顯示,images/px(網上的一種解決方案)都有還是不能正常顯示,無奈之下只有查看源代碼了。
Struts2對通過JasperReportsResult.java類的doExecute方法對JasperReport進行了簡單的整合,這個方法對JasperReport的API簡單的包裝(車輪理論^_^)
JasperReport jasperReport = (JasperReport) JRLoader.loadObject(systemId);
jasperPrint = JasperFillManager.fillReport(jasperReport, parameters, stackDataSource);
其中systemId是這樣來的
String systemId = servletContext.getRealPath(finalLocation);
也就是導入的是Jasper文件的絕對路徑,Struts2直接使用的jasper文件(編譯報表很耗時!不推薦使用jrxml文件)
<param name="location">/jasper/notification.jasper</param>
至于Action的代碼就不必寫的那么復雜了
package org.bulktree.jasper;

import net.sf.jasperreports.engine.JRDataSource;
import net.sf.jasperreports.engine.JREmptyDataSource;
import net.sf.jasperreports.engine.JasperCompileManager;

import org.apache.struts2.ServletActionContext;

import com.opensymphony.xwork2.ActionSupport;

/**
*
* @author bulktree Email: laoshulin@gmail.com @ Nov 26, 2008
*/
public class JasperAction extends ActionSupport {

private JRDataSource reportDataSource;

@Override
public String execute() throws Exception {
//定義一個自定義的數據源

reportDataSource = new JREmptyDataSource();
/*編譯很耗時,Ireport可以編譯jrxml文件可以減少程序運行的壓力
* 下面一段代碼可以不寫直接使用Ireport編譯好的jasper文件
*
*/

/* ServletActionContext.getRequest().setAttribute("name", "LAOSHULIN");
String path = ServletActionContext.getServletContext().getRealPath("/jasper");
System.out.println(path);
String sourceFileName = path + "\\" + "CarInstance.jrxml";
String destFileName = path + "\\" + "CarInstance.jasper";

JasperCompileManager.compileReportToFile(sourceFileName, destFileName);*/

return SUCCESS;
}

public JRDataSource getReportDataSource() {
return reportDataSource;
}
}

被注釋的代碼只是指定jrxml文件和jasper文件的路徑及編譯過程,現實中不建議使用,關于jasperReport的各種強大功能本人會在項目結束后進行整理發(fā)布。
繼續(xù)吧!采用HTML格式預覽時,莫名的出現一些圖片的xx,但是我們并沒有使用圖片啊,關于這個為什么網上的資料很詳細本人只是解讀一下Struts2這個插件的源碼最終解決圖片顯示問題
protected String imageServletUrl = "\images\";

exporter.setParameter(JRHtmlExporterParameter.IMAGES_MAP, imagesMap);
exporter.setParameter(JRHtmlExporterParameter.IMAGES_URI, request.getContextPath() + imageServletUrl);
現在明白為什么要新建一個images目錄復制象素圖片了吧!
對于HTML預覽時右擊查看源代碼出現的是相對路徑,但是大多數情況下根據生成的路徑不能指定到px圖片,不知道是不是這個插件包本身的問題還是其它的原因,總之先做出效果來、修改上句換成絕對路徑吧!
exporter.setParameter(JRHtmlExporterParameter.IMAGES_URI, servletContext.getRealPath(File.separator) + imageServletUrl);
這個圖片xx問題自然就會解決了。
好久都沒寫文章了,感覺思路混亂不知道寫了些什么,大家要是有不明白的可直接提出來。
posted @
2008-12-01 12:46 凌晨風 閱讀(6081) |
評論 (6) |
編輯 收藏
摘要: 關于Log4j的使用看代碼吧!注釋寫的很詳細,苦于沒有運行日志信息的代碼,寫那些helloworld顯得不合適,寫出了五種遍歷List的方法,沒有專門的測試工具測試他們運行的效率,哪位要是能測試一下,煩請告訴具體情況!
閱讀全文
posted @
2008-08-13 13:59 凌晨風 閱讀(2104) |
評論 (6) |
編輯 收藏
摘要: dom4j操作xml基礎--Visitor訪問模式解析XML
閱讀全文
posted @
2008-08-10 12:52 凌晨風 閱讀(3050) |
評論 (0) |
編輯 收藏
摘要: dom4j遍歷xml文檔樹有種很特別的方式就是訪問者(Visitor)模式,初次接觸Visitor模式,寫出個人理解大家交流!
閱讀全文
posted @
2008-08-10 12:12 凌晨風 閱讀(2140) |
評論 (2) |
編輯 收藏
摘要: 項目前臺需要寫大量的js,尋求一種有效的調試工具,朋友告訴我office就可以,試試用著感覺挺好
閱讀全文
posted @
2008-08-05 18:21 凌晨風 閱讀(2610) |
評論 (1) |
編輯 收藏
摘要: DOM是用與平臺和語言無關的方式表示XML文檔的官方W3C標準,是以層次結構組織的節(jié)點或信息片斷的集合,它總是把文檔看成一個文檔樹,SAX處理能夠立即開始,而不是等待所有的數據被處理,對于大型文檔來說是個巨大的優(yōu)點,JDOM無疑轉為Java平臺設計,它簡化與XML的交互并且比使用DOM更快,但是它大量的試用具體類操作從而降低了操作的靈活性,dom4j代表了全新的開發(fā)結果,集成的XPath支持、XML Schema支持以及用于大文檔或流化文檔的基于事件的處理,它大量的使用了接口定義,提供了比JDOM大得多的靈活性
閱讀全文
posted @
2008-08-03 15:39 凌晨風 閱讀(2996) |
評論 (2) |
編輯 收藏
摘要: java對字符串處理功能強大,以下是本人實際開發(fā)中用到的一些總結
閱讀全文
posted @
2008-08-01 09:06 凌晨風 閱讀(7584) |
評論 (3) |
編輯 收藏