1. Добавить информацию о журнале экспорта в проект
2. Импорт файла JAR, который управляет файлами Excel, таким как POI-*. JAR в проекте
Excel Export должен передавать параметры контроллеру в соответствии с условиями переднего плана, запросить базу данных в соответствии с параметрами, запросить сбор списков и генерировать из эксплуатационных данных для загрузки сбора списков.
Код фрагмент:
Contorller.java
/*** Информация об экспорте* @param model*/@requestmapping ("exportcustomer.do") @systemcontrollerlog (descortcaze form exportexcle ") public void exportcustomer (модель модели) {// todo, если вам нужно добавить условия //model.addattribuidlebule) {// yado, если вам нужно добавить Condity //model.addattribute); // Получить данные, чтобы быть экспортируемыми списком списка <cmcustomer> cuslist = customerservice.exportcustomer (model); // Использование метода для генерации рабочей книги HSSFWorkBook в стиле из эксплуатации = CustomerService.CreateExcel (Cuslist, запрос); SimpleDateFormat format = new SimpleDateFormat ("yyyyMmddhhmmss"); // Определите формат имени файла Try {// определить измеренное имя iso-8859-1, чтобы предотвратить исчезновение строки msg = new String («Информация клиента_» + format.format (new Date ()) + ".xls"). Getbytes (), "iso-8859-1"); // Использование времени экспорта в качестве имени файла. response.addheader ("Содержимое-распада", "Приложение; filename =" + msg); Workbook.write (response.getOutputStream ()); } catch (ioException e) {logger.error (e); }} 2. Метод CreateExcel в обслуживании
public hssfworkbook createexcel (list <cmcustomer> cuslist, httpservlectrequest) {// Создать веб -книгу, соответствующую файлу Excel HSSFWorkBook Workbook = New HSSFWorkBook (); // Добавить лист в веб -книгу, соответствующий листу в файле Excel HSSFSHEET SHILE = Workbook.createSheet («Информационная таблица клиентов»); // установить лист ширины столбца. SetColumnWidth (0, 25 * 100); Sheet.SetColumnWidth (1, 35 * 100); Sheet.SetColumnWidth (2, 35 * 100); Sheet.SetColumnWidth (3, 40 * 100); Sheet.SetColumnWidth (4, 45 * 100); Sheet.SetColumnWidth (5, 45 * 100); Sheet.SetColumnWidth (6, 50 * 100); Sheet.SetColumnWidth (7, 80 * 100); Sheet.SetColumnWidth (8, 35 * 100); Sheet.SetColumnWidth (9, 40 * 100); // Добавить строку 0 заголовка в листе hssfrow row = sheet.createrow (0); // Создать ячейку, установить заголовок таблицы, установите заголовок таблицы в центр hssfcellstyle style = Workbook.createCellStyle (); // Создать центрированный стиль формата.setalenment (hssfcellstyle.align_center); // с пограничным стилем.setborderbottom (hssfcellstyle.border_thin); // генерировать шрифт hssffont font = workbook.createfont (); // шрифт сгущение font.setBoldEweouse (hssffont.boldweight_bold); // размер шрифта font.setfontheithinpoints ((короткий) 12); // Применить шрифт к текущему стилю стиля.setFont (Font); // Установить весь столбец в центр или слева отдельно hssfcellstyle style1 = Workbook.createCellStyle (); style1.setAlenment (hssfcellstyle.align_center); HssfcellStyle style2 = Workbook.createCellStyle (); style2.setalenment (hssfcellstyle.align_left); HssfcellStyle style3 = рабочая книга. CreateCellStyle (); Style3.setAlignment (hssfcellstyle.align_left); HSSFFONT HSSFFONT = Workbook.CreateFont (); hssffont.setColor (hssffont.color_red); hssffont.setBoldEwele (hssffont.boldweight_bold); Style3.setFont (HSSFFONT); Hssfcellstyle style4 = рабочая книга. CreateCellStyle (); style4.setalenment (hssfcellstyle.align_left); HSSFFONT HSSFFONT1 = Workbook.CreateFont (); hssffont1.setcolor (hssffont.color_normal); hssffont1.setBoldEwele (HSSFFONT.BOLDWEYSE_BOLD); Style4.setFont (HSSFFONT1); Hssfcell cell = row.createcell (0); cell.SetCellValue («Серийный номер»); cell.setcellstyle (стиль); cell = row.createCell (1); cell.SetCellValue («Имя клиента»); cell.setcellstyle (стиль); cell = row.createCell (2); cell.SetCellValue («Пол»); cell.setcellstyle (стиль); cell = row.createCell (3); cell.SetCellValue ("Статус"); cell.setcellstyle (стиль); cell = row.createCell (4); cell.SetCellValue ("Телефон"); cell.setcellstyle (стиль); cell = row.createCell (5); cell.setCellValue ("почтовый ящик"); cell.setcellstyle (стиль); cell = row.createCell (6); cell.SetCellValue («адрес»); cell.setcellstyle (стиль); for (int i = 0; i <cuslist.size (); i ++) {string logtypenis = ""; row = sheet.createrow (i + 1); Cmcustomer cmcustomer = cuslist.get (i); // Создать ячейку и установить значение // Черное столбец находится в левом hssfcell c1 = row.createcell (0); C1.SetCellStyle (Style2); c1.setCellValue (i); Hssfcell c2 = row.createcell (1); C2.setCellStyle (Style1); c2.setCellValue (cmcustomer.getCustomername ()); // Имя клиента String Sexstr = cmcustomer.getSex (); // Пол 0: Женщина, 1: мужская строка sex = ""; if ("1" .equals (sexstr)) {sex = "мужчина"; } if ("0" .equals (sexstr)) {sex = "ken emafl"; } Hssfcell C3 = row.createCell (2); // Пол C3.SetCellStyle (Style1); C3.SetCellValue (пол); String statusStr = cmcustomer.getStatus (); // Статус клиента 1. On-The-The-The-Job, 2. Оставьте String status = ""; "; if ("1" .equals (statusstr)) {status = "on-the-hob"; } if ("2" .equals (statusstr)) {status = "уйти в отставку"; } Hssfcell C4 = row.createCell (3); // Состояние C4.SetCellStyle (style1); C4.SetCellValue (статус); String customerId = cmCustomer.getCustomerId (); // Список идентификации клиента <CMPHONE> PHONELIST = CMPHONEMAPPER.SELECTBYCUSTOMERID (CustomerID); String phone = ""; if (phonelist! = null && phonelist.size ()> 0) {for (int j = 0; j <phonelist.size (); j ++) {phone = phonelist.get (j) .getphone (); }} Hssfcell c5 = row.createcell (4); // telect c5.setcellstyle (style1); C5.SetCellValue (телефон); Список <cmemail> emaillist = cmemailmapper.selectall (customerid); String email = ""; if (emaillist! = null && emaillist.size ()> 0) {for (int j = 0; j <emaillist.size (); j ++) {email = emaillist.get (j) .getemail (); }} Hssfcell c6 = row.createcell (5); // emailbox c6.setcellstyle (style1); c6.setCellValue (электронная почта); Cmaddress cmaddress = new cmaddress (); cmaddress.setcustomerid (customerid); List <cmaddress> AddersSlist = cmaddressmapper.selectall (cmaddress); String Adderss = ""; if (AddersSlist! = null && addersslist.size ()> 0) {for (int j = 0; j <addersslist.size (); j ++) {Adderss = AddersSlist.get (j) .getAddress (); }} Hssfcell c7 = row.createcell (6); // адрес c7.setcellstyle (style1); C7.SetCellValue (Adderss); // Использование формата по умолчанию row.createCell (1) .SetCellValue (cmcustomer.getCustomername ()); row.createCell (2) .setCellValue (пол); row.createCell (3) .setCellValue (статус); row.createCell (4) .setCellValue (телефон); row.createCell (5) .setCellValue (электронная почта); row.createCell (6) .setCellValue (Adderss); } return Workbook; } 3. Пейдж JSP Call
// Информационная функция экспорта exporbtn () {$ .ajax ({type: "post", url: "<%= path%>/customer/exportcustomer.do", успех: function (data) {window.open ('<%= path%>/customer/exportcustomer.do');}}); }Выше всего содержание этой статьи. Я надеюсь, что это будет полезно для каждого обучения, и я надеюсь, что все будут поддерживать Wulin.com больше.