<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    posts - 37, comments - 8, trackbacks - 0, articles - 0
    1、JavaReport輸出一維數據展現:
    <%@ page contentType="text/html; charset=GBK" %>
    <%@ page import="com.javareport.beans.*"%>
    <%@ page extends="com.javareport.http.WebReportEngine"%>
    <%!
    public Report createReport(HttpServletRequest request) throws Exception{
        
    //圖片類型數組
        
    int[] chartType = new int[]{
        Chart.CHART_PIE3D,Chart.CHART_STACKBAR3D,
        Chart.CHART_CURVE,Chart.CHART_LINE,
        Chart.CHART_POINT,Chart.CHART_INVERTED_CURVE,
        Chart.CHART_INVERTED_LINE,Chart.CHART_INVERTED_STACKBAR};
            
    //單元數據的顯示標簽字符串數組
        
    String[] labels = new String[] {"太陽","星星","月亮","她的眼睛"};
            
    //實例化報表對象
        Report report 
    = new Report();
        
    //在頁眉中添加文本信息內容
        report.addHeaderText(
    "各種光源在我心中的位置統計");
        
    //在報表的頁眉添加一條橫直線
        report.addHeaderSeparator(
    1);
        
    //在頁尾添加一條橫直線
        report.addFooterSeparator(
    1);
        
    //在頁尾添加文本信息內容
        report.addFooterText(
    "第{P}頁, 共{N}頁");
        
    //循環輸出各種類型的圖片
        
    for (int i = 0; i < chartType.length; i++) {
            try {
                
    //實例化一個圖表對象
                Chart chart 
    = new Chart((Number[][])getData(request));
                
    //設置圖表中的單元數據的顯示的標簽
                chart.setLabels(labels);
                
    //設置統計圖的類型
                chart.setStyle(chartType[i]);
                
    //設置統計圖中顯示的時候把具體的數值也顯示出來
                chart.setShowValue(
    true);
                
    //在報表中添加文本信息內容
                report.addText(
    "報表中常見的報表統計圖表("+i+"): ");
                
    //在報表中添加圖表信息內容
                report.addChart(chart);
                
    //在報表中添加換行符號
                report.addBreak();
                report.addBreak();
                report.addBreak();
            }
            catch (Exception ex) {
                ex.printStackTrace();
            }
        }
        return report;
    }

    //讀者可根據需要設置數組的值,或從數據庫中取出值放入數組中以動態顯示數據
    public Double[][] getData(HttpServletRequest request){
        
    Double[][] data = new Double[1][4];
        data[
    0][0= new Double(67);
        data[
    0][1= new Double(82);
        data[
    0][2= new Double(74);
        data[
    0][3= new Double(100);
        return data;
    }
        
    //定制Web報表在頁面首部顯示的工具欄為標準的樣式,增加一個"返回"按鈕,返回到首頁
    public String getToolbarScript(HttpServletRequest request){
        return 
    "<a href=\"../index.htm\"><img src=\""+request.getRequestURI()+
        "?op=Resource&name=/resource/back.gif\" border=\"0\" alt=\"返回\"></a>";
    }
    %>    
    附:二維數據圖形與一維數據圖形的區別是在數據展現上加大了數據的展現量,在同一個單元數據標簽處可顯示屬于同一個單元的多個數據。修改改getData()方法的內容如下:
    public Double[][] getData(HttpServletRequest request){
        Double[][] data 
    = new Double[4][4];
        data[
    0][0= new Double(67);data[0][1= new Double(82);
        data[
    0][2= new Double(74);data[0][3= new Double(100);
        data[
    1][0= new Double(67);data[1][1= new Double(82);
        data[
    1][2= new Double(74);data[1][3= new Double(100);
        data[
    2][0= new Double(67);data[2][1= new Double(82);
        data[
    2][2= new Double(74);data[2][3= new Double(100);
        data[
    3][0= new Double(67);data[3][1= new Double(82);
        data[
    3][2= new Double(74);data[3][3= new Double(100);
        
    return data;
    }
    2、JavaReport輸出報表:
    <%@ page contentType="text/html; charset=GBK" %>
    <%@ page import="java.awt.*"%>
    <%@ page import="com.javareport.beans.*"%>
    <%@ page extends="com.javareport.http.WebReportEngine"%>
    <%!
    public Report createReport(HttpServletRequest request) throws Exception{
        
    //實例化報表對象
        Report report 
    = new Report();
        
    //在頁眉中添加文本信息內容
        report.addHeaderText(
    "報表輸出示例");
        
    //在報表的頁眉添加一條橫直線
        report.addHeaderSeparator(
    1);
        
    //在頁尾添加一條橫直線
        report.addFooterSeparator(
    1);
        
    //在頁尾添加文本信息內容
        report.addFooterText(
    "第{P}頁, 共{N}頁");
        
        
    //在報表中添加文本信息內容
        report.addText(
    "銷售情況一覽表(合并表格):");
        
    //在報表中添加換行符號
        report.addBreak();
        
    //在報表中添加表格
        report.addTable(getTable());
        
    //在報表中添加換行符號
        report.addBreak();    

        return report;
    }
    //------得到銷售情況一覽表(合并表格)對象------
    public Table getTable(){
        
    String[][] data = getTotalData();
        Table table 
    = new Table(data);
        table.setAlignment(Table.H_CENTER 
    + Table.V_CENTER);
        table.setColAutoSize(
    true);
        table.setRowBackground(
    0,Color.LIGHT_GRAY);
        table.setRowBackground(
    1,Color.LIGHT_GRAY);
        table.setColBackground(
    0,Color.LIGHT_GRAY);
        table.setRowBackground(
    7,new Color(255,255,128));
        table.setHeaderRowCount(
    2);
        table.setHeaderColCount(
    1);
        table.setRowBorder(table.LINE_THIN);
        table.setColBorder(table.LINE_THIN);
        table.setCellSpan(
    0,0,new Dimension(1,2));
        table.setCellSpan(
    0,1,new Dimension(2,1));
        table.setCellSpan(
    0,3,new Dimension(2,1));
        table.setCellSpan(
    0,3,new Dimension(2,1));
        return table;
    }

    //生成銷售情況數據,實際工程中一般從數據庫中獲取
    public String[][] getData(){
        
    String[][] data = new String[6][4];
        data[
    0][0= "區域"; data[0][1= "第一季度"; data[0][2= "第二季度"; data[0][3= "第三季度";
        data[
    1][0= "華南地區"; data[1][1= "¥2,000,000";
         data[
    1][2= "¥2,500,000"; data[1][3= "¥2,200,000";
        data[
    2][0= "華東地區"; data[2][1= "¥6,000,000";
        data[
    2][2= "¥4,500,000"; data[2][3= "¥4,800,000";
        data[
    3][0= "華中地區"; data[3][1= "¥500,000";
        data[
    3][2= "¥400,000"; data[3][3= "¥700,000";
        data[
    4][0= "華北地區"; data[4][1= "¥3,000,000";
        data[
    4][2= "¥3,200,000"; data[4][3= "¥2,500,000";
        data[
    5][0= "東北地區"; data[5][1= "¥4,000,000";
         data[
    5][2= "¥5,000,000"; data[5][3= "¥4,400,000";
        return data;
    }
    //得到銷售匯總統計數據,實際工程中一般從數據庫中獲取
    public String[][] getTotalData(){
        
    String[][] data = new String[8][5];
        data[
    0][0= "區域"; data[0][1= "上半年"; data[0][3= "下半年";
        data[
    1][1= "第一季度"; data[1][2= "第二季度"; data[1][3= "第三季度";data[1][4= "第四季度";
        data[
    2][0= "華南地區"; data[2][1= "¥2,000,000"; data[2][2= "¥2,500,000";
         data[
    2][3= "¥2,200,000";data[2][4= "¥0";
        data[
    3][0= "華東地區"; data[3][1= "¥6,000,000"; data[3][2= "¥4,500,000";
         data[
    3][3= "¥4,800,000";data[3][4= "¥0";
        data[
    4][0= "華中地區"; data[4][1= "¥500,000"; data[4][2= "¥400,000";
        data[
    4][3= "¥700,000";data[4][4= "¥0";
        data[
    5][0= "華北地區"; data[5][1= "¥3,000,000"; data[5][2= "¥3,200,000";
        data[
    5][3= "¥2,500,000";data[5][4= "¥0";
        data[
    6][0= "東北地區"; data[6][1= "¥4,000,000"; data[6][2= "¥5,000,000";
         data[
    6][3= "¥4,400,000";data[6][4= "¥0";
        data[
    7][0= "總計"; data[7][1= "¥15,500,000"; data[7][2= "¥15,600,000";
        data[
    7][3= "¥14,600,000";data[7][4= "¥0";
        return data;
    }
    //定制Web報表在頁面首部顯示的工具欄為標準的樣式,增加一個"返回"按鈕,返回到首頁
    public String getToolbarScript(HttpServletRequest request){
        return 
    "<a href=\"../index.htm\"><img src=\""+request.getRequestURI()+
        "?op=Resource&name=/resource/back.gif\" border=\"0\" alt=\"返回\"></a>";
    }
    %>
    注:實際工程中,報表的數據往往來自于數據庫,需要在getTotalData()方法中編寫代碼從數據庫中得到統計數據,統計方法可以是使用特定的SQL語句或取出數據后在Java語句中統計。輸出報表還有一種更直接的方法,就是用SQL語句查詢出數據庫中的數據后,得到一個ResultSet對象,如rs,再用如語句:RsTable rsTable=new RsTable(rs),重載如下方法:public RsTable getTable(HttpServletRequest request)throws Exception將返回值為rsTable,即可將數據庫查詢的結果作二維表格中的數據直接輸出,不必再轉換成二維數組中的再數據再輸出到報表。
    主站蜘蛛池模板: 日日噜噜噜噜夜夜爽亚洲精品| 亚洲女同成av人片在线观看| 一级特黄a免费大片| 国产亚洲成AV人片在线观黄桃| 国内精品免费麻豆网站91麻豆| 国产成人 亚洲欧洲| 亚洲成AV人片一区二区| 最近中文字幕免费mv视频8| 一级中文字幕乱码免费| 亚洲欧洲精品在线| 亚洲成av人在片观看| 久久国产免费观看精品3| 免费国产va视频永久在线观看| 久久久久亚洲av无码专区导航| 全部免费毛片在线| 免费能直接在线观看黄的视频| 水蜜桃视频在线观看免费| 91精品国产亚洲爽啪在线观看| 国产一区二区三区免费在线观看 | 1区1区3区4区产品亚洲| 国产又大又粗又硬又长免费 | 久久亚洲AV成人无码电影| 亚洲第一区精品日韩在线播放| 亚欧在线精品免费观看一区| 全黄A免费一级毛片| 亚洲avav天堂av在线网爱情| 亚洲色成人网站WWW永久| 国产成人免费高清在线观看 | 亚洲成年人啊啊aa在线观看| 亚洲免费福利视频| 三上悠亚在线观看免费| 亚洲另类无码一区二区三区| 亚洲一区免费观看| 亚洲伊人久久精品影院| 国产成人高清精品免费鸭子| 无码av免费毛片一区二区| 无码日韩精品一区二区三区免费| 成人a毛片免费视频观看| 亚洲成在人线在线播放无码| 亚洲欧洲精品久久| 亚洲欧洲在线观看|