for loading printers you can use this part
javax.print.PrintService[] services = PrintServiceLookup.lookupPrintServices(null, null);
and for printing you can use this part
JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport, new HashMap(), dataSource);
PrinterJob job = PrinterJob.getPrinterJob();
job.setPrintService(selectedPrinter);
JRPrinterAWT.printPages(job, jasperPrint, 0, size, true);
there are a lot of way for printing in jasper for more info you can see jasper report samples