JSP:将网页信息导出到Excel中

1,首先是必须有正版的Excel,版本不要太低;Eclipse为Java EE,可以编辑动态网页;必须有Tomcat‘

2,导入POI组件的架包

3,编辑一个Servlet,用于传导信息

package Test;

import java.io.IOException;

import javax.servlet.ServletException;
import javax.servlet.ServletOutputStream;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.poi.hssf.usermodel.*;

public class Servlet173 extends HttpServlet {
	private static final long serialVersionUID = 1L;

	public Servlet173() {
		super();
	}
	protected void doPost(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {
		request.setCharacterEncoding("UTF-8");
		response.setContentType("application/vnd.ms-excel");
		response.addHeader("Content-Disposition", "attachment;filename=logininfo.xls");
		String name=request.getParameter("name");
		String pwd=request.getParameter("pwd");
		ServletOutputStream out=response.getOutputStream();
		HSSFWorkbook wb=new HSSFWorkbook();
		HSSFSheet sheet=wb.createSheet("用户注册信息");
		sheet.setColumnWidth(4,5000);
		HSSFRow titleRow=sheet.createRow(0);            //第一行
		HSSFCell titleCell1=titleRow.createCell(0);     //第一个单元格
		titleCell1.setCellValue("账号");                    
		HSSFCell titleCell2=titleRow.createCell(1);     //第二个单元格
		titleCell2.setCellValue("密码");
		HSSFRow valueRow=sheet.createRow(1);            //第二行
		HSSFCell nameCell=valueRow.createCell(0);       //第一个单元格
		nameCell.setCellValue(name);
		HSSFCell nameCel2=valueRow.createCell(1);        //第二个单元格
		nameCel2.setCellValue(pwd);
		HSSFCellStyle cellStyle=wb.createCellStyle();    //输入到Excel
		wb.write(out);
		out.flush();
		out.close();
	}

}

4,在web.xml中添加Servlet

  <?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd" id="WebApp_ID" version="4.0">
  <display-name>Servlet</display-name>
  <welcome-file-list>
    <welcome-file>index.html</welcome-file>
    <welcome-file>index.htm</welcome-file>
    <welcome-file>index.jsp</welcome-file>
    <welcome-file>default.html</welcome-file>
    <welcome-file>default.htm</welcome-file>
    <welcome-file>default.jsp</welcome-file>
  </welcome-file-list>
 <servlet>
    <servlet-name>ExcelServlet</servlet-name>
    <servlet-class>Test.Servlet173</servlet-class>
  </servlet>
  <servlet-mapping>
    <servlet-name>ExcelServlet</servlet-name>
    <url-pattern>/export</url-pattern>
  </servlet-mapping>
</web-app>

5,编写jsp页面,用于输入信息

<%@ page language="java" contentType="text/html; charset=GB18030"
    pageEncoding="GB18030"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="GB18030">
<title>Insert title here</title>
</head>
<body>
	<form action="export" method="post">
		<table align="center">
			<tr>
				<td>用户名</td>
				<td><input type="text" name="name"></td>
			</tr>
			<tr>
				<td>密码</td>
				<td><input type="password" name="pwd"></td>
			</tr>
			<tr>
				<td><input type="submit" value="导出到Excel"></td>
			</tr>
		</table>
	</form>
</body>
</html>

猜你喜欢

转载自blog.csdn.net/qq_42192693/article/details/82081019