junit,面向切面开发(动态代理),工厂设计模式,数据库连接池

时间:2023-03-08 23:14:28
junit,面向切面开发(动态代理),工厂设计模式,数据库连接池

1。junit

junit又叫单元测试,好处是能进行批量测试,而且如果方法出现了问题能立刻定位出出现问题的方法,还有一个好处是感官效果很好,如果方法都通过了则显示绿条,否则显示红条

TestCase.assertTrue(b);//断言参数是否为true

TestCase.assertNotNull(emp);断言参数是否为空

2.面向切面开发

所谓的面向切面开发就是针对指定的方法可以在该方法执行前或执行后织入一些辅助性的的代码;

主要涉及到proxy,invocationhanlder;

3.注解

今天老师讲的注解的应用,我的理解:注解相当于一个锚点,用来辅助判断是否是特定的方法,如果是手动加上自定义注解,程序可以判断是否有注解,如果有就执行特定的流程。

4.工厂设计模式

将对象的实例化过程分装到“工厂”中,客户端不关注对象的实例化过程。

工厂中设计一个方法 getinstance。。。

5.数据库连接池

对于一个复杂的数据库应用,需要频繁的建立关闭连接会极大影响系统的性能,此时可以在程序启动的时候创建指定数量的连接保持到连接池里面,之后要使用连接的时候直接从池中取得;

package cn.sxt.mvcpro.util;

import java.sql.Connection;
import java.sql.SQLException; import com.alibaba.druid.pool.DruidDataSource; public class DBUtil {
private static DruidDataSource dataSource = new DruidDataSource();
static {
dataSource.setUrl("jdbc:mysql://localhost:3306/demo?useSSL=true&useUnicode=true&characterEncoding=UTF-8");
dataSource.setUsername("root");
dataSource.setPassword("mima");
dataSource.setDriverClassName("com.mysql.jdbc.Driver");
dataSource.setInitialSize(2);
dataSource.setMaxActive(20);
dataSource.setMaxWait(3000);
} public static Connection getConnection() {
try {
return dataSource.getConnection();
} catch (SQLException e) {
e.printStackTrace();
}
return null;
} public static void close(Connection conn) {
try {
if (conn != null) {
conn.close();
}
} catch (SQLException e) {
e.printStackTrace();
}
}
}