Spring Boot(二):连接数据库

版权声明:本文为博主原创文章,非商用转载请注明出处: https://blog.csdn.net/qq_17058993/article/details/82344911

想在springboot项目中连接sqlserver数据库,获取表信息。

在这里先使用Tomcat JDBC 连接池使用JDBC 连接数据库,主要使用JdbcTemplate方法,记得添加相关依赖。

参考博客:

一、application.properties 配置数据库连接池参数

##数据库地址
spring.datasource.url=jdbc:sqlserver://172.16.18.86:1433;databaseName=student
##数据库用户名
spring.datasource.username=sa
##数据库密码
spring.datasource.password=Wang8087266
##数据库驱动
spring.datasource.driver-class-name=com.microsoft.sqlserver.jdbc.SQLServerDriver

二、在build.gradle中添加相关依赖

1、sqlserver

compile "com.microsoft.sqlserver:mssql-jdbc:6.1.0.jre8"

2、tomcat-jdbc 依赖 (为了使用JdbcTemplate )

compile('org.springframework.boot:spring-boot-starter-jdbc')

三、创建实体类 User

方法参照:https://blog.csdn.net/qq_17058993/article/details/82251253

public class TUser {

  private long id;
  private String name;


  public long getId() {
    return id;
  }

  public void setId(long id) {
    this.id = id;
  }


  public String getName() {
    return name;
  }

  public void setName(String name) {
    this.name = name;
  }

}

四、创建 UserServiceImpl 获取数据表信息

@Service
public class UserServiceImpl {

    @Autowired
    private JdbcTemplate jdbcTemplate;
    public List<TUser> getList() {

        String sql = "select * from T_user";
        return (List<TUser>) jdbcTemplate.query(sql, new RowMapper<TUser>() {
            @Override
            public TUser mapRow(ResultSet rs, int rowNum) throws SQLException {
                TUser tUser = new TUser();
                tUser.setId(rs.getInt("id"));
                tUser.setName(rs.getString("name"));
                return tUser;
            }
        });
    }
}

注意:sql语句 

select * from [user]

user是数据库保留关键字,不能直接使用。必须写成 select * from [user]

五、创建Controller

@Controller
public class HelloWorldApplication {

    @RequestMapping(value = "/index2")
    public String index() {
        System.out.println("返回index页面");
        //跳转到 templates 目录下的 index.html
        return "index";
    }

    @Autowired
    private UserServiceImpl userService;

    @RequestMapping("/list")
    @ResponseBody
    public List<TUser> list() {
        System.out.println("从数据库中读取user集合");
        return userService.getList();
    }
}

注意添加

@ResponseBody 返回json

六、浏览器访问

http://localhost:8080/list

获取到结果

[{"id":1,"name":"星期五"},{"id":2,"name":"星期六"}]

猜你喜欢

转载自blog.csdn.net/qq_17058993/article/details/82344911
今日推荐