spring boot 教程(五)使用JdbcTemplate访问数据库

来源:互联网 发布:js在线编辑器 编辑:程序博客网 时间:2024/05/24 07:13

今天用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);

数据源配置

在我们访问数据库的时候,需要先配置一个数据源,下面分别介绍一下几种不同的数据库配置方式。

首先,为了连接数据库需要引入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实现

@Repositorypublic class UserDao implements UserServices{@Autowired    private JdbcTemplate jdbcTemplate;@Autowiredprivate NamedParameterJdbcTemplate namedParameterJdbcTemplate_love;@Overridepublic int add(Users users) {return jdbcTemplate.update("insert into users(name, age) values(?, ?)",users.getName(),users.getAge());}@Overridepublic int update(Users users) {return jdbcTemplate.update(" update users set name=?,age=? where id=?",users.getName(),users.getAge(),users.getId());}@Overridepublic int delete(int id) {// TODO Auto-generated method stubreturn 0;}@Overridepublic Users findUsersById(int id) {// TODO Auto-generated method stubreturn null;}@Overridepublic List<Users> findAccountList() {return namedParameterJdbcTemplate_love.query("select *from users",new BeanPropertyRowMapper(Users.class));}}
创建controller

@RestController@RequestMapping("/users")public class UsersController {@AutowiredUserServices userServices;@RequestMapping(value = "/list",method = RequestMethod.GET)    public  List<Users> getUsers(){       return userServices.findAccountList();    }}

最后访问一下,看页面效果







原创粉丝点击