spring boot 教程(五)使用JdbcTemplate访问数据库
2017-08-09 15:24
796 查看
今天用Spring Boot访问一下数据库,并且把数据返回到页面中,进行增删改查操作。主要介绍springboot通过jdbc访问关系型MySQL,通过spring的JdbcTemplate去访问。
创建mysql:
CREATE TABLE `users` (
`id` INT(11) NOT NULL AUTO_INCREMENT,
`name` VARCHAR(20) NOT NULL,
`age` INT,
PRIMARY KEY (`id`)
) ENGINE=INNODB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8;
INSERT INTO `users` VALUES ('1', 'aaa', 18);
INSERT INTO `users` VALUES ('2', 'bbb', 19);
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-jdbc</artifactId>
</dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.21</version>
</dependency>在
创建实体类public class Users {
private Integer id;
private String name;
private Integer age;创建service接口public interface UserServices {
int add(Users users);
int update(Users users);
int delete(int id);
Users findUsersById(int id);
List<Users> findAccountList();
}
创建dao实现@Repository
public class UserDao implements UserServices{
@Autowired
private JdbcTemplate jdbcTemplate;
@Autowired
private NamedParameterJdbcTemplate namedParameterJdbcTemplate_love;
@Override
public int add(Users users) {
return jdbcTemplate.update("insert into users(name, age) values(?, ?)",users.getName(),users.getAge());
}
@Override
public int update(Users users) {
return jdbcTemplate.update(" update users set name=?,age=? where id=?",users.getName(),users.getAge(),users.getId());
}
@Override
public int delete(int id) {
// TODO Auto-generated method stub
return 0;
}
@Override
public Users findUsersById(int id) {
// TODO Auto-generated method stub
return null;
}
@Override
public List<Users> findAccountList() {
return namedParameterJdbcTemplate_love.query("select *from users",new BeanPropertyRowMapper(Users.class));
}
}创建controller@RestController
@RequestMapping("/users")
public class UsersController {
@Autowired
UserServices userServices;
@RequestMapping(value = "/list",method = RequestMethod.GET)
public List<Users> getUsers(){
return userServices.findAccountList();
}
}
最后访问一下,看页面效果
创建mysql:
CREATE TABLE `users` (
`id` INT(11) NOT NULL AUTO_INCREMENT,
`name` VARCHAR(20) NOT NULL,
`age` INT,
PRIMARY KEY (`id`)
) ENGINE=INNODB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8;
INSERT INTO `users` VALUES ('1', 'aaa', 18);
INSERT INTO `users` VALUES ('2', 'bbb', 19);
数据源配置
在我们访问数据库的时候,需要先配置一个数据源,下面分别介绍一下几种不同的数据库配置方式。首先,为了连接数据库需要引入jdbc支持,在pom.xml中引入如下配置:<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-jdbc</artifactId>
</dependency>
连接生产数据源
以MySQL数据库为例,先引入MySQL连接的依赖包,在pom.xml中加入:<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.21</version>
</dependency>在
src/main/resources/application.properties中配置数据源信息
创建实体类public class Users {
private Integer id;
private String name;
private Integer age;创建service接口public interface UserServices {
int add(Users users);
int update(Users users);
int delete(int id);
Users findUsersById(int id);
List<Users> findAccountList();
}
创建dao实现@Repository
public class UserDao implements UserServices{
@Autowired
private JdbcTemplate jdbcTemplate;
@Autowired
private NamedParameterJdbcTemplate namedParameterJdbcTemplate_love;
@Override
public int add(Users users) {
return jdbcTemplate.update("insert into users(name, age) values(?, ?)",users.getName(),users.getAge());
}
@Override
public int update(Users users) {
return jdbcTemplate.update(" update users set name=?,age=? where id=?",users.getName(),users.getAge(),users.getId());
}
@Override
public int delete(int id) {
// TODO Auto-generated method stub
return 0;
}
@Override
public Users findUsersById(int id) {
// TODO Auto-generated method stub
return null;
}
@Override
public List<Users> findAccountList() {
return namedParameterJdbcTemplate_love.query("select *from users",new BeanPropertyRowMapper(Users.class));
}
}创建controller@RestController
@RequestMapping("/users")
public class UsersController {
@Autowired
UserServices userServices;
@RequestMapping(value = "/list",method = RequestMethod.GET)
public List<Users> getUsers(){
return userServices.findAccountList();
}
}
最后访问一下,看页面效果
相关文章推荐
- SpringCloud SpringBoot mybatis 分布式微服务(八)Spring Boot中使用JdbcTemplate访问数据库
- Spring Boot中使用JdbcTemplate访问数据库
- 扩建:Spring Boot中使用JdbcTemplate访问数据库
- Spring Boot中使用JdbcTemplate访问数据库
- Spring Boot入门教程2-1、使用Spring Boot+MyBatis访问数据库(CURD)注解版
- Spring Boot中使用JdbcTemplate访问数据库
- Spring Boot中使用JdbcTemplate访问数据库
- Spring Boot---(12)Spring Boot使用JdbcTemplate访问数据库
- Spring Boot中使用JdbcTemplate访问数据库
- Spring Boot中使用JdbcTemplate访问数据库
- 企业分布式微服务云SpringCloud SpringBoot mybatis (七)Spring Boot中使用JdbcTemplate访问数据库
- Spring Boot(6)— Spring Boot中使用JdbcTemplate访问数据库
- Spring Boot中使用JdbcTemplate访问数据库
- Spring Boot教程(二十九)使用JdbcTemplate操作数据库
- Spring Boot中使用JdbcTemplate访问数据库
- • Spring Boot - 进阶 数 据 访 问 -使用jdbcTemplate访问数据库
- 【SpringData】轻松愉快之玩转SpringData( 第2章 使用传统方式访问数据库 - JdbcTemplate 访问 )
- springboot学习(2)springboot使用JdbcTemplate完成对数据库的增删改查
- springboot使用JdbcTemplate完成对数据库的增删改查功能
- Spring Boot学习进阶笔记(二)-JdbcTemplate访问数据库