一.配置文件的设置
注意:在配置时,username,password属性不可更改, 注意driverClassName的大小写.
二.项目的建立
1.druid连接数据库的第一种方法
public class DruidConnectDemo {
public static void main(String[] args) throws SQLException {
String driverClassName="com.mysql.cj.jdbc.Driver";
String url="jdbc:mysql://localhost:3306/news-system?characterEncoding=utf-8&useSSL=false&allowPublicKeyRetrieval=true";
String username="root";
String password="123456";
DruidDataSource druidDataSource=new DruidDataSource();
druidDataSource.setDriverClassName(driverClassName);
druidDataSource.setUrl(url);
druidDataSource.setUsername(username);
druidDataSource.setPassword(password);
druidDataSource.setMaxActive(10);
druidDataSource.getConnection();
}
}
注意:druidDataSource.setMaxActive(10)的括号里面的数字可以设置成别的,另外可以利用for循环进行检验.
2.druid连接数据库的第二种方法
public class DruidConnectDemo2 {
public static void main(String[] args) throws Exception {
// 1.获取properties对象
Properties properties = new Properties();
InputStream is = DruidConnectDemo2.class.getClassLoader().getResourceAsStream("jdbc.properties");
properties.load(is);
DataSource dataSource= DruidDataSourceFactory.createDataSource(properties);
Connection connection=dataSource.getConnection();
System.out.println(connection);
connection.close();
}
}
注意:jdbc.properties在配置时需要确保正确
3.简单的进行测验
利用增删改查进行验证
完整代码:
public class JDBCTemplateDemo {
static JdbcTemplate jdbcTemplate = new JdbcTemplate(DBUtils.getDataSource());
public static void main(String[] args) {
JdbcTemplate jdbcTemplate = new JdbcTemplate(DBUtils.getDataSource());
int i = jdbcTemplate.update("insert into t_account(user_name,user_password) values (?,?)", "admin11", "11111");
System.out.println("影响了数据库" + i + "行");
int i1=jdbcTemplate.update("insert into t_account(user_name,user_password) values (?,?)","aaaaa","88888");
System.out.println("影响了数据库"+i1+"行");
int j = jdbcTemplate.update("update t_account set user_name=?,user_password=? where id=7", "adminadmin", "668866");
System.out.println("影响了数据库" + j + "行");
jdbcTemplate.update("delete from t_account where id=?",6);
System.out.println("已删除");
//查询所有
RowMapper<Account> rowMapper = new BeanPropertyRowMapper(Account.class);
List<Account> acccountList = jdbcTemplate.query("select * from t_account where id>?", rowMapper, 0);
System.out.println(acccountList);
//查询一条数据,根据id查询一个人的信息
Account acccount = jdbcTemplate.queryForObject("select * from t_account where id=?", rowMapper, 7);
System.out.println(acccount);
}
public static Account queryAccountById(Integer id){
RowMapper<Account> rowMapper = new BeanPropertyRowMapper(Account.class);
try {
return jdbcTemplate.queryForObject("select * from t_account where id=?", rowMapper, id);
} catch (Exception e) {
return null;
}
}
}
结果均能实现.