使用spring boot时无法连接到mysql

时间:2017-07-25 14:34:31

标签: java html mysql spring-boot webserver

我想创建一个带有spring boot的Web服务器,但是当我尝试连接到我的数据库时,会出现一些错误。 以下是我的代码的一些部分。

@Controller
public class BackgroundController {

private JdbcTemplate jdbcTemplate;
@RequestMapping("/RankingList")
@ResponseBody
public String RankingList(Model model){
    String sql="select userName,score from user;";
    List<Map<String, Object>> list = new ArrayList<Map<String, Object>>();
    try {
        list = jdbcTemplate.queryForList(sql);
    }catch (Exception e){
        return e.toString();
    }//return "RankingList";
}

}

以下是pom.xml;

中的依赖项
<dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-jdbc</artifactId>
        </dependency>

以下是application.properties的一些部分,其中'em'是我的数据库的名称;

spring.datasource.url=jdbc:mysql://127.0.0.1:3306/em
spring.datasource.username=root
spring.datasource.password=qwerty
spring.datasource.driver-class-name=com.mysql.jdbc.Driver

以下是我的数据库的status

Connection id:          3
Current database:       em
Current user:           root@localhost
SSL:                    Not in use
Using delimiter:        ;
Server version:         5.7.18-log MySQL Community Server (GPL)
Protocol version:       10
Connection:             localhost via TCP/IP
Server characterset:    utf8
Db     characterset:    utf8
Client characterset:    utf8
Conn.  characterset:    utf8
TCP port:               3306

但是当我收到网址:http://localhost:4908/RankingList时,输出为java.lang.NullPointerException

我想得到帮助,我会非常感激。

1 个答案:

答案 0 :(得分:0)

您应该将@Autowired添加到private JdbcTemplate jdbcTemplate;