Spring+JDBC-2
Spring 通过 .properties 文件连接数据库
一、文件结构
二、修改代码
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
1 package impl; 2 3 import java.sql.ResultSet; 4 import java.sql.SQLException; 5 import java.util.List; 6 7 import org.springframework.jdbc.core.JdbcTemplate; 8 import org.springframework.jdbc.core.RowMapper; 9 import org.springframework.jdbc.datasource.DataSourceTransactionManager; 10 import org.springframework.jdbc.datasource.DriverManagerDataSource; 11 import org.springframework.transaction.TransactionDefinition; 12 import org.springframework.transaction.TransactionStatus; 13 import org.springframework.transaction.support.DefaultTransactionDefinition; 14 15 import entity.Entity; 16 import inter.DaoInter; 17 18 /** 19 * dao层实现类 20 * 21 * @author Administrator 22 */ 23 public class DaoImpl implements DaoInter { 24 25 public static DriverManagerDataSource getDataSource() { 26 DriverManagerDataSource source = new DriverManagerDataSource(); 27 source.setDriverClassName("com.mysql.cj.jdbc.Driver"); 28 source.setUrl("jdbc:mysql://localhost:3306/mybatis?serverTimezone=Asia/Shanghai"); 29 source.setUsername("root"); 30 source.setPassword("123456"); 31 return source; 32 } 33 public int insertDept() { 34 JdbcTemplate jdbcTemplate =new JdbcTemplate(DaoImpl.getDataSource()); 35 //1.创建事务管理器 36 DataSourceTransactionManager transactionManager =new DataSourceTransactionManager(); 37 transactionManager.setDataSource(jdbcTemplate.getDataSource()); 38 //2.创建一个事务 39 DefaultTransactionDefinition dtd=new DefaultTransactionDefinition(); 40 //3. 获取事务状态 41 TransactionStatus status=transactionManager.getTransaction(dtd); 42 //4设定事务级别及属性 43 //隔离 44 dtd.setIsolationLevel(TransactionDefinition.ISOLATION_READ_COMMITTED); 45 //传播 46 dtd.setPropagationBehavior(TransactionDefinition.PROPAGATION_REQUIRED); 47 //只读 48 dtd.setReadOnly(false); 49 //超时 50 dtd.setTimeout(-1); 51 //执行sql 52 int flag=jdbcTemplate.update("INSERT INTO dept VALUES(?,?,?)", 401,"AI一部","上海浦东"); 53 System.out.println(flag); 54 //提交事务 55 transactionManager.commit(status); 56 return flag; 57 } 58 59 public List<Entity> selectDeptAll() { 60 JdbcTemplate jdbcTemplate =new JdbcTemplate(DaoImpl.getDataSource()); 61 String sql="select * from person2"; 62 List<Entity> list=jdbcTemplate.query(sql, new RowMapper() { 63 public Object mapRow(ResultSet rs, int rowNum) throws SQLException { 64 Entity en=new Entity(); 65 en.setId(rs.getInt("id")); 66 en.setName(rs.getString("name")); 67 en.setSex(rs.getString("sex")); 68 return en; 69 } 70 }); 71 return list; 72 } 73 }
三,修改配置文件
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
1 driverClass=com.mysql.cj.jdbc.Driver 2 url=jdbc:mysql://localhost:3306/mybatis?serverTimezone=Asia/Shanghai 3 name=root 4 password=123456
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
1 <?xml version="1.0" encoding="UTF-8"?> 2 <beans xmlns="http://www.springframework.org/schema/beans" 3 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p" 4 xmlns:context="http://www.springframework.org/schema/context" 5 xmlns:aop="http://www.springframework.org/schema/aop" 6 xsi:schemaLocation="http://www.springframework.org/schema/beans 7 http://www.springframework.org/schema/beans/spring-beans-4.3.xsd 8 http://www.springframework.org/schema/context 9 http://www.springframework.org/schema/context/spring-context-4.3.xsd 10 http://www.springframework.org/schema/aop 11 http://www.springframework.org/schema/aop/spring-aop-4.3.xsd"> 12 </beans>