以mysql为例
在信息量比较大的时候可以结合者着使用注解和配置文件
步骤:1.创建注解
2.使用注解修饰方法或者类都可以
3.获取该方法/类的注解对象
4.给注解属性(就是注解的抽象方法)赋值
5.替换配置文件去连接数据库
一:创建注解
//元注解--指定注解存在于runtime阶段
@Retention(RetentionPolicy.RUNTIME)
//元注解--指定注解用来修饰方法(也可以通过改变参数来修饰类或者成员变量)
@Target(ElementType.METHOD)
public @interface MyAnnotation {
//注解属性一定要有返回值
String driverClass();
String url();
String user();
String password();
}
二:创建JDBC工具类(完成注解的替换)
另外记得导入数据库连接的jar包
public class JDBCUtils {
//给注解赋值
@MyAnnotation(driverClass="com.mysql.jdbc.Driver",url="jdbc:mysql:///db1",user="用户名",password="密码")
public static Connection getConnection() throws Exception {
//如何获取注解的值--反射
//1.获取当前类的字节码对象
Class clazz = JDBCUtils.class;
//2.获取当前方法的对象
Method method = clazz.getDeclaredMethod("getConnection");
//3.获取Annotation--无论是类还是方法等的注解都是通过getAnnotation(注解类型的class)方法获取
MyAnnotation myAnnotation = method.getAnnotation(MyAnnotation.class);
//4.获取注解内容并赋值--注解对象.注解方法(也叫注解属性)
String driverClass=myAnnotation.driverClass();
String url = myAnnotation.url();
String user = myAnnotation.user();
String password = myAnnotation.password();
//获取驱动
Class.forName(driverClass);
//获取连接
Connection connection = DriverManager.getConnection(url, user, password);
return connection;
}
public static void main(String[] args) throws Exception {
//测试连接是否成功
Connection connection = getConnection();
System.out.println(connection);
}