package com.insigma.utils; import cn.hutool.db.Session; import cn.hutool.db.ds.simple.SimpleDataSource; import org.springframework.util.StringUtils; import javax.sql.DataSource; import java.util.Arrays; import java.util.List; import java.util.Objects; /** * (DbUtil 类) * * @author zhangxianwei * @since 15:18 2022/4/18 */ public class DbUtil { private static DataSource ds; public static String url; public static String usr; public static String pwd; public static String drive; public static Session getSession(String url, String usr, String pwd, String drive) { if(Objects.isNull(ds)){ DbUtil.url = url; DbUtil.usr = url; DbUtil.pwd = url; DbUtil.drive = drive; ds = new SimpleDataSource(isDb(url), usr, pwd, drive); } return Session.create(ds); } private static final String MYSQL = "jdbc:mysql"; private static String isDb(String url){ if(StringUtils.startsWithIgnoreCase(url, MYSQL)){ url += "?useUnicode=true&characterEncoding=utf8&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=UTC"; } return url; } public static final List RUBBISH = Arrays.asList("�","","�","","&#"); }