Spring对jdbc操作的支持
来源:互联网 发布:js input 光标颜色 编辑:程序博客网 时间:2024/06/07 00:09
Spring与jdbc
Spring对jdbc技术提供了很好的支持,体现在:
1.Spring对C3P0的支持2.Spring对jdbc提供了jdbcTemplate来简化jdbc操作3.JdbcTemplate模板工具类,类似于Dbutils组件。
对C3p0的支持
public class UserDao { /** *保存方法 *连接管理 *jdbc操作 */ //IOC注入 private DataSource dataSource; public DataSource getDataSource() { return dataSource; } public void setDataSource(DataSource dataSource) { this.dataSource = dataSource; } public void save(){ String sql="insert into t_dept(deptName) values('test');"; Connection con=null; Statement stmt=null; con=datasource.getConnection(); stmt=con.createstatement(); stmt.execute(sql);
<!--数据源对象:c3p0连接池 --> <bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource"> <property name="driverClass" value="com.mysql.cj.jdbc.Driver"></property> <property name="jdbcUrl" value="jdbc:mysql://localhost:3306/test"></property> <property name="user" value="root"></property> <property name="password" value="qqaazz"></property> <property name="initialPoolSize" value="3"></property> <property name="maxPoolSize" value="10"></property> <property name="maxStatements" value="100"></property> <property name="acquireIncrement" value="2"></property> </bean><bean id="userDao" class="cn.itcast.h_jdbc.UserDao"> <property name="dataSource" ref="dataSource"></property> </bean>
jdbcTemplate
import org.springframework.jdbc.core.JdbcTemplate; public class UserDao { //IOC注入 private DataSource dataSource; public DataSource getDataSource() { return dataSource; } public void setDataSource(DataSource dataSource) { this.dataSource = dataSource; } public void save(){ String sql="insert into t_dept(deptName) values('test');"; Connection con=null; Statement stmt=null; //使用jdbc模板工具类简化jdbc操作 JdbcTemplate jdbcTemplate=new JdbcTemplate(dataSource); jdbcTemplate.update(sql); //插入修改删除都可以用这个方法
jdbcTemplate
queryForMap()
public Dept findById(int id){ String sql="select * from t_dept where deptId=?"; JdbcTemplate jdbcTemplate=new JdbcTemplate(dataSource); //只能是一行 Map<String,Object> map=jdbcTemplate.queryForMap(sql,id); System.out.println(map); return null; }
queryForList()
每一行封装成map,在装入list
public Dept findById(int id){ String sql="select * from t_dept"; JdbcTemplate jdbcTemplate=new JdbcTemplate(dataSource); //只能是一行 Map<String,Object> map=jdbcTemplate.queryForMap(sql); System.out.println(map); return null; }
query()
查询全部,每一行封装成map,在装入list
public Dept findById(int id){ String sql="select * from t_dept"; JdbcTemplate jdbcTemplate=new JdbcTemplate(dataSource); //如何封装一行记录 List<Dept> list= jdbcTemplate.query(sql,new RowMapper<Dept>(){@Overridepublic Dept mapRow(ResultSet rs,int index) throws SQLException{ Dept dept=new Dept(); dept.setDeptId(rs.getInt("deptId")); dept.setDeptName(rs.getString("deptName")); return list;}}); System.out.println(map); return null; }
query()
查询一行
public Dept findById(int id){ String sql="select * from t_dept"; JdbcTemplate jdbcTemplate=new JdbcTemplate(dataSource); //如何封装一行记录 List<Dept> list= jdbcTemplate.query(sql,new RowMapper<Dept>(){@Overridepublic Dept mapRow(ResultSet rs,int index) throws SQLException{ Dept dept=new Dept(); dept.setDeptId(rs.getInt("deptId")); dept.setDeptName(rs.getString("deptName")); return list;}},id); System.out.println(map); return null; }//可以封装内部类class MyResult implements RowMapper<Dept>{ public Dept mapRow(ResultSet rs,int index) throws SQLException{ Dept dept=new Dept(); dept.setDeptId(rs.getInt("deptId")); dept.setDeptName(rs.getString("deptName")); return dept; } }那么在上述中,可以jdbcTemplate.query(sql,new MyResult())
阅读全文
0 0
- Spring 对JDBC操作的支持
- Spring对jdbc操作的支持
- Spring对JDBC的支持
- Spring对JDBC的支持
- Spring对JDBC的支持
- spring对JDBC的支持
- Spring对jdbc的支持
- Spring对JDBC的支持
- Spring对jdbc的支持。
- Spring对JDBC的支持
- Spring对Jdbc的支持
- Spring对JDBC的支持
- spring对jdbc的支持
- Spring 对JDBC的支持
- spring 对jdbc的支持
- spring对JDBC的支持
- Spring对JDBC的支持
- spring对JDBC的支持
- 剑指offer之跳台阶
- MySQL数据库中SQL语句的基本使用(二)
- 单例模式和工厂模式
- 剑指offer:树的子结构
- 对指定文件夹及其子文件夹下面的某一类格式(.tif)的文件进行重命名
- Spring对jdbc操作的支持
- Python matplotlib 练习题
- 【scrapy】爬取框架使用流程(1)
- 关于将数组作为参数传递给函数的简单使用
- S3C6410 轮询串口配置
- HDU2094 考新郎
- 平面波的角谱理论
- 热修复Andfix原理及实践
- 网络编程(知识点)