Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/346.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java MySQL不会显示数据库中的用户,即使他们在场_Java_Mysql_Spring_Spring Boot_Mysql Error 1064 - Fatal编程技术网

Java MySQL不会显示数据库中的用户,即使他们在场

Java MySQL不会显示数据库中的用户,即使他们在场,java,mysql,spring,spring-boot,mysql-error-1064,Java,Mysql,Spring,Spring Boot,Mysql Error 1064,我对MySql有一个奇怪的问题。我用Spring Boot MySql做了一个小项目,但是当我尝试向数据库添加一个新用户时,它会给我一条成功消息,但是在MySql shell上,即使有,数据库中也不会出现任何东西(因为Get实际上会找到插入的用户)。现在我不明白问题是什么。我附上申请表。我的Spring项目的属性 每次我请求Get时,它都会返回此消息: D:\>curl -G localhost:8080/demo/first -d name=Biagio {"name"

我对MySql有一个奇怪的问题。我用Spring Boot MySql做了一个小项目,但是当我尝试向数据库添加一个新用户时,它会给我一条成功消息,但是在MySql shell上,即使有,数据库中也不会出现任何东西(因为Get实际上会找到插入的用户)。现在我不明白问题是什么。我附上申请表。我的Spring项目的属性

每次我请求Get时,它都会返回此消息

D:\>curl -G localhost:8080/demo/first -d name=Biagio
{"name":"Biagio","timestamp":"2020-10-05T08:54:18.623+00:00","email":"biagio@gmal.com","surname":"Biagio2"}
+----+------------------------+----------+----------------------------+---------+
| id | email                  | name     | stmp                       | surname |
+----+------------------------+----------+----------------------------+---------+
| 32 | mirketto90@yahoo.it    | Mirko    | 2020-10-01 12:31:47.827000 | NULL    |
| 36 | biagio@gmail.com       | Biagio   | 2020-10-01 16:31:31.687000 | Vaso    |
| 37 | biagio@gmail.com       | Biagio   | 2020-10-01 16:31:50.077000 | Vaso    |
| 38 | biagio@gmail.com       | Biagio   | 2020-10-01 18:35:45.992000 | Vaso    |
| 39 |                        | Mirko    | 2020-10-02 13:24:05.840000 | Vaso    |
| 40 | mirkoparioli@gmail.com | Mirko    | 2020-10-02 13:24:23.383000 | Vaso    |
| 47 | giovanni@gmal.com      | Giovanni | 2020-10-05 12:11:05.997000 | John    |
+----+------------------------+----------+----------------------------+---------+
我的数据库

D:\>curl -G localhost:8080/demo/first -d name=Biagio
{"name":"Biagio","timestamp":"2020-10-05T08:54:18.623+00:00","email":"biagio@gmal.com","surname":"Biagio2"}
+----+------------------------+----------+----------------------------+---------+
| id | email                  | name     | stmp                       | surname |
+----+------------------------+----------+----------------------------+---------+
| 32 | mirketto90@yahoo.it    | Mirko    | 2020-10-01 12:31:47.827000 | NULL    |
| 36 | biagio@gmail.com       | Biagio   | 2020-10-01 16:31:31.687000 | Vaso    |
| 37 | biagio@gmail.com       | Biagio   | 2020-10-01 16:31:50.077000 | Vaso    |
| 38 | biagio@gmail.com       | Biagio   | 2020-10-01 18:35:45.992000 | Vaso    |
| 39 |                        | Mirko    | 2020-10-02 13:24:05.840000 | Vaso    |
| 40 | mirkoparioli@gmail.com | Mirko    | 2020-10-02 13:24:23.383000 | Vaso    |
| 47 | giovanni@gmal.com      | Giovanni | 2020-10-05 12:11:05.997000 | John    |
+----+------------------------+----------+----------------------------+---------+
我确信我使用的是正确的数据库(db_示例),这是我的

@SpringBootApplication
public class AccessingDataMysqlApplication {

  public static void main(String[] args) {
    SpringApplication.run(AccessingDataMysqlApplication.class, args);
  }

}
@RestController@RequestMapping(“/演示”)
公共类主控制器{
@自动连线
私人用户服务;
@交易的
//@RequestMapping(value=“/add/”,method=RequestMethod.POST)
@后期映射(路径=“/demo/add”)
公共字符串addNewUser(@PathVariable(“name”)字符串名称,@PathVariable(“email”)字符串电子邮件,@PathVariable(“姓氏”)字符串姓氏){
UserDto n=新的UserDto();
n、 集合名(名称);
n、 setSurname(姓氏);
n、 设置电子邮件(电子邮件);
userService.create(n);
返回“用户保存在数据库中”;
}
@抑制警告({
“原始类型”,
“未选中”
})
//@RequestMapping(value=“/fetchUser/{name}”,method=RequestMethod.GET)
@GetMapping(“/demo/first”)
公共响应属性fetchUser(@PathVariable(“name”)字符串名){
System.out.println(名称);
试一试{
UserDto namefound=userService.findFirstByName(名称);
System.out.println(“找到名称”);
ResponseEntityuser=newresponseEntity(namefound,HttpStatus.OK);
返回用户;
}捕获(Noresultne异常){
System.out.println(“未找到用户”);
返回新的ResponseEntity(“未找到名为“+name,HttpStatus.not_found”的用户);
}
}
}
  • 用于将用户添加到数据库中
    在PostMapping中修改您的路径

    @PostMapping(path=“/demo/add”)

    @PostMapping(path=“/demo/add/{name}/{email}/{names}”)

    这是因为在您的addNewUser方法中,您接受名称、电子邮件、姓氏为PathVariable
    为了让@PathVariable稍微清晰一点,它是一个注释,指示应该匹配哪个URI模板变量的方法参数

    以您的情况为例,
    {name}-是URI模板变量 addNewUser方法中的Stringname是方法参数(该别名可以在方法的其余部分使用{name}值)

    您必须像这样访问api

     localhost:8080/demo/add/Biagio/biagio@gmail.com/Vaso
    
     localhost:8080/demo/first/Biagio
    
  • 按名称获取用户
    在GetMapping中修改路径
    与上述解释类似

    @GetMapping(“/demo/first”)
    @GetMapping(“/demo/first/{name}”)

    您必须像这样访问api

     localhost:8080/demo/add/Biagio/biagio@gmail.com/Vaso
    
     localhost:8080/demo/first/Biagio
    

  • 我自己解决了这个问题。当@Autowired在UserServiceImpl上运行时,有太多的“私有”内容。这个项目是公平的,并且连接良好。如有任何问题,请随时写信给我。

    我看不出有什么问题。您对数据库的期望是什么?如果您看到,在我的数据库中没有姓为Biagio2的Biagio,只有我手动输入的名称。通过POST输入的信息即使在那里也不可见,我现在明白了,获取的是确认信息。您可以打印出用户id,然后检查数据库中是否存在此id。我打印了id,但它不存在,有什么想法吗?即使这样做也不会改变不查看数据库的问题仍然存在的事实