提交 4f2a3a08 authored 作者: zhangshuang's avatar zhangshuang

zs

上级 b7f07c37
package com.zjty.adaptationmaster.adaptor.controller;
import com.zjty.adaptationmaster.adaptor.service.FileUploadService;
import com.zjty.adaptationmaster.base.response.ServerResponse;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PutMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import javax.servlet.http.HttpServletRequest;
@RestController
@RequestMapping("/file")
public class FileUploadController {
@Autowired
private FileUploadService fileUploadService;
//文件上传
@PutMapping("/upload")
public ServerResponse fileUpload(HttpServletRequest httpServletRequest){
return fileUploadService.fileUpload(httpServletRequest);
}
}
package com.zjty.adaptationmaster.adaptor.entity;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
@AllArgsConstructor
@NoArgsConstructor
@Data
public class FileReturn {
private String name;//上传文件名称
private String path;//上传文件地址
}
package com.zjty.adaptationmaster.adaptor.service;
import com.zjty.adaptationmaster.base.response.ServerResponse;
import javax.servlet.http.HttpServletRequest;
public interface FileUploadService {
ServerResponse fileUpload(HttpServletRequest request);
}
...@@ -10,6 +10,7 @@ import com.zjty.adaptationmaster.adaptor.repository.DBRecordDao; ...@@ -10,6 +10,7 @@ import com.zjty.adaptationmaster.adaptor.repository.DBRecordDao;
import com.zjty.adaptationmaster.adaptor.service.DBMigrateService; import com.zjty.adaptationmaster.adaptor.service.DBMigrateService;
import com.zjty.adaptationmaster.base.response.ServerResponse; import com.zjty.adaptationmaster.base.response.ServerResponse;
import com.zjty.adaptationmaster.utils.Regular; import com.zjty.adaptationmaster.utils.Regular;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.BeanUtils; import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
...@@ -26,6 +27,7 @@ import java.util.Date; ...@@ -26,6 +27,7 @@ import java.util.Date;
import java.util.List; import java.util.List;
@Service @Service
@Slf4j
public class DBMigrateServiceImpl implements DBMigrateService { public class DBMigrateServiceImpl implements DBMigrateService {
@Autowired @Autowired
...@@ -50,7 +52,8 @@ public class DBMigrateServiceImpl implements DBMigrateService { ...@@ -50,7 +52,8 @@ public class DBMigrateServiceImpl implements DBMigrateService {
} }
} }
if(dbNameList.contains(databaseName)){ if(dbNameList.contains(databaseName)){
return ServerResponse.error("该数据库已存在,请重新填写"); log.info("该数据库已存在,请重新填写数据库名称");
return ServerResponse.error("该数据库已存在,请重新填写数据库名称");
} }
//转换后的.sql文件地址 //转换后的.sql文件地址
String path = ""; String path = "";
...@@ -69,6 +72,7 @@ public class DBMigrateServiceImpl implements DBMigrateService { ...@@ -69,6 +72,7 @@ public class DBMigrateServiceImpl implements DBMigrateService {
preparedStatement.execute(); preparedStatement.execute();
} catch (SQLException e) { } catch (SQLException e) {
e.printStackTrace(); e.printStackTrace();
log.info("创建数据库:" + databaseName + "出错");
return ServerResponse.error("创建数据库:" + databaseName + "出错"); return ServerResponse.error("创建数据库:" + databaseName + "出错");
}finally { }finally {
try { try {
...@@ -98,24 +102,18 @@ public class DBMigrateServiceImpl implements DBMigrateService { ...@@ -98,24 +102,18 @@ public class DBMigrateServiceImpl implements DBMigrateService {
try { try {
sql += s; sql += s;
if(s.contains(";")){ if(s.contains(";")){
/*if(Regular.lowerAndUpper(sql,"CREATE") && Regular.lowerAndUpper(sql,"TABLE")){
String endChar = sql.substring(sql.lastIndexOf("\"") + 1);
if(endChar.contains(",")){
String start = sql.substring(0,sql.lastIndexOf(","));
String end = sql.substring(sql.lastIndexOf(",") + 1);
sql = start + end;
}
}*/
preparedStatement1 = connection1.prepareStatement(sql); preparedStatement1 = connection1.prepareStatement(sql);
preparedStatement1.execute(); preparedStatement1.execute();
sql = ""; sql = "";
} }
}catch (SQLException e) { }catch (SQLException e) {
log.info("sql执行出错语句:" + sql);
sql = ""; sql = "";
e.printStackTrace(); e.printStackTrace();
continue; continue;
} }
} }
log.info(databaseResponse.getSqlPath() + "sql执行完成");
} catch (Exception e) { } catch (Exception e) {
e.printStackTrace(); e.printStackTrace();
} finally { } finally {
......
package com.zjty.adaptationmaster.adaptor.service.Impl;
import com.zjty.adaptationmaster.adaptor.entity.FileReturn;
import com.zjty.adaptationmaster.adaptor.service.FileUploadService;
import com.zjty.adaptationmaster.base.response.ServerResponse;
import org.springframework.stereotype.Service;
import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.multipart.MultipartHttpServletRequest;
import javax.servlet.http.HttpServletRequest;
import java.io.*;
import java.util.ArrayList;
import java.util.List;
import java.util.UUID;
@Service
public class FileUploadServiceImpl implements FileUploadService {
/**
* 前台文件上传
* @param request
* @return
*/
@Override
public ServerResponse fileUpload(HttpServletRequest request) {
List<MultipartFile> multipartFiles = ((MultipartHttpServletRequest)request).getFiles("file");
List<FileReturn> fileReturns = new ArrayList<>();
for(MultipartFile multipartFile:multipartFiles){
InputStream is = null;
BufferedInputStream bis = null;
FileOutputStream fos = null;
BufferedOutputStream bos = null;
FileReturn fileReturn = new FileReturn();
String sourceName = multipartFile.getOriginalFilename();
String fileName = UUID.randomUUID().toString() + ".sql";
//不存在该目录,创建目录
File file = new File("/sqlFile/uploads");
if(!file.exists()){
file.mkdirs();
}
String savePath = file.getAbsolutePath() + "/" + fileName;
fileReturn.setName(sourceName);
fileReturn.setPath(savePath);
fileReturns.add(fileReturn);
File createFile = new File(savePath);
try {
is = multipartFile.getInputStream();
bis = new BufferedInputStream(is);
fos = new FileOutputStream(createFile);
bos = new BufferedOutputStream(fos);
int len = -1;
byte[] b = new byte[1024];
while ((len = bis.read(b)) != -1){
bos.write(b,0,len);
}
} catch (IOException e) {
e.printStackTrace();
}finally {
try {
bis.close();
is.close();
bos.close();
fos.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
return ServerResponse.success(fileReturns);
}
}
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论