Trang ChínhTrang Chính  CalendarCalendar  Trợ giúpTrợ giúp  Tìm kiếmTìm kiếm  Thành viênThành viên  NhómNhóm  Đăng kýĐăng ký  Đăng NhậpĐăng Nhập  
  • Top posters
 Mr.Pakapun (256)
 ddtan90 (178)
 tvduong (147)
 dthnam90 (137)
 minhquankq (101)
 arianbo (70)
 DoanhNhan (54)
 chicken (53)
 stormit (52)
 gentle_storm (47)

Share | 
 

 Tạo report trong java

Go down 
Tác giảThông điệp
thanhquanse
Thành viên mới
Thành viên mới
avatar

Tổng số bài gửi : 17
Join date : 05/04/2011

Bài gửiTiêu đề: Tạo report trong java   Mon Nov 07, 2011 8:52 pm

Chào các bạn, các bạn nòa biết tạo Report trong java chỉ mình với, hiện tại mình đang làm niên luận 2 bằng java
Cảm ơn các bạn rất nhiều
Về Đầu Trang Go down
Xem lý lịch thành viên
Mr.Pakapun
Mod
Mod
avatar

Tổng số bài gửi : 256
Join date : 25/02/2011
Age : 26
Đến từ : CTU

Bài gửiTiêu đề: Re: Tạo report trong java   Mon Nov 07, 2011 11:17 pm

Tổng quan về report
-------------------------------------------------------------

Report là gì ?
Report là một dạng báo cáo trong các ngôn ngữ lập trình, hỗ trợ tạo, xuất dữ liệu, biểu đồ ra dạng report có thể in và lưu lại với các dang tài liệu phổ biến như pdf, docs, txt… một cách trực tiếp
Report trong Java .

Có nhiểu chương trình hỗ trợ report trong java, xong phổ biến và dễ dùng nhất phải nói đến ireport của JasperReports

ireport là gì ?
ireport là một chương trình hỗ trợ người dung và người lập trình sử dụng thư viện của Jaspereport để thiết kế trong mô trường trực quan bằng GUI
Vì vậy việc tạo report trở nên để dàng hơn. Ireport hỗ trợ tất cả các chức năng quan trọng của một report thông thường nhưng trong thời gian ngắn. Thực chất thư viện của Jasperreport là dạng XMl sử dụng rất phức tạp, nhưng thông qua GUI chúng ta có thể tạo ra nó bằng các thành phần, thuộc tính và đồng thời chương trình sẽ sinh ra code dạng XML để thực thi

Một số đặc tính chính của ireport
Hỗ trợ 98% các thành phần cảu JasperReport
Mô trường thiết kế trực quan bằng WYSIWYG
Hỗ trợ Unicode và các kí tự không phải latin như tiếng trung quốc, tiếng hàn
Hỗ trợ JDBC
Hỗ trợ tất cả các loại của JRDataSource
Hỗ trợ report con
….

Hướng dẫn tạo report
-----------------------------------------

Những chương trình cần chuẩn bị
Tải chương trình tạo report : IReport 4.0.2 của JasperReports tải tại đây : mediafire.com ?s22k771ji35af75
Thư viên kết nối sql server 2005 để cấu hình trong Ireport tải tại đây : mediafire.com ?y7cu9jeu20u62sc


Cấu hình kết nối cho chương trình (ở đây mình hướng dẫn đối với sql server 2005, các CSDL khác làm tương tự)
Sau khi tải chương trình về, các bạn tiến hành cài đặt một cách bình thường, sau khi cái đặt xong, mở chương trình lên, cửa sổ chính của chương trình như sau :

Giờ cần cấu hình classpath cho chuơng trình, add gói jdbcsql.jar vào chương trình : các bạn chọn Tools/ Options/ Ireport/ Classpath/ Add Jar/ chọn file jar kết nối của sql server 2005 (tải về ở trên). chọn Ok


Tạo cấu hình kết nối chung cho chương trình. Click vào biểu tương hình CSDL ở cửa số chính của chương trình:


Chọn kiểu kết nối, ở đây chúng ta chọn Database JDBC connection, chọn Next


Cửa số cấu hình kết nối, chúng ta tiến hành cấu hình như sau :
Name : tên kết nối
JDBC Driver : MS SQLServer (2005) (com.microsoft.sqlserver.jdbc.SQLServerDriver)
JDBC URL : jdbc:sqlserver://localhost:1433;databaseName=
Username : tên đăng nhập trong sql server
Password : mật khẩu trong sql server
Sau đó các bạn chọn Test để kiểm tra kết nối, nếu thành công thì chọn Save
Bây giờ trên thanh công cụ của các bạn đã xuất hiện cấu hình bạn vừa tạo, sau này tạo các report chỉ cần chọn tên cấu hình là được


Tạo report bằng Ireport
Xong các bước cấu hình, chúng ta thử tạo một report mẫu bằng chương trình ireport nào!
Trong bước cấu hình kết nối trên các bạn đã xác định được CSDL của mình, giờ bạn tạo một bảng trong CSDL đó và thực hiện theo các bước sau
Ở đây mình tạo ra bảng DANHSACHSINHVIEN với cấu trúc sau


Và thêm CSDL mẫu sau :

Chọn File/ New
Chọn mẫu theme tương ứng, nếu các bạn chưa quên thì nên chọn các mẫu thiết kết câu trúc sẳn không nên chọn các mẫu blank

Ở đây mình chọn mẫu Cherry và chọn tiếp tục --> Launch report wizard


Đặt tên và chọn vị trí cần lưu --> Next


Chọn cấu hình CSDL đã tạo ở trên, và gõ câu lêng truy vấn SQL vào --> Next


Chọn những trường cần đưa vào report --> Next


Nếu muốn group lại theo trường nào đó thì chọn group ở cửa sổ trên --> Next


Chọn finish để qua cửa sổ thiết kế của ireport


Bạn sẽ nhận được cửa sổ thiết kế ở trên, chúng ta có thể thay đổi nội dung của các text một các bình thường
Giờ chỉnh thuộc tính của report này là dành cho java bằng cách chọn vào toàn document chon thuôc tính Language : Java


Xong giờ chúng ta có thể chọn qua thẻ Preview để xem demo nào


Ở cửa số preview các bạn có thể save lại ở bất cứ định dạng nào từ pdf , html, đến word...
Giờ chọn File/ Save as và lưu file .jrxml vào thư mục src của project java của bạn, để chúng ta thực hiện gọi report trong chương trình java sẽ được giới thiệu ở dưới. vậy là đã tạo được file report !

Gọi ireport trong ứng dụng Java Desktop
Tạo ứng dụng Java thông thường, gọi report bằng đoạn code sau :
Code:
try {
            String reportName = "<duong dan file jaspaer vua tao, phai de trong thu muc SRC cua project>.jasper";
            HashMap map = new HashMap();
            InputStream is = this.getClass().getClassLoader().getResourceAsStream(reportName);
            JasperPrint jasperPrint = JasperFillManager.fillReport(is, map, Connect.Con());
            //    JasperExportManager.exportReportToHtmlFile(jasperPrint, "huy.html");

            JasperViewer jv = new JasperViewer(jasperPrint, false);
            jv.setVisible(true);
        } catch (Exception ex) {
            System.out.println(ex.getMessage());
        } 

Với đoạn code trên ta sẽ được kết quả y chang khi xem preview trong chương trình Ireport.

Lưu ý
Connect.Con() : là hàm kết nối CSDL của bạn, đến nối đúng với tham khảo tạo kết nối trong chuong trình Ireport, mình có hàm demo sau:

Code:
 public static Connection Con() {
        // can add Library: sqljdbc.jar
        String url = "jdbc:sqlserver://localhost:1433;database=<dataname>";
        String username = "sa";
        String password = "sa";
        Connection conn = null;
        try{
            Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
            conn = java.sql.DriverManager.getConnection(url,username,password);
        //  if(conn!=null) System.out.println("Connection Successful!");
        }catch(Exception e){
            JOptionPane.showMessageDialog(null, "Can not connect to database !","Database Eror",JOptionPane.ERROR_MESSAGE);
        }
        return conn;
    } 


Ngoài ra chúng ta cấn add nhiều gối lib thiếu vào, ở đây mình đã tập hợp, các bạn tải về và tất cả lib vào là được
Thư viện dành cho việc triệu gọi report trong Java tải tại đây: mediafire.com ?usf4ww51lhdi69p


Cám ơn: tranhuyvc, nguồn congdongjava.com

_____________________


Về Đầu Trang Go down
Xem lý lịch thành viên
ddtan90
Admin
Admin
avatar

Tổng số bài gửi : 178
Join date : 30/12/2010
Age : 27
Đến từ : SE 3 - K34

Bài gửiTiêu đề: Re: Tạo report trong java   Tue Nov 08, 2011 10:47 am

Cám ơn bài viết hướng dẫn rất chi tiết của bạn Pakapun!

_____________________
Nothing is impossible!
Về Đầu Trang Go down
Xem lý lịch thành viên
thanhquanse
Thành viên mới
Thành viên mới
avatar

Tổng số bài gửi : 17
Join date : 05/04/2011

Bài gửiTiêu đề: Re: Tạo report trong java   Tue Nov 08, 2011 4:04 pm

Bạn có tài liệu kêt nối Oracle không? Kêt nối Oracle mình đang bị lỗi ở bước kêt nối
Humhum...h...u..m....
Về Đầu Trang Go down
Xem lý lịch thành viên
Mr.Pakapun
Mod
Mod
avatar

Tổng số bài gửi : 256
Join date : 25/02/2011
Age : 26
Đến từ : CTU

Bài gửiTiêu đề: Re: Tạo report trong java   Tue Nov 08, 2011 5:52 pm


_____________________


Về Đầu Trang Go down
Xem lý lịch thành viên
Sponsored content




Bài gửiTiêu đề: Re: Tạo report trong java   

Về Đầu Trang Go down
 
Tạo report trong java
Về Đầu Trang 
Trang 1 trong tổng số 1 trang
 Similar topics
-
» Giáo dục công dân trong thời đại mới
» Cách tính toán lượng dầu có trong két
» Cách đặt câu hỏi trong Tiếng Anh
» Các từ viết tắt sử dụng trong Hợp đồng sơ bộ - Fixture Note
» [Pandora Hearts] Trắc nghiệm - Bạn hợp với ai nhất trong Pandora Hearts?

Permissions in this forum:Bạn không có quyền trả lời bài viết
Câu lạc bộ Hỗ Trợ Học Tập :: TIN TỨC CNTT - THỦ THUẬT - SOFTWARE :: TIN TỨC-
Chuyển đến