StudentDAO.java
package com.jdbc;
import java.util.List;
import javax.sql.DataSource;
public interface StudentDAO {
public void setDataSource(DataSource ds);
public void create(String name, Integer age);
public Student getStudent(Integer id);
public List<Student> listStudents();
public void delete(Integer id);
public void update(Integer id, Integer age);
}
Student.java
package com.jdbc;
public class Student {
private Integer age;
private String name;
private Integer id;
public void setAge(Integer age) {
this.age = age;
}
public Integer getAge() {
return age;
}
public void setName(String name) {
this.name = name;
}
public String getName() {
return name;
}
public void setId(Integer id) {
this.id = id;
}
public Integer getId() {
return id;
}
}
StudentMappe.java
package com.jdbc;
import java.sql.ResultSet;
import java.sql.SQLException;
import org.springframework.jdbc.core.RowMapper;
public class StudentMapper implements RowMapper<Student> {
public Student mapRow(ResultSet rs, int rowNum) throws SQLException {
Student student = new Student();
student.setId(rs.getInt("id"));
student.setName(rs.getString("name"));
student.setAge(rs.getInt("age"));
return student;
}
}
StudentJDBCTemplate.java
StudentJDBCTemplate.java
package com.jdbc;
import java.util.List;
import javax.sql.DataSource;
import org.springframework.jdbc.core.JdbcTemplate;
public class StudentJDBCTemplate implements StudentDAO {
private DataSource dataSource;
private JdbcTemplate jdbcTemplateObject;
public void setDataSource(DataSource dataSource) {
this.dataSource = dataSource;
this.jdbcTemplateObject = new JdbcTemplate(dataSource);
}
public void create(String name, Integer age) {
String SQL = "insert into Student (name, age) values (?, ?)";
jdbcTemplateObject.update( SQL, name, age);
System.out.println("Created Record Name = " + name + " Age = " + age);
return;
}
public Student getStudent(Integer id) {
String SQL = "select * from Student where id = ?";
Student student = jdbcTemplateObject.queryForObject(SQL,
new Object[]{id}, new StudentMapper());
return student;
}
public List<Student> listStudents() {
String SQL = "select * from Student";
List <Student> students = jdbcTemplateObject.query(SQL,
new StudentMapper());
return students;
}
public void delete(Integer id){
String SQL = "delete from Student where id = ?";
jdbcTemplateObject.update(SQL, id);
System.out.println("Deleted Record with ID = " + id );
return;
}
public void update(Integer id, Integer age){
String SQL = "update Student set age = ? where id = ?";
jdbcTemplateObject.update(SQL, age, id);
System.out.println("Updated Record with ID = " + id );
return;
}
}
MainApp.java
package MainApp;
import java.util.List;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import com.jdbc.Student;
import com.jdbc.StudentJDBCTemplate;
public class MainApp {
public static void main(String[] args) {
ApplicationContext context =
new ClassPathXmlApplicationContext("jjdbc.xml");
StudentJDBCTemplate studentJDBCTemplate = (StudentJDBCTemplate)context.getBean("studentJDBCTemplate");
System.out.println("------Records Creation--------" );
studentJDBCTemplate.create("Zara", 11);
studentJDBCTemplate.create("Nuha", 2);
studentJDBCTemplate.create("Ayan", 15);
System.out.println("------Listing Multiple Records--------" );
List<Student> students = studentJDBCTemplate.listStudents();
for (Student record : students) {
System.out.print("ID : " + record.getId() );
System.out.print(", Name : " + record.getName() );
System.out.println(", Age : " + record.getAge());
}
System.out.println("----Updating Record with ID = 2 -----" );
studentJDBCTemplate.update(2, 20);
System.out.println("----Listing Record with ID = 2 -----" );
Student student = studentJDBCTemplate.getStudent(2);
System.out.print("ID : " + student.getId() );
System.out.print(", Name : " + student.getName() );
System.out.println(", Age : " + student.getAge());
}
}
jjdbc.xml
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd">
<!--bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManageDataSource">
<property name="driveClassName" value="org.hsqldb.jdbcDriver" />
<property name="url" value="jdbc:mysql://192.168.139.215:3306/zhuce" />
<property name="username" value="root" />
<property name="password" value="zouhuiying" />
</bean-->
<bean id="dataSource"
class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName" value="com.mysql.jdbc.Driver"/>
<property name="url" value="jdbc:mysql://192.168.139.215:3306/zhuce"/>
<property name="username" value="root"/>
<property name="password" value="zouhuiying"/>
</bean>
<!--bean id="jdbcTemplate" class="org.springframework.jdbc.core.simple.SimpleJdbcTemplate">
<constructor-arg ref="dataSource">
</bean>
<bean id="spitterDao" class="com.jdbc.JdbcSpitterDao">
<property name="jdbcTemplate" value="jdbcTemplate" />
</bean-->
<bean id="studentJDBCTemplate"
class="com.jdbc.StudentJDBCTemplate">
<property name="dataSource" ref="dataSource" />
</bean>
</beans>
注释:maven自动引入msql 和jdbc的包早pom.xml中加入以下代码
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>3.2.1.RELEASE</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.24</version>
</dependency>
CREATE TABLE Student(
ID INT NOT NULL AUTO_INCREMENT,
NAME VARCHAR(20) NOT NULL,
AGE INT NOT NULL,
PRIMARY KEY (ID)
);
分享到:
相关推荐
在整合Spring MVC、Spring和Spring JDBC的实例中,你可能会看到以下几个关键部分: 1. **配置文件**:包括Spring的主配置文件(如`applicationContext.xml`),其中定义了Bean的配置,包括DataSource、JdbcTemplate...
Spring JDBC提供了一套完整的事务管理机制。通过@Transactional注解,我们可以方便地在方法级别声明事务。Spring会自动处理事务的开始、提交、回滚等操作,确保数据的一致性。 **7. 存储过程的调用** Spring JDBC...
《Spring MVC + Spring + Spring JDBC 整合实例详解》 在Java Web开发中,Spring框架因其强大的功能和灵活的设计而备受推崇。Spring MVC、Spring核心模块以及Spring JDBC是Spring框架中的三大重要组成部分,它们...
当我们谈论"Spring+JDBC实例"时,通常是指在Spring框架中使用JDBC进行数据访问的方式,这种方式可以利用Spring提供的便利性,同时保留对数据库的直接控制。 在Spring框架中,JDBC操作被封装在`org.springframework....
Spring JDBC是Spring框架的一个重要模块,它简化了Java数据库连接(JDBC)的使用,提供了更高级别的抽象,使得数据库操作更加简洁、易管理和模块化。这个"spring_JDBC整合包"显然包含了进行Spring JDBC开发所需的...
通过这个SpringJDBC.rar的案例,初学者可以学习到如何配置DataSource,如何创建JdbcTemplate实例,以及如何编写和执行SQL语句。同时,实践中还可以了解到如何将Spring JDBC整合到Spring Boot项目中,以及如何处理...
这个项目不仅包含了源代码,还预设了完整的数据库,因此非常适合学习和理解Spring JDBC的实际应用。 在Spring JDBC中,我们主要关注以下几个核心概念: 1. **JdbcTemplate**: 这是Spring JDBC提供的主要类,用于...
综上所述,`springjdbc.zip`文件中的示例可能展示了如何在Spring环境中配置和使用JDBC,包括数据源配置、事务管理、以及使用`JdbcTemplate`执行增删改查操作的完整流程。通过学习这些示例,开发者可以更好地理解和...
在本实例中,我们将深入探讨Spring JDBC的使用,并以`SpringJdbcTemplate`为例来阐述其主要功能和优势。 首先,Spring JDBC通过`JdbcTemplate`和`NamedParameterJdbcTemplate`类提供了强大的数据库访问功能。`...
这个“SpringJDBC.rar”压缩包文件可能包含了关于如何在Spring框架中集成和使用JDBC的相关示例和教程。下面将详细解释Spring JDBC的核心概念、功能以及使用方法。 首先,Spring JDBC的核心目标是简化传统的JDBC编程...
在本项目中,我们主要探讨的是如何将Spring MVC、Spring框架和Spring JDBC这三大核心组件进行整合,构建一个完整的Java Web应用程序。这个整合Demo旨在帮助开发者理解这些技术的协同工作方式,以及如何在实际开发中...
Spring JDBC是Spring框架的一个核心模块,它为Java数据库连接(JDBC)提供了一种抽象层,使得开发者可以更轻松地处理数据库操作。Spring JDBC模块的主要目标是减少对JDBC API的直接依赖,通过提供一种更加高级、易于...
这个简单的登录注册系统展示了Spring框架的强大功能,以及如何与其他技术如Spring MVC、Spring JDBC和MySQL协同工作,为开发者提供了一个完整的后端解决方案。通过深入理解并实践这些知识点,开发者能够构建更复杂的...
在本文中,我们将深入探讨如何使用Spring JDBC进行数据库操作,并结合使用不同的连接池技术,包括Spring自带的、C3P0、DBCP和Druid。此外,我们还将介绍一个自定义的行映射器工具类,它在处理数据库查询结果时能提供...
在Spring 2.5中,我们可以创建一个JdbcTemplate实例并注入DataSource,如下所示: ```java @Autowired private DataSource dataSource; @Bean public JdbcTemplate jdbcTemplate() { return new JdbcTemplate...
本项目提供了一个完整的整合实例,涵盖了基本的CRUD(创建、读取、更新、删除)操作,权限过滤以及分页查询功能。下面将详细介绍这些知识点。 首先,SpringMVC是Spring框架的一个模块,主要用于处理Web应用程序的...
3. 集成SpringJDBC:配置数据源,创建JdbcTemplate实例,然后在Service层中使用它进行数据库操作。 4. 连接数据库:设置数据库连接参数,如URL、用户名和密码,以及驱动类。 5. 编写Controller:定义处理HTTP请求...
- **配置JdbcTemplate**:在Spring配置文件中声明一个JdbcTemplate实例,并注入数据源。 - **执行SQL查询**:使用`query(String sql, RowMapper<T> rowMapper)`方法执行SQL查询,`RowMapper`接口用于将结果集中的...