//前端传送JSON数据
import java.net.URLDecoder;
try {
if (jsonString != null) {
jsonString = URLDecoder.decode(jsonString, "utf-8");
}
} catch (Exception e) {
e.printStackTrace();
return "表属性格式错误";
}
//时间格式化
Date date = new Date();
SimpleDateFormat dateFormat= new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
System.out.println(dateFormat.format(date));
//数据库中两个''表示'
//pg数据库对json数据操作
[{"alias":"项目名称","value":"123465","condit":"=","type":"string"},{"value":"铜仁市","alias":"行政区名称","condit":"like","type":"string"}];
SELECT id from ( SELECT id, json_array_elements(fields_info::json) ss from rm_results_reporting) a WHERE (ss::json ->> 'alias' = '项目名称' and ss::json->>'value' like '%12346%') or (ss::json->>'alias' = '行政区名称' and ss::json->>'value' like '%铜仁市%') GROUP BY id HAVING count(id) = 2 ORDER BY id;
SELECT id, a.ss from ( SELECT id, json_array_elements(fields_info::json) ss from rm_results_reporting) a WHERE a.ss::jsonb @> '{"alias":"项目名称","value":"123465"}' ;
//fastJson中存在时间类型的数据转换为JSONString时类型转换错误
SerializeConfig serializeConfig = new SerializeConfig();
serializeConfig.put(Date.class, new SimpleDateFormatSerializer("yyyy-MM-dd HH:mm:ss"));
serializeConfig.put(Timestamp.class, new SimpleDateFormatSerializer("yyyy-MM-dd HH:mm:ss"));
JSONObject.toJSONString(JSONObject, serializeConfig)
//解决springboot无法自动注入时,使用SpringUtil工具类时报空指针异常,或者redis注入报空
https://blog.csdn.net/qq_53524948/article/details/128233537?spm=1001.2101.3001.6650.3&utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7EYuanLiJiHua%7EPosition-3-128233537-blog-109820670.pc_relevant_3mothn_strategy_and_data_recovery&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7EYuanLiJiHua%7EPosition-3-128233537-blog-109820670.pc_relevant_3mothn_strategy_and_data_recovery&utm_relevant_index=6
//给java的Date类型设置格式
@JsonFormat(pattern = "yyyy-MM-dd HH:mm", timezone = "GMT+8")
private Date createTime;
//MyBatis-Plus
public interface AlgorithmModuleMapper extends BaseMapper<ResultsReporting> {}
//Springcloud中Feign传递参数
@PostMapping(value = "/admin/queryAll", consumes = MediaType.MULTIPART_FORM_DATA_VALUE)
String queryAll(@RequestParam("page") Integer page,
@RequestParam("limit") Integer limit,
@RequestPart("file") MultipartFile file,
@SpringQueryMap AdminQuery admin);
//文件下载
//服务调用方
import feign.Response;
import javax.servlet.http.HttpServletResponse;
import java.io.InputStream;
import java.io.OutputStream;
import org.springframework.http.HttpHeaders;
import org.apache.commons.io.IOUtils;
@PostMapping("downloadDataResources")
public R downloadDataResources(HttpServletResponse response, String versionCode) {
try {
Response feignResponse = dataManagementFeign.downloadDataResources(versionCode);
Response.Body body = feignResponse.body();
try (InputStream inputStream = body.asInputStream(); OutputStream outputStream = response.getOutputStream()) {
response.setHeader(HttpHeaders.CONTENT_DISPOSITION, feignResponse.headers().get(HttpHeaders.CONTENT_DISPOSITION).stream().findFirst().get());
response.setContentType(feignResponse.headers().get(HttpHeaders.CONTENT_TYPE).stream().findFirst().get());
IOUtils.copy(inputStream, outputStream);
}
return null;
} catch (Exception e) {
e.printStackTrace();
return R.failed("下载文件失败:" + e.toString());
}
}
import feign.Response;
@PostMapping("/dataMge/downloadDataResources")
Response downloadDataResources(@RequestParam("versionCode") String versionCode);
//服务提供方
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@PostMapping("downloadDataResources")
public R downloadDataResources(HttpServletRequest request, HttpServletResponse response, String versionCode) {
return dataMgeService.downloadDataResources(request, response, versionCode);
}
//字段名为关键字
import com.baomidou.mybatisplus.annotation.TableField;
@TableField("\"order\"")
private Integer order;
//获取token
HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest();
String token = request.getHeader("Authorization");
常用代码整理
于 2023-06-07 10:12:40 首次发布