Spring JDBC

Posted ong-zhanhon

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Spring JDBC相关的知识,希望对你有一定的参考价值。

Jdbc JDBC概述
Spring JDBC是Spring框架的持久层子框架,用于对数据库的操作(增删改查)。
而JdbcTemplate它是spring jdbc子框架中提供的一个操作类,用于对原始Jdbc API对象的简单封装。

Spring JDBC 的示例
第一步:导包:


第二步:编写实体类
public class Student implements Serializable{
  //序列化接口
  private static final long serialVersionUID = 7334971050821119142L;
   private Long studentId;
   private String studentName;
   private String studentPassword;
   private Date createDate;
  //省略set和get方法
}

第三步:编写实现代码
public class StudentDaoImpl implements StudentDao<Student> {
  //用于操作数据库
   private JdbcTemplate jdbcTemplate;
   public void setJdbcTemplate(JdbcTemplate jdbcTemplate) {
     this.jdbcTemplate = jdbcTemplate;
  }
   //添加学生的方法
  @Override
  public int insert(Student enitity) {
   String spl = "INSERT INTO t_student(studentname, studentpassword, createDate)VALUES (?, ?, ?)";
   Object[] obj = { enitity.getStudentName(), enitity.getStudentPassword(), enitity.getCreateDate() };
   int update = jdbcTemplate.update(spl, obj);
   return update;
   }
}

第四步:配置xml文件
在org.springframework.jdbc.datasource找到一个DriverManagerDataSource类,该类用于连接数据库
在org.springframework.jdbc.core找到一个JdbcTemplate类,该类用于操作数据库
代码如下:
<!-- 配置一个数据源 -->
<bean name="DriverManagerDataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
 <!-- 连接数据库的四要数 -->
 <property name="driverClassName" value="org.gjt.mm.mysql.Driver"></property>
  <property name="url" value="jdbc:mysql://localhost:3306/hzh"></property>
  <property name="username" value="root"></property>
  <property name="password" value="123"></property>
</bean>

<!-- 获得jdbcTemplate操作对象 -->
 <bean name="jdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate">
 <!-- 设置数据源 -->
 <property name="driverManagerDataSource" ref="driverManagerDataSource"></property>
</bean>
<bean name="studentDao" class="cn.gzsxt.dao.impl.StudentDaoImpl">
  <property name="jdbcTemplate" ref="jdbcTemplate"></property>
</bean>

第五步:编写测试类
public class ApplicationContextTest {
  private StudentDao<Student> studentDao;
   private ClassPathXmlApplicationContext context;

   @Test
   public void insert(){
   context=new ClassPathXmlApplicationContext("classpath:applicationContext.xml");
   //获得容器里面的对象
   studentDao = context.getBean(StudentDao.class);
   Student student = new Student();
   student.setStudentName("zhaasdasdasd");
   studentDao.insert(student);
   context.close();
}

以上是关于Spring JDBC的主要内容,如果未能解决你的问题,请参考以下文章

Spring整合JDBC以及AOP管理事务

Spring整合JDBC以及AOP管理事务

spring整合JDBC

PreparedStatementCallback; JDBC Spring 中的错误 SQL 语法

JDBC Spring中的Bad Sql Grammar异常

jdbc spring 安全性,apache commons dbcp