首页>代码>Java调用SqlLoader将大文本数据导入数据库>/SqlLoader/src/main/java/com/sun/sqlloader/controller/SqlLoaderController.java
package com.sun.sqlloader.controller;

import java.io.IOException;

import javax.servlet.ServletException;

import org.apache.log4j.Logger;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.servlet.ModelAndView;

import com.sun.sqlloader.api.ISqlLoader;

/**
 * SqlLoader前端控制器
 * @ClassName: SqlLoaderController  
 * @author sunt  
 * @date 2017年11月15日 
 * @version V1.0
 */
@RestController
@RequestMapping(value = "/sqlLoader")
public class SqlLoaderController {
	
	private Logger logger = Logger.getLogger(SqlLoaderController.class);
	
	@Autowired
	private ISqlLoader sqlLoader;
	
	@Value("${user}")
	private String user;
	
	@Value("${pwd}")
	private String pwd;
	
	@Value("${database}")
	private String database;
	
	@Value("${logfileName}")
	private String logfileName;
	
	@Value("${ctlfileName}")
	private String ctlfileName;
	
	@Value("${fileRoute}")
	private String fileRoute;
	
	/**
	 * 跳转到导入页面
	 * @Title: toImpot 
	 * @author sunt  
	 * @date 2017年11月15日
	 * @return ModelAndView
	 */
	@RequestMapping(value = "/toImpot")
	public ModelAndView toImpot() {
		ModelAndView modelAndView = new ModelAndView();
		modelAndView.setViewName("import");
		return modelAndView;
	}
	
	@RequestMapping(value = "/importData")
	public String importData(@RequestParam(value="file")MultipartFile file,@RequestParam(value = "tableName")String tableName,
			@RequestParam(value = "fieldName")String fieldName) throws IOException, ServletException {
		String fileName = file.getOriginalFilename();//文件名
		
        try {
        	logger.info("执行生成控制文件...");
        	sqlLoader.ctlFileWriter(fileRoute, fileName, tableName, fieldName, ctlfileName);
        	
        	logger.info("执行dos命令...");
        	sqlLoader.Executive(user, pwd, database, fileRoute, ctlfileName, logfileName);
        	
        	return "导入成功!";
		} catch (Exception e) {
			return "导入失败!";
		}
	}

}
最近下载更多
wangdengzhe  LV7 2022年12月14日
zw050256  LV7 2022年11月10日
912727849  LV3 2021年3月19日
newhaijun  LV15 2020年12月29日
xingQAQ  LV7 2020年12月10日
adongliu666  LV4 2020年11月20日
玄狼之印  LV1 2020年8月18日
teslamask  LV1 2020年7月11日
yxx_yxx  LV11 2020年5月21日
sungaga  LV15 2020年3月11日
最近浏览更多
胡明杨 2023年5月4日
暂无贡献等级
夜起星河  LV8 2023年3月9日
wangdengzhe  LV7 2022年12月14日
zw050256  LV7 2022年11月10日
微信网友_6040315240812544  LV8 2022年11月3日
wangjie49  LV7 2022年10月18日
Zeorwyc  LV8 2022年4月21日
3199625134  LV10 2022年4月15日
555151  LV3 2022年3月24日
329512801  LV28 2022年1月18日
顶部 客服 微信二维码 底部
>扫描二维码关注最代码为好友扫描二维码关注最代码为好友