本文共 2888 字,大约阅读时间需要 9 分钟。
//创建数据源(连接池) dbcp BasicDataSource basicDataSource = new BasicDataSource(); basicDataSource.setDriverClassName("驱动"); basicDataSource.setUrl("连接到的库的url"); basicDataSource.setUsername("用户名"); basicDataSource.setPassword("密码"); //创建模板 JdbcTemplate jdbcTemplate = new JdbcTemplate(); jdbcTemplate.setDataSource(basicDataSource); //通过api操作 jdbcTemplate.update("insert into `admin`(id,username,password) values(?,?,?)","2","xiaoming","1234");
javabean:
@Getter@Setterpublic class Admin { String id; String username; String password; @Override public String toString() { return "Admin{" + "id='" + id + '\'' + ", username='" + username + '\'' + ", password='" + password + '\'' + '}'; }}
DAO层:
public class AdminDao { private JdbcTemplate jdbcTemplate; public void setJdbcTemplate(JdbcTemplate jdbcTemplate) { this.jdbcTemplate = jdbcTemplate; } public void insertAdmin(Admin admin) { String sql = "insert into `admin`(id,username,password) values(?,?,?)"; Object[] args = { admin.getId(), admin.getUsername(), admin.getPassword()}; jdbcTemplate.update(sql,args); }}
xml文件:
测试类:
ApplicationContext applicationContext = new ClassPathXmlApplicationContext("com/zamao/JDBCTemplate/applicationContext.xml");AdminDao adminDao = (AdminDao) applicationContext.getBean("adminDao");Admin admin = new Admin();admin.setId("3");admin.setUsername("suojiji");admin.setPassword("1234");adminDao.insertAdmin(admin);
只需要修改xml中配置数据源中的property中的name属性。
JdbcDaoSupport类中有生成JdbcTemplate的方法,还有配置数据源的set方法,所以DAO层继承JdbcDaoSupport可以不用创建JdbcTemplate对象,并配置数据源了。
继承JdbcDaoSupport的DAO层:public class AdminDao extends JdbcDaoSupport { public void insertAdmin(Admin admin) { String sql = "insert into `admin`(id,username,password) values(?,?,?)"; Object[] args = { admin.getId(), admin.getUsername(), admin.getPassword()}; this.getJdbcTemplate().update(sql,args); } public ListfindAll() { return this.getJdbcTemplate().query("select * from `admin`", BeanPropertyRowMapper.newInstance(Admin.class)); }}
xml:
一般开发时,我们会将配置数据源所需要的变量都放在一个properties文件中。
jdbc.properties:jdbc.driverClass=com.mysql.jdbc.Driverjdbc.jdbcUrl=jdbc:mysql://localhost:3306/mystorejdbc.user=rootjdbc.password=Zsw.317412696
xml文件中引入properties:
转载地址:http://adaen.baihongyu.com/