只需低头努力,剩下的交给时光,时间会公平地帮你处理一切
前言
我们学习Java的时候,可能最开始都会学习使用JDBC连接数据库,那么下面我们看一下在SpringBoot中如何使用JDBC,可能很多人习惯了使用框架,已经不记得如何使用JDBC来操作数据库了,说的就是你,有木有?
环境说明:
- 数据库:mysql
- springboot 2.4.3
下面通过spring的JdbcTemplate来演示一下如何操作mysql数据库
1、建表
create table tb_user
(
user_id bigint not null auto_increment PRIMARY KEY comment '用户ID',
user_name varchar(20) not null comment '用户名称',
user_address varchar(100) not null comment '用户地址',
age int not null comment '年龄',
create_time timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
update_time timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间'
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='用户信息表'
insert into tb_user(user_name,user_address,age) values('user01','武汉市洪山区',18);
insert into tb_user(user_name,user_address,age) values('user02','武汉市汉阳区',30);
2、加入依赖
compile 'org.springframework.boot:spring-boot-starter-jdbc:2.4.3'
compile 'mysql:mysql-connector-java:5.1.45'
3、mysql配置
spring:
datasource:
driver-class-name: com.mysql.jdbc.Driver
url: jdbc:mysql://localhost:3306/testdb1?useUnicode=true&characterEncoding=UTF8
username: root
password: 123456
4.java代码
定义一个实体类
public class User {
private Integer userId;
private String userName;
private String userAddress;
private Integer age;
private Timestamp createTime;
private Timestamp updateTime;
/**setter getter **/
}
定义dao接口
public interface UserDao {
List<User> getList();
int add(User user);
}
具体的dao实现,直接注入JdbcTemplate操作数据库
@Repository
public class UserDaoImpl implements UserDao{
@Autowired
private JdbcTemplate jdbcTemplate;
@Override
public List<User> getList() {
return jdbcTemplate.query("select * from tb_user",new Object[]{},new BeanPropertyRowMapper(User.class));
}
@Override
public int add(User user) {
return jdbcTemplate.update("insert into tb_user(user_name,user_address,age) values(?,?,?)",user.getUserName(),user.getUserAddress(),user.getAge());
}
}
写个接口测试一下查询和新增数据
@RestController
@RequestMapping("/user")
public class UserController {
@Autowired
private UserDao userDao;
@GetMapping("/getList")
public List<User> getUserList(){
return userDao.getList();
}
@PostMapping("/addUser")
public String addUser(@RequestBody User user){
userDao.add(user);
return "添加成功";
}
}
写个main方法来启动项目
@SpringBootApplication
public class JdbcMain {
public static void main(String[] args){
SpringApplication.run(JdbcMain.class,args);
}
}
运行结果
查询User列表
新增User
如果感觉对你有些帮忙,请收藏好,你的关注和点赞是对我最大的鼓励!
如果想跟我一起学习,坚信技术改变世界,请关注【Java天堂】公众号,我会定期分享自己的学习成果,第一时间推送给您
源码已上传至https://github.com/pzjtian/springboot-demo,请持续关注~