導航:首頁 > 文檔加密 > javajdbcpdf

javajdbcpdf

發布時間:2025-02-13 04:45:24

Ⅰ iReport 無數據源多頁pdf模板怎麼做

1、輸入數據源名稱,選擇 JDBC Driver,在輸入 JDBC URL 時,可以點擊"Wizard"按鈕,它會根據你選的 JDBC Driver 配置好你的 URL,不過得修改 IP 地址以及 DatabaseName,輸入資料庫名、用戶名、密碼。點擊"Test"按鈕,確定連接情況,然後保存。

$F{} 是用來標明這豎跡是資料庫欄位。$F{WINDOWS_NAME}、$F{NUMBER}、$F{vname}、$F{SP_NAME} 和 $F{SP_TYPE} 是資料庫里的欄位,滾纖豎也是我要在模板里用到的欄位。對於 $F{NUMBER}、$F{vname}、$F{SP_NAME} 和 $F{SP_TYPE} 這四個欄位,雖然放在其他域也可以顯示出結果,比如:pageHeader 域、columnHeader 域、columnFooter 域等等,但是因為會有多列的數據要顯示,所以必須放到"detail"域中。
2、配置模板的查詢語句,以及欄位、變數和參數。
首先輸入查詢語句,如"select * from v_baseinfo_statbanjiereport",點擊"Read fields"按鈕,會查詢出該表的所有欄位名

如果您要有條件的查詢,那麼就在後面添加 Where 語句,如"select * from v_baseinfo_statbanjiereport where DEPT_NAME=$P{orgname} and END_SP_DAY=$P{etime}",點擊"Save query to report"按鈕保存。
這里要注意的是,您可以直接把參數寫入 Where 語句中,象這樣"where DEPT_NAME='中國' and END_SP_DAY='2004-11-23'";但是從 java 程序或者 jsp 頁面傳過來的參數是中文字元的話,您就必須做編碼轉換或者用英文字元、數字來代替;還有像日期參數"2004-11-23",jasperreports 好象解析不了,如果你把 SQL 語句改成" select * from v_baseinfo_statbanjiereport where DEPT_NAME='$P{orgname}' and END_SP_DAY='$P{etime}'",那麼又會拋出異常,因為 Jasperreport 會先把 SQL 語句設置成預編譯語句"select * from v_baseinfo_statbanjiereport where DEPT_NAME= ? and END_SP_DAY= ?",所以 SQL 語句中用到參數的時候,除了其特定的"$P{}"符號外,不能有別的標點符號,傳進去的參數值也盡量不要帶標點符號,所以日期格式得改成"20041123"。

當這些全部做完後,點擊"Save"按鈕,就會生成一個 XML 文件,再點擊"Compile"按鈕,就會生成一個後綴名為 jasper 的文件。
現在可以預覽一下模板的效果,先選擇菜單項"Build"的子菜單項"PDF preview"、"HTML preview"、"JAVA 2D preview"、"Excel preview"、"CSV preview"和"JRViewer preview"中的一項(對這些項顯示工具的配置在菜單項 Tools\Options.. 下的 External programs), 再點擊"Execute report";如果你想帶數據預覽,還得先激活一下剛配置的數據源,選中菜單欄"Build"下的子菜單欄"Set active connection",會彈出一編輯框,選中一個數據源名稱,點擊"OK"。
此時我們就要引入大大一個 jsp 頁面,假設是 pdf.jsp,那麼下面就是 pdf.jsp 的代碼:
<%@ page import="dori.jasper.engine.*" %>
<%@ page import="java.util.*" %>
<%@ page import="java.io.*" %>
<%@ page import="java.sql.*" %>

<%
File reportFile
= new File(application.getRealPath("/reports/ribanjietongji.jasper"));

Map parameters = new HashMap();
parameters.put("orgname", "zhongguo");
parameters.put("etime", "20041123");
Connection conn=null

// 以下忽略得到資料庫連接過程
// ……

byte[] bytes =
JasperRunManager.runReportToPdf(
reportFile.getPath(),
parameters,
conn
);

response.setContentType("application/pdf");
response.setContentLength(bytes.length);
ServletOutputStream ouputStream = response.getOutputStream();
ouputStream.write(bytes, 0, bytes.length);
ouputStream.flush();
ouputStream.close();
%>

程序裡面要和大家說明的就是,"/reports/test.jasper"這個路徑是相對於你這個 jsp 頁面的,比如你的 jsp 頁面保存在 D:\\..\ROOT\ 目錄下,那麼你就必須在這個目錄下建一個 report 目錄,然後把你做好的報表模板文件放到該目錄下來。
Map parameters = new HashMap();
parameters.put("orgname", "zhongguo");
parameters.put("etime", "20041123");

"orgname"和"etime"必須和模板時定義的參數名稱一致。

Ⅱ solr3.5中如何用java代碼為PDF,Office等文件添加索引

1、將解壓包中的solr-4.7.1/dist/solr-4.7.1.war復制到tomcat_dir/webapps/目錄,並命名為solr.war。

2、將solr-4.7.1/example/lib/ext/目錄下的jar文件復制到tomcat/lib目錄下,將solr-4.7.1/example/resources/下的log4j.properties文件復制到tomcat_dir/lib目錄下;
切把 solr-4.7.1/example/solr,復制到tomcat_dir/bin下。

3、修改tomcat_dir/conf/server.xml
<Connector port="8080" protocol="HTTP/1.1"

connectionTimeout="20000"
redirectPort="8443"
URIEncoding="UTF-8" />

4、創建solr.xml,存放在路徑:tomcat/conf/Catalina/localhost/solr.xml,內容:
<Context path="/solr" docBase="C:\Tomcat 7.0\webapps\solr.war"
debug="0" crossContext="true">
<Environment name="solr/home" type="java.lang.String" value="C:\Tomcat 7.0\bin\solr\" override="true" />
</Context>

PS:上面的docBase和value路徑中不能存在中文字元,否則會出現404錯誤。

5、將C:\Tomcat 7.0\webapps下的solr.war包,啟動項目解壓;然後再添加幾個jar包:
solr-4.7.1\dist\solr-dataimporthandler-4.7.1.jar;
solr-4.7.1\dist\solr-dataimporthandler-extras-4.7.1.jar;
還要載入資料庫驅動包:mysql-connector-java-3.1.13-bin.jar

6、在C:\Tomcat 7.0\bin\solr\collection1\conf 下的solrconfig.xml增加以下資料庫配置:
<requestHandler name="/dataimport" class="org.apache.solr.handler.dataimport.DataImportHandler">

<lst name="defaults">
<str name="config">data-config.xml</str>
</lst>
</requestHandler>

7、將tomcat\bin\solr\collection1\conf下增加data-config.xml文件,內容如下:
<dataConfig>

<dataSource type="JdbcDataSource"
driver="com.mysql.jdbc.Driver"
url="jdbc:mysql://192.168.1.221:3306/tmsdb"
user="root"
password="123456"/>
<document name="content">
<entity name="node" query="select id,author,title,content from solrdb">
<field column="id" name="id" />
<field column="author" name="author" />
<field column="title" name="title" />
<field column="content" name="content" />
</entity>
</document>
</dataConfig>

8、增加中文分詞器,ik-analyzer的配置如下:
①目前的中文分詞主要有兩種
1,基於中科院ICTCLAS的隱式馬爾科夫hhmm演算法的中文分詞器,例如smartcn等。(不支持自定義擴展詞庫)
2,基於正向迭代最細粒度切分演算法(正向最大匹配並且最細分詞)例如IK,庖丁等(支持自定義擴展詞庫)
安裝分詞前,可以去下載IK的分詞包 :
IK-Analyzer-4.7.1-0.0.1-SNAPSHOT.jar

下載完畢後,將此包放進tomcat\solr的\WEB-INF\lib下面:tomcat\webapps\solr\WEB-INF\lib 。
下面需要在solr的schemal.xml進行分詞器注冊:
<!-- 配置IK分詞器 -->

<fieldType name="text_ik" class="solr.TextField" positionIncrementGap="100">
<analyzer type="index">
<!-- 分詞-->
<tokenizer class="org.wltea.analyzer.lucene.IKTokenizerFactory"/>
<!-- 禁用詞過濾根據情況使用-->
<!-- <filter class="org.wltea.analyzer.lucene.IKStopFilterFactory"/> -->
</analyzer>
<analyzer type="query">
<!-- 分詞-->
<tokenizer class="org.wltea.analyzer.lucene.IKTokenizerFactory"/>
<!-- 禁用詞過濾根據情況使用-->
<!-- <filter class="org.wltea.analyzer.lucene.IKStopFilterFactory"/>-->
</analyzer>
</fieldType>

最後還得配置一個引用欄位就OK了
<field name="ik" type="text_ik" indexed="true" stored="true" multiValued="true"/>

②它的安裝部署十分簡單,將IKAnalyzer2012.jar部署亍項目的lib目錄中;IKAnalyzer.cfg.xml不stopword.dic文件放置在class根目錄(對於web項目,通常是WEB-I NF/classes目彔,同hibernate、log4j等配置文件相同)下即可 ;然後配置solr4.7中schema.xml配置解析器:
<schema name="example" version="1.1">

……
<fieldType name="text" class="solr.TextField">
<analyzer class="org.wltea.analyzer.lucene.IKAnalyzer"/>
</fieldType>
……
</schema>

閱讀全文

與javajdbcpdf相關的資料

熱點內容
單片機高電平驅動 瀏覽:115
ios多選文件夾 瀏覽:907
加強行車調度命令管理 瀏覽:241
伺服器已禁用什麼意思 瀏覽:148
部隊命令回復 瀏覽:753
神奇寶貝伺服器地圖怎麼設置 瀏覽:380
加密演算法輸出固定長度 瀏覽:862
程序員去重慶還是武漢 瀏覽:121
伺服器如何撤銷網頁登錄限制 瀏覽:980
微信公眾平台php開發視頻教程 瀏覽:628
怎麼看蘋果授權綁定的app 瀏覽:255
壓縮機單級壓縮比 瀏覽:380
linux測試php 瀏覽:971
什麼時候梁旁邊需要加密箍筋 瀏覽:40
微信清粉軟體源碼 瀏覽:717
matlabdoc命令 瀏覽:550
如何去ping伺服器 瀏覽:75
ecshop安裝php55 瀏覽:817
javaword庫 瀏覽:958
php圖片路徑資料庫中 瀏覽:488