springboot使用jdbcTemplate案例
1 创建实体类
public class Student {
private Integer stuid;
private String stuname;
public Integer getStuid() {
return stuid;
}
public void setStuid(Integer stuid) {
this.stuid = stuid;
}
public String getStuname() {
return stuname;
}
public void setStuname(String stuname) {
this.stuname = stuname;
}
public Student(Integer stuid, String stuname) {
this.stuid = stuid;
this.stuname = stuname;
}
public Student(){}
public Student(String stuname) {
this.stuname = stuname;
}
}
2 创建Dao层(Dao层接口和实现类合并)
@Repository
public class StudentDao {
@Resource
private JdbcTemplate jdbcTemplate;
//查询所有学生信息
public List<Student> getStudent(){
RowMapper<Student> rowMapper=new RowMapper<Student>() {
@Override
public Student mapRow(ResultSet resultSet, int i) throws SQLException {
Student student=new Student(resultSet.getInt("stuid"),resultSet.getString("stuname"));
return student;
}
};
return jdbcTemplate.query("select * from student",rowMapper);
}
//删除学生信息
public int delStudent(Integer stuid){
return jdbcTemplate.update("delete from student where stuid=?",stuid);
}
//添加学生
public int insertStudent(Student student){
return jdbcTemplate.update("insert into student(stuname) values (?)",student.getStuname());
}
//修改学生信息
public int updaStudent(Student student){
return jdbcTemplate.update("update student set stuname=? where stuid=? ",student.getStuname(),student.getStuid());
}}
3 创建Service层(Service层 接口和实现类合并)
@Service
public class StudentService {
@Resource
private StudentDao studentDao;
//添加学生信息
public List<Student> getStudent(){
return studentDao.getStudent();
}
//删除学生信息
public int delStudent(Integer stuid){
return studentDao.delStudent(stuid);
}
//添加学生信息
public int insertStudent(Student student){
return studentDao.insertStudent(student);
}
//修改学生信息
public int updaStudent(Student student){
return studentDao.updaStudent(student);
}
}
4 创建application.yml文件
spring:
datasource:
driver-class-name: com.mysql.jdbc.Driver
url: jdbc:mysql:///springbootjpa
username: root
password: 123
5 创建Controller层
@RestController
public class StudentController {
@Resource
private StudentService studentService;
//查询所有学生信息
@RequestMapping("/getStudent")
public List<Student> getStudent(){
return studentService.getStudent();
}
//删除学生信息
@RequestMapping("/delStudent")
public int delStudent(){
return studentService.delStudent(8);
}
//添加学生信息
@RequestMapping("/insertStudent")
public int insertStudent(){
return studentService.insertStudent(new Student("bb"));
}
//修改学生信息
@RequestMapping("/updaStudent")
public int updaStudent(){
return studentService.updaStudent(new Student(3,"liuli"));
}
}
6 启动程序
@SpringBootApplication
public class StartSpringBoot {
public static void main(String[] args) {
SpringApplication.run(StartSpringBoot.class,args);
}
}
springboot使用jdbcTemplate案例的更多相关文章
- springboot之JdbcTemplate
springboot可以使用JdbcTemplate进行数据库访问,代码如下 添加pom文件 <parent> <groupId>org.springframework.boo ...
- SpringBoot使用JdbcTemplate
前言 本文是对SpringBoot使用JdbcTemplate操作数据库的一个介绍,,提供一个小的Demo供大家参考. 操作数据库的方式有很多,本文介绍使用SpringBoot结合JdbcTempla ...
- springboot 整合jdbcTemplate
springboot 整合jdbcTemplate 〇.搭建springboot环境(包括数据库的依赖) 一.添加依赖 如果导入了jpa的依赖,就不用导入jdbctemplete的依赖了jpa的依赖: ...
- springboot使用jdbcTemplate连接数据库
springboot使用jdbcTemplate连接数据库 1.pom.xml: <?xml version="1.0" encoding="UTF-8" ...
- 【使用篇二】SpringBoot使用JdbcTemplate操作数据库(12)
Spring对数据库的操作在jdbc上面做了深层次的封装,提供了JdbcTemplate模板. 在SpringBoot使用JdbcTemplate很简单: 引入数据库驱动包(mysql或oracle) ...
- Springboot 使用JdbcTemplate
Springboot 使用JdbcTemplate book package com.draymonder.book.jdbc; public class Book { private Integer ...
- SpringBoot整合Mybatis案例
SpringBoot整合Mybatis案例 2019/7/15以实习生身份入职公司前端做Angular ,但是感觉前途迷茫,于是乎学习一下Java的框架——SpringBooot. 参照大神博客:ht ...
- SpringBoot整合Swagger2案例,以及报错:java.lang.NumberFormatException: For input string: ""原因和解决办法
原文链接:https://blog.csdn.net/weixin_43724369/article/details/89341949 SpringBoot整合Swagger2案例 先说SpringB ...
- 关于SpringBoot集成JDBCTemplate的RowMapper问题
JdbcTemplate 是Spring提供的一套JDBC模板框架,利用AOP 技术来解决直接使用JDBC时大量重复代码的问题.JdbcTemplate虽然没有MyBatis 那么灵活,但是直接使用J ...
随机推荐
- AtCoder-arc060 (题解)
A - 高橋君とカード / Tak and Cards (DP) 题目链接 题目大意: 有 \(n\) 个数字,要求取出一些数字,使得它们的平均数恰好为 \(x\) ,问有几种取法. 大致思路: 只要 ...
- 嵌入式02 STM32 实验08 外部中断
一.中断 由于某个事件的发生,CPU暂停当前正在执行的程序,转而执行处理事件的一个程序.该程序执行完成后,CPU接着执行被暂停的程序.这个过程称为中断.(我正在捉泥鳅,但是我妈喊我回家吃饭,我必须回家 ...
- Forbidden (CSRF token missing or incorrect.):
CSRF令牌失效或丢失,Ajax请求页面报错(403 Forbidden ) csrftoken存在 页面响应为CSRF验证失败请求被中断,经过测试,该错误并非是没有在表单中加入{% csrf_tok ...
- Python-07-高阶函数
一.定义 默认满足以下两个条件中的一个就是高阶函数: 函数的传入参数是一个函数名 函数的返回值是一个函数名 二.map函数 map接收两个参数,一个函数和一个Iterable,map将接收到的函数作用 ...
- sublime配置python环境及快捷键
sublime配置python环境 参考链接:https://blog.csdn.net/VertigozZ/article/details/54574006 快捷键的配置:https://www.c ...
- 【题解】Luogu P5328 [ZJOI2019]浙江省选
原题传送门 看起来挺妙实际很暴力的一题 已知每个选手的分数都是平面上的直线 题目实际就是让我们求每条直线在整点处最大是第几大 我们考虑先对所有的直线进行半平面交(因为\(a_i\)都是正整数,所以比普 ...
- JVM与并发
1.jvm内存模型 硬件内存模型 处理器-->高速缓存-->缓存一致性协议-->主存 java内存模型 线程<-->工作内存<-->save和load < ...
- IDEA远程调试Ambari Server
1.配置端口 Ambari Server默认配置了服务端的debug参数,端口为5005.如果要修改端口,可以在/usr/sbin/ambari_server_main.py文件中对应地方修改,直接改 ...
- nginx反向代理、缓存及压缩配置实战
一.反向代理配置 (原文链接:http://www.studyshare.cn/blog/details/1155/0 ) 准备:两个项目分别使用端口8080,8081,只有一个备案域名,配置如下 ...
- Spring Security 解析(一) —— 授权过程
Spring Security 解析(一) -- 授权过程 在学习Spring Cloud 时,遇到了授权服务oauth 相关内容时,总是一知半解,因此决定先把Spring Security .S ...