andy xiang

All generations.

generate functionFri, 14 Apr 2023

实现连接池

// 实现连接池 public class ConnectionPool { // 私有化构造方法 private ConnectionPool() {} // 创建单例 private static ConnectionPool instance = new ConnectionPool(); // 获取当前对象 public static ConnectionPool getInstance() { return instance; } // 创建连接池 private static LinkedList<Connection> pool = new LinkedList<>(); static { // 连接池初始化 for (int i = 0; i < 10; i++) { Connection conn = null; // 创建数据库连接 conn = DriverManager.getConnection(""); // 添加到连接池 pool.add(conn

Java
View
generate functionFri, 14 Apr 2023

写一个 vue hook 实现函数缓存

function useMemo(fn, deps) { let prevDeps = useRef([]); let hasChanged = deps.some((d, i) => !Object.is(d, prevDeps.current[i])); if (hasChanged) { fn.current = fn(); prevDeps.current = deps; } return fn.current; }

TypeScript
View
generate functionFri, 14 Apr 2023

获取 url 问号后的参数

function getQueryString(url:string, name:string) { var reg = new RegExp('(^|&)' + name + '=([^&]*)(&|$)', 'i'); var r = url.substr(1).match(reg); if (r != null) { return unescape(r[2]); } return null; } getQueryString('?id=1', 'id')

TypeScript
View

Want to kickstart your project?Use the new AI Studio to create your code