SpringBoot整合数据库访问层的实战

一、springboot整合使用JdbcTemplate

1.pom依赖

        
        
            org.springframework.boot
            spring-boot-starter-jdbc
        
        
        
            mysql
            mysql-connector-java
            5.1.21
        

2.application.yml新增配置

spring:
  datasource:
    url: jdbc:mysql://localhost:3306/test
    username: root
    password: root
    driver-class-name: com.mysql.jdbc.Driver

3.建表sql

CREATE TABLE `users` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `name` varchar(32) NOT NULL COMMENT '用户名称',
  `age` int(11) DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8;

4.UserService

@RestController
public class UserService {

    @Autowired
    private JdbcTemplate jdbcTemplate;

    @RequestMapping("/insertUser")
    public String insertUser(String name,Integer age){
        int update = jdbcTemplate.update("insert into users values(null,?,?);", name, age);
        return update > 0 ? "success" : "false";
    }
}

5.浏览器访问

http://127.0.0.1:8080/insertUser?name=你好&age=21

SpringBoot整合数据库访问层的实战_第1张图片

SpringBoot整合数据库访问层的实战_第2张图片

二、整合mybatis框架查询

1.pom依赖

    
    
        org.mybatis.spring.boot
        mybatis-spring-boot-starter
        1.1.1
    

2.实体类UserEntity

public class UserEntity {
    private String userName;
    private Integer age;
    private Integer id;
	//GET...SET...省略
}

3.UserMapper接口

public interface UserMapper {
    @Select("select id as id,name as userName,age as age from users where id = #{id};")
    UserEntity selectByUserId(@Param("id") Integer id);
}

4.UserService

@RestController
public class UserService {
    @Autowired
    private UserMapper userMapper;
    @RequestMapping("/mybatisFindById")
    public UserEntity mybatisFindById(Integer id){
        return userMapper.selectByUserId(id);
    }
}

5.app启动

注意:这里需要加注解@MapperScan("com.sjyl.mapper")来告诉spring接口mapper的扫包范围

@SpringBootApplication
@MapperScan("com.sjyl.mapper")
public class App {
    public static void main(String[] args) {
        SpringApplication.run(App.class);
    }
}

测试连接:http://127.0.0.1:8080/mybatisFindById?id=3

SpringBoot整合数据库访问层的实战_第3张图片

三、整合mybatis框架插入

1.UserMapper添加insertUser

public interface UserMapper {

    @Insert("Insert into users values (null,#{userName},#{age});")
    int insertUser(@Param("userName") String userName,@Param("age") Integer age);

    @Select("select id as id,name as userName,age as age from users where id = #{id};")
    UserEntity selectByUserId(@Param("id") Integer id);
}

2.UserService添加insertUserMybatis

@RestController
public class UserService {
    @Autowired
    private UserMapper userMapper;

    @RequestMapping("/mybatisFindById")
    public UserEntity mybatisFindById(Integer id){
        return userMapper.selectByUserId(id);
    }

    @RequestMapping("/insertUserMybatis")
    public String insertUserMybatis(String userName,Integer age){
        int insert = userMapper.insertUser(userName,age);
        return insert > 0 ? "success" : "false";
    }
}

测试连接:http://127.0.0.1:8080/insertUserMybatis?userName=%E5%BC%A0%E4%B8%89&age=21

SpringBoot整合数据库访问层的实战_第4张图片

 到此这篇关于SpringBoot整合数据库访问层的实战的文章就介绍到这了,更多相关SpringBoot 数据库访问层内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

你可能感兴趣的:(SpringBoot整合数据库访问层的实战)