上一篇文章中我们,完成了对数据的增删改查,这一篇我们学习使用来实现同样的操作。
是框架自带的对JDBC操作的封装,目的是提供统一的模板方法使对数据库的操作更加方便、友好,效率也不错。但是功能还是不够强大jdbc连接数据库,在实际应用中通常和、等框架混合使用。
新建一个MySQL数据库,这里数据库名为,建立数据表,作为我们示例操作的表对象。
信息如下:
DROP TABLE IF EXISTS `user_info`;
CREATE TABLE `user_info` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`username` varchar(255) DEFAULT NULL,
`password` varchar(255) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=3 DEFAULT CHARSET=utf8;
-- ----------------------------
-- Records of user_info
-- ----------------------------
INSERT INTO `user_info` VALUES ('1', 'Java之音', '12345');
INSERT INTO `user_info` VALUES ('2', '张无忌', '123');
数据库及表创建成功后,回到我们的工程中
第零步,引入的依赖包:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-jdbc</artifactId>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
</dependency>
第一步,在yml配置文件中配置数据库连接信息:
spring:
datasource:
driver-class-name: com.mysql.jdbc.Driver
url: jdbc:mysql://localhost:3306/springboot?useUnicode=true&characterEncoding=UTF-8&useSSL=false
username: root
password: 1011
第二步,创建一个实体类:
package com.javazhiyin;
/**
* Created by 57783 on 2018/7/4.
*/
public class UserInfo {
private Integer id;
private String username;
private String password;
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public UserInfo(){
}
}
第三步,新建一个,实现对数据库的增删改查操作:
package com.javazhiyin;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import org.springframework.jdbc.core.JdbcTemplate;
import java.util.List;
import java.util.Map;
/**
* Created by 57783 on 2018/7/4.
*/
@RestController
public class UserInfoController {
@Autowired
private JdbcTemplate jdbcTemplate;
/**
* 查
* @return
*/
@GetMapping(value = "/list")
public List<Map<String, Object>> getUserList(){
String sql = "select * from user_info";
List<Map<String, Object>> list = jdbcTemplate.queryForList(sql);
return list;
}
/**
* 增
* @param username
* @param password
* @return
*/
@PostMapping(value = "/addUser")
public String addUser(@RequestParam("username") String username,
@RequestParam("password") String password){
String sql = "insert into user_info (username,password) value (?,?)";
Object args[] = {username,password};
int temp = jdbcTemplate.update(sql, args);
if(temp > 0) {
return "新增成功";
}
return "新增失败";
}
/**
* 改
* @param id
* @param username
* @param password
* @return
*/
@PutMapping(value = "updUser/{id}")
public UserInfo updUser(@PathVariable("id") Integer id,
@RequestParam("username") String username,
@RequestParam("password") String password){
String sql = "update user_info set username = ?,password = ? where id = ?";
Object args[] = {username,password,id};
int temp = jdbcTemplate.update(sql, args);
UserInfo user = new UserInfo();
if(temp > 0) {
user.setId(id);
user.setUsername(username);
user.setPassword(password);
return user;
}
return user;
}
/**
* 删
* @param id
*/
@DeleteMapping(value = "delUser/{id}")
public String delUser(@PathVariable("id") Integer id){
UserInfo user = new UserInfo();
user.setId(id);
String sql = "delete from user_info where id = ?";
Object args[] = {id};
int temp = jdbcTemplate.update(sql, args);
if(temp > 0) {
return "删除成功";
}
return "删除出现错误";
}
}
测试上述代码jdbc连接数据库,这里我们使用测试,非常方便:
查询测试:
新增测试:
更新测试:
删除测试:
我们可以看到可以全部测试通过,完成了使用进行增删改查的操作。
关注后端技术精选,提供优质价值阅读
限时特惠:本站持续每日更新海量各大内部创业课程,一年会员仅需要98元,全站资源免费下载
点击查看详情
站长微信:Jiucxh
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。