package com.wanju.project001.zonghe.common.controller;
import java.awt.Label;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStream;
import java.io.PrintWriter;
import java.text.SimpleDateFormat;
import java.util.List;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.poi.hssf.usermodel.HSSFCell;
import org.apache.poi.hssf.usermodel.HSSFCellStyle;
import org.apache.poi.hssf.usermodel.HSSFRow;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.ss.usermodel.Workbook;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;
import com.wanju.project001.zonghe.test.CreateSimpleExcelToDisk;
@Controller
@RequestMapping("/extro")
public class ExtroFuncIndexExportImportController {
@RequestMapping("/init")
public ModelAndView index(HttpServletRequest request,
HttpServletResponse response) {
ModelAndView view = new ModelAndView("/extro/extro");
return view;
}
@RequestMapping("/import")
public ModelAndView importFile(HttpServletRequest request,HttpServletResponse response)
{
String path = request.getParameterMap().get("filepath")[0];
if (null !=path&&!"".equals(path)) {
}
return null;
}
@RequestMapping("/export")
public ModelAndView export(HttpServletRequest request,
HttpServletResponse response) {
ModelAndView view = new ModelAndView("/extro/test");
String tabname = request.getParameterMap().get("tabname")[0];
System.out.println("comon");
if ("user".equals(tabname)) {
// 第一步,创建一个webbook,对应一个Excel文件
HSSFWorkbook wb = new HSSFWorkbook();
// 第二步,在webbook中添加一个sheet,对应Excel文件中的sheet
HSSFSheet sheet = wb.createSheet("学生表一");
// 第三步,在sheet中添加表头第0行,注意老版本poi对Excel的行数列数有限制short
HSSFRow row = sheet.createRow((int) 0);
// 第四步,创建单元格,并设置值表头 设置表头居中
HSSFCellStyle style = wb.createCellStyle();
style.setAlignment(HSSFCellStyle.ALIGN_CENTER); // 创建一个居中格式
HSSFCell cell = row.createCell((short) 0);
cell.setCellValue("id");
cell.setCellStyle(style);
cell = row.createCell((short) 1);
cell.setCellValue("name");
cell.setCellStyle(style);
cell = row.createCell((short) 2);
cell.setCellValue("password");
cell.setCellStyle(style);
// 第五步,写入实体数据 实际应用中这些数据从数据库得到,
for (int i = 0; i < users.length; i++) {
row = sheet.createRow((int) i + 1);
row.createCell((short) 0).setCellValue(users[i].getId());
row.createCell((short) 1).setCellValue(users[i].getName());
row.createCell((short) 2).setCellValue(users[i].getPassword());
}
// 第六步,将文件存到指定位置
try
{
FileOutputStream fout = new FileOutputStream("D:/students.xls");
wb.write(fout);
fout.close();
}
catch (Exception e)
{
e.printStackTrace();
}
PrintWriter writer;
try {
writer = response.getWriter();
writer.println("数据已经导入完毕,导入了"+users.length+"条数据");
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
return null;
}
public static final User[] users = { new User(1, "33", "99"),
new User(1, "33", "99"), new User(1, "33", "99") };
}
class User {
private int id;
private String name;
private String password;
public User() {
// TODO Auto-generated constructor stub
}
public User(int id, String name, String password) {
this.id = id;
this.name = name;
this.password = password;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
}
import java.awt.Label;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStream;
import java.io.PrintWriter;
import java.text.SimpleDateFormat;
import java.util.List;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.poi.hssf.usermodel.HSSFCell;
import org.apache.poi.hssf.usermodel.HSSFCellStyle;
import org.apache.poi.hssf.usermodel.HSSFRow;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.ss.usermodel.Workbook;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;
import com.wanju.project001.zonghe.test.CreateSimpleExcelToDisk;
@Controller
@RequestMapping("/extro")
public class ExtroFuncIndexExportImportController {
@RequestMapping("/init")
public ModelAndView index(HttpServletRequest request,
HttpServletResponse response) {
ModelAndView view = new ModelAndView("/extro/extro");
return view;
}
@RequestMapping("/import")
public ModelAndView importFile(HttpServletRequest request,HttpServletResponse response)
{
String path = request.getParameterMap().get("filepath")[0];
if (null !=path&&!"".equals(path)) {
}
return null;
}
@RequestMapping("/export")
public ModelAndView export(HttpServletRequest request,
HttpServletResponse response) {
ModelAndView view = new ModelAndView("/extro/test");
String tabname = request.getParameterMap().get("tabname")[0];
System.out.println("comon");
if ("user".equals(tabname)) {
// 第一步,创建一个webbook,对应一个Excel文件
HSSFWorkbook wb = new HSSFWorkbook();
// 第二步,在webbook中添加一个sheet,对应Excel文件中的sheet
HSSFSheet sheet = wb.createSheet("学生表一");
// 第三步,在sheet中添加表头第0行,注意老版本poi对Excel的行数列数有限制short
HSSFRow row = sheet.createRow((int) 0);
// 第四步,创建单元格,并设置值表头 设置表头居中
HSSFCellStyle style = wb.createCellStyle();
style.setAlignment(HSSFCellStyle.ALIGN_CENTER); // 创建一个居中格式
HSSFCell cell = row.createCell((short) 0);
cell.setCellValue("id");
cell.setCellStyle(style);
cell = row.createCell((short) 1);
cell.setCellValue("name");
cell.setCellStyle(style);
cell = row.createCell((short) 2);
cell.setCellValue("password");
cell.setCellStyle(style);
// 第五步,写入实体数据 实际应用中这些数据从数据库得到,
for (int i = 0; i < users.length; i++) {
row = sheet.createRow((int) i + 1);
row.createCell((short) 0).setCellValue(users[i].getId());
row.createCell((short) 1).setCellValue(users[i].getName());
row.createCell((short) 2).setCellValue(users[i].getPassword());
}
// 第六步,将文件存到指定位置
try
{
FileOutputStream fout = new FileOutputStream("D:/students.xls");
wb.write(fout);
fout.close();
}
catch (Exception e)
{
e.printStackTrace();
}
PrintWriter writer;
try {
writer = response.getWriter();
writer.println("数据已经导入完毕,导入了"+users.length+"条数据");
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
return null;
}
public static final User[] users = { new User(1, "33", "99"),
new User(1, "33", "99"), new User(1, "33", "99") };
}
class User {
private int id;
private String name;
private String password;
public User() {
// TODO Auto-generated constructor stub
}
public User(int id, String name, String password) {
this.id = id;
this.name = name;
this.password = password;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
}