spring JdbcTemplate 常用的自定义工具包

 

自定义时间工具包

 

package com.gem.demo.util;

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;

/**
 *
 * Title: DateUtil
 *
 * Description: 
 *
 * @version v0.01
 *
 * @author ByChai
 *
 * @date 2020年7月31日 上午8:33:39
 *
 *
 */
public class DateUtil {
    /**
     * 
     * @param date
     * @return 按照默认格式的时间字符串
     */
    public static String dateToString(Date date) {
        SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        
        return  sdf.format(date);
    } 
    /**
     * 
     * @param date
     * @param pattern
     * @return 指定格式的时间字符串
     */
    public static String dateToString(Date date,String pattern) {
        SimpleDateFormat sdf=new SimpleDateFormat(pattern);
        return sdf.format(date);
    }
    /**
     * 
     * @param str
     * @return 默认格式的时间
     */
    public static Date stringToDate(String str) {
        SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        try {
            return sdf.parse(str);
        } catch (ParseException e) {
            System.err.println("时间转换失败");
        }
        
        
        return null;
    }
    /**
     * 
     * @param str
     * @return 指定格式的时间
     */
    public static Date stringToDate(String str,String pattern) {
        SimpleDateFormat sdf=new SimpleDateFormat(pattern);
        try {
            return sdf.parse(str);
        } catch (ParseException e) {
            System.err.println("时间转换失败");
        }
        return null;
    }
    
}

 

 

 

利用反射获取对象

自定义工具类

package com.gem.demo.util;

import java.io.IOException;
import java.io.InputStream;
import java.util.Properties;

/**
 *
 * Title: BeanFactory
 *
 * Description: 
 *     工具类:    读取配置问价 创建对象
 * @version v0.01
 *
 * @author ByChai
 *
 * @date 2020年8月13日 下午3:04:59
 *
 *
 */
public class BeanFactory {
    static Properties properties;
    static {
        //静态代码块  
        try {
            //实例化属性集对象
            properties=new Properties();
            //将配置文件内容读取到流中
            InputStream is=Thread.currentThread().getContextClassLoader().getResourceAsStream("bean.properties");
            //加载
            properties.load(is);
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }
    /**
     * 
     * @param name 配置文件的属性名
     * @return 根据属性名创建出的对象
     */
    public static Object getBean(String name) {
        Object object=null;
        try {
            //获取Class对象
            Class<?> c=Class.forName(properties.getProperty(name));
            //反射调用构造器创建对象
            object=c.getConstructor().newInstance();
        } catch (Exception e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        return object;
    }
}

 

Spring 

 

JdbcTemplate 获取连接池对象,获取链接的自定义工具包

 

package com.gem.demo.util;

import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

import javax.sql.DataSource;

import com.mchange.v2.c3p0.ComboPooledDataSource;

public class JDBCUtil {
    //使用默认配置
    private static ComboPooledDataSource pool = new ComboPooledDataSource();

    //获取连接池对象
    public static DataSource getDataSource() {
        return pool;
    }

    //获取连接
    public static Connection getConnection() {
        try {
            //从数据库连接池中获取链接
            return pool.getConnection();
        } catch (SQLException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        return null;
    }

    //返回链接
    public static void close(Connection conn, Statement stmt) {
        if (stmt != null) {
            try {
                stmt.close();
            } catch (SQLException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
        }
        if (conn != null) {
            try {
                conn.close();
            } catch (SQLException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
        }
    }

    public static void close(Connection conn, Statement stmt, ResultSet rs) {
        if (rs != null) {
            try {
                rs.close();
            } catch (SQLException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
        }
        close(conn, stmt);
    }

}

 

posted @ 2020-09-18 14:32  不期而遇u  阅读(275)  评论(0编辑  收藏  举报