使用jdbctemplate简单实现学生表student的增删改查
时间: 2023-12-25 15:05:35 浏览: 104
jdbc实现增删改查功能
使用JdbcTemplate可以简化数据库操作,以下是一个简单的示例,演示如何使用JdbcTemplate实现学生表student的增删改查。
首先,你需要在你的项目中引入Spring JDBC依赖。假设你使用Maven管理你的项目,你可以在pom.xml文件中添加以下依赖:
```xml
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-jdbc</artifactId>
</dependency>
```
接下来,你需要配置数据库连接。在Spring Boot项目中,你可以在`application.properties`或`application.yml`文件中添加以下配置:
```properties
spring.datasource.url=jdbc:mysql://localhost:3306/db_name
spring.datasource.username=db_username
spring.datasource.password=db_password
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
```
然后,你可以创建一个`Student`类来表示学生实体:
```java
public class Student {
private int id;
private String name;
private int age;
// 省略构造方法、getter和setter方法
}
```
接下来,你可以创建一个`StudentDao`接口来定义学生表的增删改查操作:
```java
public interface StudentDao {
List<Student> getAllStudents();
Student getStudentById(int id);
void addStudent(Student student);
void updateStudent(Student student);
void deleteStudent(int id);
}
```
然后,你可以创建一个实现`StudentDao`接口的类`StudentDaoImpl`:
```java
@Repository
public class StudentDaoImpl implements StudentDao {
@Autowired
private JdbcTemplate jdbcTemplate;
@Override
public List<Student> getAllStudents() {
String sql = "SELECT * FROM student";
return jdbcTemplate.query(sql, new BeanPropertyRowMapper<>(Student.class));
}
@Override
public Student getStudentById(int id) {
String sql = "SELECT * FROM student WHERE id=?";
return jdbcTemplate.queryForObject(sql, new Object[]{id}, new BeanPropertyRowMapper<>(Student.class));
}
@Override
public void addStudent(Student student) {
String sql = "INSERT INTO student(name, age) VALUES (?, ?)";
jdbcTemplate.update(sql, student.getName(), student.getAge());
}
@Override
public void updateStudent(Student student) {
String sql = "UPDATE student SET name=?, age=? WHERE id=?";
jdbcTemplate.update(sql, student.getName(), student.getAge(), student.getId());
}
@Override
public void deleteStudent(int id) {
String sql = "DELETE FROM student WHERE id=?";
jdbcTemplate.update(sql, id);
}
}
```
最后,你可以在你的服务类或控制器中使用`StudentDao`接口来操作学生表:
```java
@Service
public class StudentService {
@Autowired
private StudentDao studentDao;
public List<Student> getAllStudents() {
return studentDao.getAllStudents();
}
public Student getStudentById(int id) {
return studentDao.getStudentById(id);
}
public void addStudent(Student student) {
studentDao.addStudent(student);
}
public void updateStudent(Student student) {
studentDao.updateStudent(student);
}
public void deleteStudent(int id) {
studentDao.deleteStudent(id);
}
}
```
这样,你就可以通过调用`StudentService`中的方法来实现学生表的增删改查操作了。
以上是一个简单的示例,你可以根据你的实际需求进行适当的修改和扩展。希望对你有所帮助!
阅读全文