9 Commits
r15 ... r21

Author SHA1 Message Date
admin
593620998f 更新工具包 2023-02-11 10:46:24 +08:00
admin
dbb6bb1f17 更新工具包 2023-02-11 10:45:50 +08:00
admin
0eac23a64a db 2022-11-17 14:07:10 +08:00
admin
327784354c db 2022-11-17 10:44:43 +08:00
admin
1bec66a97c db 2022-11-17 10:44:33 +08:00
admin
273332c720 db 2022-11-11 12:19:06 +08:00
admin
5b2586112a db 2022-11-11 12:18:54 +08:00
admin
c843272f03 add 2022-11-09 16:11:16 +08:00
admin
9f6314c9e9 更新 2022-11-09 15:48:47 +08:00
4 changed files with 174 additions and 90 deletions

View File

@@ -16,8 +16,9 @@ import java.util.Map;
public class DBUtil { public class DBUtil {
// 四大金刚 // 四大金刚
String dname = ReadTxt.getSetting(null, "setting.ini", "MySqlName","test");
String driver = "com.mysql.jdbc.Driver";// 驱动名称 String driver = "com.mysql.jdbc.Driver";// 驱动名称
String url = "jdbc:mysql://"+ReadTxt.getSetting(null, "setting.ini", "MySqlIP","127.0.0.1")+":"+ReadTxt.getSetting(null, "setting.ini", "MySqlPort","3306")+"/"+ReadTxt.getSetting(null, "setting.ini", "MySqlName","test")+"?useUnicode=true&characterEncoding=UTF-8&useOldAliasMetadataBehavior=true&autoReconnect=true&useSSL=false";// 连接 String url = "jdbc:mysql://"+ReadTxt.getSetting(null, "setting.ini", "MySqlIP","127.0.0.1")+":"+ReadTxt.getSetting(null, "setting.ini", "MySqlPort","3306")+"/"+dname+"?useUnicode=false&characterEncoding=UTF-8&useOldAliasMetadataBehavior=true&autoReconnect=true&useSSL=false";// 连接
String username = ReadTxt.getSetting(null, "setting.ini", "MySqlUserName","root");// 用户名 String username = ReadTxt.getSetting(null, "setting.ini", "MySqlUserName","root");// 用户名
String password = ReadTxt.getSetting(null, "setting.ini", "MySqlPassWord","cheng355217");// 密码 String password = ReadTxt.getSetting(null, "setting.ini", "MySqlPassWord","cheng355217");// 密码
@@ -25,6 +26,15 @@ public class DBUtil {
Connection con = null;// 连接对象 Connection con = null;// 连接对象
PreparedStatement pstmt = null;// 语句对象 PreparedStatement pstmt = null;// 语句对象
ResultSet rs = null;// 结果集对象 ResultSet rs = null;// 结果集对象
public DBUtil(String dbname){
if(dbname!=null&&dbname.trim().length()>0)
this.dname = dbname;
}
public DBUtil(){
}
/** /**
* 获得连接对象 * 获得连接对象
@@ -74,6 +84,7 @@ public class DBUtil {
* @return 影响行数 * @return 影响行数
*/ */
public int execUpdate(String sql, Object[] params) { public int execUpdate(String sql, Object[] params) {
try { try {
this.getConnection();// 获得连接对象 this.getConnection();// 获得连接对象
this.pstmt = this.con.prepareStatement(sql);// 获得预设语句对象 this.pstmt = this.con.prepareStatement(sql);// 获得预设语句对象
@@ -193,31 +204,6 @@ public class DBUtil {
return null; return null;
} }
/**
* 搜索统计
*
* @param search
* @return
*/
public boolean searchCount(String search) {
String resid = "0";
List<Map<String, Object>> res = execQuery(
"select id from byx_count where searchstr =?",
new String[] { search });
if (res != null && res.size() > 0) {
resid = res.get(0).get("id").toString();
int i = execUpdate(
"update byx_count set countsum = countsum+1 where id = "
+ resid, null);
return i > 0 ? true : false;
} else {
int i1 = execUpdate(
"insert into byx_count(countsum,searchstr) values(1,?)",
new String[] { search });
return i1 > 0 ? true : false;
}
}
/** /**
* 获取对象的属性,返回键值对 * 获取对象的属性,返回键值对
* @param obj * @param obj

View File

@@ -13,6 +13,7 @@ import java.io.InputStream;
import java.io.OutputStream; import java.io.OutputStream;
import java.io.OutputStreamWriter; import java.io.OutputStreamWriter;
import java.io.PrintWriter; import java.io.PrintWriter;
import java.io.UnsupportedEncodingException;
import java.net.URL; import java.net.URL;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Date; import java.util.Date;
@@ -279,9 +280,12 @@ public static BufferedImage cutImgBuf(InputStream img,Positions p,int x,int y,in
* @return 图片路径(相对) * @return 图片路径(相对)
*/ */
public static String putImg(ServletContext servletContext,MultipartFile file,String path,String towhere) { public static String putImg(ServletContext servletContext,MultipartFile file,String path,String towhere) {
int maxSize = 1024*1024*2; //上传最大为2MB long maxSize = Utils.getNum(ReadTxt.getSetting(null, "setting.ini", "imgsize", "10")) * 1048576; //上传最大 MB
if (file==null||file.getSize()>maxSize) { if (file==null) {
return "图片最大上传2MB"; return "";
}
if (file.getSize()>maxSize) {
return "文件最大上传"+(maxSize/1048576)+"MB";
} }
@@ -297,7 +301,6 @@ public static String putImg(ServletContext servletContext,MultipartFile file,Str
path = "D:/"+(lpath.replaceAll("D:/", "").replaceAll("D://", "").replaceAll("D:", "").replaceAll("c:", ""));//图片存储在C盘下的路径 path = "D:/"+(lpath.replaceAll("D:/", "").replaceAll("D://", "").replaceAll("D:", "").replaceAll("c:", ""));//图片存储在C盘下的路径
else{ else{
//修改:原本存储在项目根路径下的,为了防止删除项目文件丢失 //修改:原本存储在项目根路径下的,为了防止删除项目文件丢失
//path = servletContext.getRealPath(lpath);//图片存储在项目根目录下的路径
//现修改为:存储到固定文件夹(子路径保留)读取的时候通过url获取base64格式图片 //现修改为:存储到固定文件夹(子路径保留)读取的时候通过url获取base64格式图片
String basePath = ReadTxt.getSetting(null, "setting.ini", "FilePath", "D://scbox_settings/webFile"); String basePath = ReadTxt.getSetting(null, "setting.ini", "FilePath", "D://scbox_settings/webFile");
if("/".equals(basePath.substring(basePath.length()-1, basePath.length()))) basePath=basePath.substring(0, basePath.length()-1); if("/".equals(basePath.substring(basePath.length()-1, basePath.length()))) basePath=basePath.substring(0, basePath.length()-1);
@@ -372,10 +375,14 @@ public static String putImg(ServletContext servletContext,MultipartFile file,Str
* @return 图片路径(相对) * @return 图片路径(相对)
*/ */
public static String putImgAsName(ServletContext servletContext,MultipartFile file,String path,String filename,String towhere) { public static String putImgAsName(ServletContext servletContext,MultipartFile file,String path,String filename,String towhere) {
int maxSize = 1024*1024*2; //上传最大为2MB long maxSize = Utils.getNum(ReadTxt.getSetting(null, "setting.ini", "imgsize", "10")) * 1048576; //上传最大 MB
if (file==null||file.getSize()>maxSize) { if (file==null) {
return "图片最大上传2MB"; return "";
} }
if (file.getSize()>maxSize) {
return "文件最大上传"+(maxSize/1048576)+"MB";
}
File targetFile=null; File targetFile=null;
String rid=""; String rid="";
String realurl="";//返回存储路径 String realurl="";//返回存储路径
@@ -387,7 +394,6 @@ public static String putImgAsName(ServletContext servletContext,MultipartFile fi
path = "D:/"+(lpath.replaceAll("D:/", "").replaceAll("D://", "").replaceAll("D:", "").replaceAll("c:", ""));//图片存储在C盘下的路径 path = "D:/"+(lpath.replaceAll("D:/", "").replaceAll("D://", "").replaceAll("D:", "").replaceAll("c:", ""));//图片存储在C盘下的路径
else{ else{
//修改:原本存储在项目根路径下的,为了防止删除项目文件丢失 //修改:原本存储在项目根路径下的,为了防止删除项目文件丢失
//path = servletContext.getRealPath(lpath);//图片存储在项目根目录下的路径
//现修改为:存储到固定文件夹(子路径保留)读取的时候通过url获取base64格式图片 //现修改为:存储到固定文件夹(子路径保留)读取的时候通过url获取base64格式图片
String basePath = ReadTxt.getSetting(null, "setting.ini", "FilePath", "D://scbox_settings/webFile"); String basePath = ReadTxt.getSetting(null, "setting.ini", "FilePath", "D://scbox_settings/webFile");
if("/".equals(basePath.substring(basePath.length()-1, basePath.length()))) basePath=basePath.substring(0, basePath.length()-1); if("/".equals(basePath.substring(basePath.length()-1, basePath.length()))) basePath=basePath.substring(0, basePath.length()-1);
@@ -466,13 +472,14 @@ public static String putImgAsName(ServletContext servletContext,MultipartFile fi
* @return 图片路径(相对) * @return 图片路径(相对)
*/ */
public static String putVideo(ServletContext servletContext,MultipartFile file,String path,String towhere) { public static String putVideo(ServletContext servletContext,MultipartFile file,String path,String towhere) {
int maxSize = 1024*1024*10; //上传最大为2MB long maxSize = Utils.getNum(ReadTxt.getSetting(null, "setting.ini", "videosize", "50")) * 1048576; //上传最大 MB
if (file==null) { if (file==null) {
return ""; return "";
} }
if (file.getSize()>maxSize) { if (file.getSize()>maxSize) {
return "视频最大上传10MB"; return "文件最大上传"+(maxSize/1048576)+"MB";
} }
File targetFile=null; File targetFile=null;
String rid=""; String rid="";
String realurl="";//返回存储路径 String realurl="";//返回存储路径
@@ -485,7 +492,6 @@ public static String putVideo(ServletContext servletContext,MultipartFile file,S
else{ else{
//修改:原本存储在项目根路径下的,为了防止删除项目文件丢失 //修改:原本存储在项目根路径下的,为了防止删除项目文件丢失
//path = servletContext.getRealPath(lpath);//图片存储在项目根目录下的路径
//现修改为:存储到固定文件夹(子路径保留)读取的时候通过url获取base64格式图片 //现修改为:存储到固定文件夹(子路径保留)读取的时候通过url获取base64格式图片
String basePath = ReadTxt.getSetting(null, "setting.ini", "FilePath", "D://scbox_settings/webFile"); String basePath = ReadTxt.getSetting(null, "setting.ini", "FilePath", "D://scbox_settings/webFile");
if("/".equals(basePath.substring(basePath.length()-1, basePath.length()))) basePath=basePath.substring(0, basePath.length()-1); if("/".equals(basePath.substring(basePath.length()-1, basePath.length()))) basePath=basePath.substring(0, basePath.length()-1);
@@ -565,12 +571,12 @@ public static String putVideo(ServletContext servletContext,MultipartFile file,S
* @return 图片路径(相对) * @return 图片路径(相对)
*/ */
public static String putFile(ServletContext servletContext,MultipartFile file,String filename,String path,String towhere) { public static String putFile(ServletContext servletContext,MultipartFile file,String filename,String path,String towhere) {
int maxSize = 1024*1024*10; //上传最大为2MB long maxSize = Utils.getNum(ReadTxt.getSetting(null, "setting.ini", "filesize", "50")) * 1048576; //上传最大 MB
if (file==null) { if (file==null) {
return ""; return "";
} }
if (file.getSize()>maxSize) { if (file.getSize()>maxSize) {
return "文件最大上传20MB"; return "error:文件最大上传"+(maxSize/1048576)+"MB";
} }
File targetFile=null; File targetFile=null;
String rid=""; String rid="";
@@ -583,7 +589,6 @@ public static String putFile(ServletContext servletContext,MultipartFile file,St
path = "D:/"+(lpath.replaceAll("D:/", "").replaceAll("D://", "").replaceAll("D:", "").replaceAll("c:", ""));//图片存储在C盘下的路径 path = "D:/"+(lpath.replaceAll("D:/", "").replaceAll("D://", "").replaceAll("D:", "").replaceAll("c:", ""));//图片存储在C盘下的路径
else{ else{
//修改:原本存储在项目根路径下的,为了防止删除项目文件丢失 //修改:原本存储在项目根路径下的,为了防止删除项目文件丢失
//path = servletContext.getRealPath(lpath);//图片存储在项目根目录下的路径
//现修改为:存储到固定文件夹(子路径保留)读取的时候通过url获取base64格式图片 //现修改为:存储到固定文件夹(子路径保留)读取的时候通过url获取base64格式图片
String basePath = ReadTxt.getSetting(null, "setting.ini", "FilePath", "D://scbox_settings/webFile"); String basePath = ReadTxt.getSetting(null, "setting.ini", "FilePath", "D://scbox_settings/webFile");
if("/".equals(basePath.substring(basePath.length()-1, basePath.length()))) basePath=basePath.substring(0, basePath.length()-1); if("/".equals(basePath.substring(basePath.length()-1, basePath.length()))) basePath=basePath.substring(0, basePath.length()-1);
@@ -626,7 +631,7 @@ public static String putFile(ServletContext servletContext,MultipartFile file,St
//System.out.println("图片上传成功 \nUrl:"+realurl); //System.out.println("图片上传成功 \nUrl:"+realurl);
} catch (Exception e) { } catch (Exception e) {
e.printStackTrace(); e.printStackTrace();
return "系统异常,视频上传失败"; return "error:系统异常,视频上传失败";
} }
/** /**
@@ -722,7 +727,6 @@ public static String writeFile(ServletContext servletContext, String path,
else path1 = path; else path1 = path;
} else { } else {
//修改:原本存储在项目根路径下的,为了防止删除项目文件丢失 //修改:原本存储在项目根路径下的,为了防止删除项目文件丢失
//path = servletContext.getRealPath(lpath);//图片存储在项目根目录下的路径
//现修改为:存储到固定文件夹(子路径保留)读取的时候通过url获取base64格式图片 //现修改为:存储到固定文件夹(子路径保留)读取的时候通过url获取base64格式图片
String basePath = ReadTxt.getSetting(null, "setting.ini", "FilePath", "D://scbox_settings/webFile"); String basePath = ReadTxt.getSetting(null, "setting.ini", "FilePath", "D://scbox_settings/webFile");
if("/".equals(basePath.substring(basePath.length()-1, basePath.length()))) basePath=basePath.substring(0, basePath.length()-1); if("/".equals(basePath.substring(basePath.length()-1, basePath.length()))) basePath=basePath.substring(0, basePath.length()-1);
@@ -788,7 +792,7 @@ public static void delfile(ServletContext servletContext, String path) {
path=rs.get(0).get("realurl")+""; path=rs.get(0).get("realurl")+"";
path1=rs.get(0).get("realurl")+""; path1=rs.get(0).get("realurl")+"";
} }
} else path1 = servletContext.getRealPath(path); }
} }
File file1 = new File(path1); File file1 = new File(path1);
@@ -835,7 +839,7 @@ public static void delFileForStr(ServletContext servletContext, String str) {
oldpath=rs.get(0).get("realurl")+""; oldpath=rs.get(0).get("realurl")+"";
path1=rs.get(0).get("realurl")+""; path1=rs.get(0).get("realurl")+"";
} }
} else path1 = servletContext.getRealPath(path); }
} }
File file1 = new File(path1); File file1 = new File(path1);
@@ -951,13 +955,19 @@ public static MultipartFile getMultipartFile(File file) {
* @param file * @param file
* @return * @return
*/ */
public static ResponseEntity<FileSystemResource> returnFile(File file) { public static ResponseEntity<FileSystemResource> returnFile(File file, String name) {
if (file == null) { if (file == null) {
return null; return null;
} }
try {
if(name!=null&&name.length()>0)
name = new String(name.getBytes("UTF-8"),"ISO-8859-1");
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
HttpHeaders headers = new HttpHeaders(); HttpHeaders headers = new HttpHeaders();
headers.add("Cache-Control", "no-cache, no-store, must-revalidate"); headers.add("Cache-Control", "no-cache, no-store, must-revalidate");
headers.add("Content-Disposition", "attachment; filename=" + file.getName()); headers.add("Content-Disposition", "attachment; filename=" + (name!=null&&name.length()>0?name:file.getName()));
headers.add("Pragma", "no-cache"); headers.add("Pragma", "no-cache");
headers.add("Expires", "0"); headers.add("Expires", "0");
headers.add("Last-Modified", new Date().toString()); headers.add("Last-Modified", new Date().toString());

View File

@@ -617,6 +617,65 @@ public class ReadTxt {
/**************/ /**************/
} }
/**
* 删除全部内容
*
* @param path
* 文件地址
* @param nullString
* 设置值为空时默认返回的内容
* @return string
*/
public static void delAll(ServletContext servletContext, String path) {
/**************/
// 如果存在,则追加内容;如果文件不存在,则创建文件
if(path.indexOf("./")==0)
path =path.substring(1, path.length());
if (servletContext == null) {
if(path.indexOf(":") <= 0&&path.indexOf("/") <0)
path = "D:\\scbox_settings\\" + path;
} else {
path = servletContext.getRealPath(path);
}
try {
File file = new File(path);
if (file.isFile() && file.exists()) { // 判断文件是否存在
// 把新内容覆盖写入文件
PrintWriter out = new PrintWriter(new BufferedWriter(
new OutputStreamWriter(new FileOutputStream(path),
"UTF-8")));
out.write("".toString());
out.flush();
out.close();
} else {// 不存在,创建
String path2 = path.substring(0, path.replace("\\", "/").lastIndexOf("/"));
File file1 = new File(path2);
// 如果文件夹不存在则创建
if (!file1.exists() && !file1.isDirectory()) {
file1.mkdirs();
}
File file2 = new File(path);
if (!file2.exists()) {
file2.createNewFile();
}
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
/**************/
}
/** /**

View File

@@ -162,6 +162,79 @@ public class Utils {
} }
/**
* 判断某个时间是否过期。传进来一个旧时间,和有效天数,判断今天这个旧时间是否过期
*
* @param d
* 旧时间 "2019-8-5"
* @param day
* 有效天数
* @return true:没有过期false:过期了
*/
public static boolean dateout(String d, int day) {
if (d == null || "".equals(d) || "null".equals(d))
return false;
Date date = Utils.dateadd(Utils.string2Date(d), day);
Date newdate = new Date();
int i = date.compareTo(newdate);
if (i >= 0) {
return true;
} else {
return false;
}
}
/**
* 计算两个时间相差的秒数
*
* @param endDate
* 结束时间 null为当前
* @param nowDate
* 开始时间
* @return
*/
public static long datePoor(Date endDate, Date nowDate) {
if(endDate==null) endDate = new Date();
long ns = 1000;// 一秒
// 获得两个时间的毫秒时间差异
long diff = endDate.getTime() - nowDate.getTime();
long sec = diff / ns;// 计算差多少秒
return sec;
}
/**
* 计算两个时间相差的秒数
*
* @param endDate
* 结束时间 null为当前
* @param nowDate
* 开始时间
* @return
*/
public static long datePoor(String endDates, String nowDates) {
if(endDates==null) endDates=Utils.date2String(null, null);
Date endDate = Utils.string2Date(endDates, null);
Date nowDate = Utils.string2Date(nowDates, null);
long ns = 1000;// 一秒
// 获得两个时间的毫秒时间差异
long diff = endDate.getTime() - nowDate.getTime();
long sec = diff / ns;// 计算差多少秒
return sec;
}
/** /**
* 设置定时器启动时间 * 设置定时器启动时间
* @param format 格式 yyyy-MM-dd 07:30:00 * @param format 格式 yyyy-MM-dd 07:30:00
@@ -237,28 +310,6 @@ public class Utils {
return s2; return s2;
} }
/**
* 判断某个时间是否过期。传进来一个旧时间,和有效天数,判断今天这个旧时间是否过期
*
* @param d
* 旧时间 "2019-8-5"
* @param day
* 有效天数
* @return true:没有过期false:过期了
*/
public static boolean dateout(String d, int day) {
if (d == null || "".equals(d) || "null".equals(d))
return false;
Date date = Utils.dateadd(Utils.string2Date(d), day);
Date newdate = new Date();
int i = date.compareTo(newdate);
if (i >= 0) {
return true;
} else {
return false;
}
}
/** /**
* URL解析与转义 * URL解析与转义
* *
@@ -690,28 +741,6 @@ public class Utils {
return Long.valueOf(str2); return Long.valueOf(str2);
} }
/**
* 计算两个时间相差的秒数
*
* @param endDate
* 结束时间
* @param nowDate
* 开始时间
* @return
*/
public static long getDatePoor(Date endDate, Date nowDate) {
long ns = 1000;// 一秒
// 获得两个时间的毫秒时间差异
long diff = endDate.getTime() - nowDate.getTime();
long sec = diff / ns;// 计算差多少秒
return sec;
}
/**获取今天是周几1-7*/ /**获取今天是周几1-7*/
public static long getWeekNum() { public static long getWeekNum() {
long[] weekDays = {7,1,2,3,4,5,6}; long[] weekDays = {7,1,2,3,4,5,6};