SpringBoot连接数据库JDBCTemplate方式

废话不多说,直接上代码了,因为在学习的过程中经常要用到,所以掌握下是必要的!
Maven项目创建好SpringBoot项目之后,就可以开始编写代码,注意各自的数据库连接地址是不一样的,但是大多数人是jdbc:mysql://localhost:30306/liangtest:

            第一步 : 导入jdbc的jar包依赖
                <!-- 添加jdbc依赖 -->
                <dependency>
                    <groupId>org.springframework.boot</groupId>
                    <artifactId>spring-boot-starter-jdbc</artifactId>
                </dependency>

            第二步 : 创建application.yml数据库配置文件 , 配置相关数据库信息
                #设置jdbc相关配置
                spring:
                  datasource:
                    url: jdbc:mysql://10.1.1.3:3306/liangtest
                    username: root
                    password: root
                    driver-class-name: com.mysql.jdbc.Driver
                    max-idle: 10
                    max-wait: 10000
                    min-idle: 5
                    initial-size: 5
                #设置运行端口
                server:
                  port: 8081
                  session:
                    timeout: 10
                #设置字符编码集
                  tomcat:
                    uri-encoding: utf-8
            第三步: 创建相关实体类 和 数据库表 
            第四步 :  创建Controller类 , 进行相关的操作

具体的代码如下:

package com.example.demo.com.example.controller;

import com.example.demo.pojp.User;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.jdbc.core.RowMapper;
import org.springframework.web.bind.annotation.*;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.List;
import java.util.Map;

/**
 * Created by rcc on 2017/12/11.
 */
@RestController
public class DbController {

    @Autowired
    private JdbcTemplate jdbcTemplate;

    //获取user列表
    @RequestMapping("/getUserList")
    @ResponseBody
    public  List<Map<String, Object>> getUserList(){
        String sql = "select * from user";
        List<Map<String, Object>> userList = jdbcTemplate.queryForList(sql);

        return userList;
    }

    //通过用户id查询
    @RequestMapping("/getUserById/{id}")
    @ResponseBody
    public User getUserById(@PathVariable Integer id){
        String sql = "select * from user where id="+id;
        RowMapper<User> mapper = new RowMapper<User>() {
            @Override
            public User mapRow(ResultSet rs, int i) throws SQLException {
                User user = new User();
                user.setId(rs.getLong("id"));
                user.setName(rs.getString("name"));
                user.setAge(rs.getInt("age"));
                return user;
            }
        };

        User user = jdbcTemplate.queryForObject(sql, mapper);
        return user;
    }

    //添加用户
    @RequestMapping(value = "/addUser/{name}/{age}" , method = RequestMethod.GET )
    public void addUser(@PathVariable String name , @PathVariable Integer age){
        String sql = "insert into user(name,age) values('"+name+"','"+age+"')";
        jdbcTemplate.execute(sql);
    }

    //删除用户
    @RequestMapping(value = "/delete/{id}" , method = RequestMethod.GET)
    public void deleteUser(@PathVariable Integer id){
        String sql = "delete from user where id = "+id;
        jdbcTemplate.execute(sql);
    }
    //修改用户
    @RequestMapping(value = "/update/{id}/{name}" , method = RequestMethod.GET)
    public void updateUser(@PathVariable Integer id,@PathVariable String name){
        String sql = "update user set name='"+name+"' where id='"+id+"'";
        jdbcTemplate.execute(sql);
    }

}

以上简单地实现了有关于数据库的增删改查功能,刚入手SpringBoot的同学可以参考下。

猜你喜欢

转载自blog.csdn.net/WJHelloWorld/article/details/78775996
今日推荐