private String validationQuery;
@Value(“${testWhileIdle}”)
private boolean testWhileIdle;
@Value(“${testOnBorrow}”)
private boolean testOnBorrow;
@Value(“${testOnReturn}”)
private boolean testOnReturn;
@Value(“${maxPoolPreparedStatementPerConnectionSize}”)
private int maxPoolPreparedStatementPerConnectionSize;
@Value(“${removeAbandoned}”)
private boolean removeAbandoned;
@Value(“${removeAbandonedTimeout}”)
private int removeAbandonedTimeout;
@Value(“${timeBetweenEvictionRunsMillis}”)
private int timeBetweenEvictionRunsMillis;
@Value(“${minEvictableIdleTimeMillis}”)
private int minEvictableIdleTimeMillis;
@Bean(initMethod=“init”,destroyMethod=“close”)
public DruidDataSource dataSource(){
DruidDataSource dataSource=new DruidDataSource();
try {
dataSource.setUrl(url);
dataSource.setDriverClassName(driverClassName);
dataSource.setUsername(username);
dataSource.setPassword(password);
dataSource.setFilters(filters);
dataSource.setInitialSize(initialSize);
dataSource.setMaxActive(maxActive);
dataSource.setMinIdle(minIdle);
dataSource.setMaxWait(maxWait);
dataSource.setValidationQuery(validationQuery);
dataSource.setTestWhileIdle(testWhileIdle);
dataSource.setTestOnBorrow(testOnBorrow);
dataSource.setTestOnReturn(testOnReturn);
dataSource.setMaxPoolPreparedStatementPerConnectionSize(maxPoolPreparedStatementPerConnectionSize);
dataSource.setRemoveAbandoned(removeAbandoned);
dataSource.setRemoveAbandonedTimeout(removeAbandonedTimeout);
dataSource.setTimeBetweenEvictionRunsMillis(timeBetweenEvictionRunsMillis);
dataSource.setMinEvictableIdleTimeMillis(minEvictableIdleTimeMillis);
System.out.println(“连接池启动成功”);
} catch (SQLException e) {
e.printStackTrace();
}
return dataSource;
}
}
5、事务的使用
@Service
public class UserServiceImpl implements UserService {
@Autowired
private JdbcTemplate jdbcTemplate;
@Override
@Transactional
public void insertUser(User user) {
String sql = “insert into user(id, name) values(?,?)”;
jdbcTemplate.update(sql, user.getId(), user.getName());
//int num = 1/0; //放开测试事务。预期结果为添加失败,库中无数据。测试结果与预期一致
}
}
6、dao层代码简介
@Repository(“userDao”)
public class UserDaoImpl implements UserDao {
@Autowired
private JdbcTemplate jdbcTemplate;
//判断用户是否登录成功
public boolean isL