2.27 导入导出数据

一、导出用户列表数据:

1、controller导出方法:

/**
 * 导出用户数据
 */
public void export(){
	String sql="select user_code as '0',user_name as '1',sex as '2',tel as '3' from sys_user";
	String[] title={"用户名","姓名","性别","电话"};
	exportExcel(title, sql);
	renderNull();
}

重点:sql里面的字段必须是别名0,1,2,3....,因为这个别名是对应title数组的下标,字段别名要和title的导出列一一对应

2、然后在浏览器直接调用导出方法接口即可


二、导入数据

1、业务controller方法,导入sql字段,主键是默认第一个,并且自动赋值uuid,其他字段值从导入的模板取,按照列一一对应取值,如下sql为例:

insert into sys_user (id,user_code,user_name,sex,tel) values (?,?,?,?,?)

/**
 * 导入数据
 */
public void importExcel(){
	UploadFile uf=getFile();
	String sql="insert into sys_user (id,user_code,user_name,sex,tel) values (?,?,?,?,?)";
	importExcel(uf, sql);
	renderNull();
}

2、sql对应的导入模板如下,除了id列不需要,其他列和字段顺序对应即可。

用户编号(user_code)用户名称(user_name)性别(sex)电话(tel)
test测试用户110086
test2测试用户2010086
test3测试用户3110086


3、下载导入模板文件 

导入功能,基本都需要提供下载模板文件,所以/portal/temp/{url}这个接口就派上用场了,接口详见com.qinhailin.portal.PortalController

 /portal/temp/{url}方法使用一个 baseDownloadPath 参数为基础路径去寻找文件。baseDownloadPath 参数默认值指向目录:src/main/webapp/temp/download

你的模板文件只要放在这个目录下即可,可以创建多级目录,假如你的模板文件路径为:

src/main/webapp/temp/download/user/导入用户模板.xls


那么{url}=/user/导入用户模板.xls,所以完整的路由为:

/portal/temp/user/导入用户模板.xls


顶部 客服 微信二维码 底部
>扫描二维码关注最代码为好友
扫描二维码加琴海森林为好友