java—从表单后端获取数据

brvekthn  于 2021-06-29  发布在  Java
关注(0)|答案(2)|浏览(318)

我在一个项目中有一个javaspring启动应用程序,在另一个项目中有一个angular(两个不同的端口)。我想做的是在angular项目中创建一个表单,用户可以在文本字段中输入日期,当用户单击find按钮时,日期字符串变量应该通过RESTAPI(没有数据库)发送到使用HTTPPOST服务的后端java程序。到目前为止,我所做的是,我用html创建了一个基本表单,并用java初始化了一个数组列表(datecheck),以获取从客户端到后端的日期。由于我是新来的,所以我对这方面的知识很少。如果你能检查我的代码并指导我,那就太好了。谢谢您。
----获取数据的java代码----

@CrossOrigin("http://localhost:4200")
@PostMapping("/dateReq")
public ArrayList<String> getDates(){
    return PremiereLeagueManager.dateCheck;

}

------棱角分明的

uz75evzq

uz75evzq1#

--
----应用组件.ts-------

import { Component } from '@angular/core';
import{HttpClient} from '@angular/common/http'
export interface PeriodicElement {}

 @Component({
   selector: 'app-root',
   templateUrl: './app.component.html',
   styleUrls: ['./app.component.css']
 })
 export class AppComponent {
  title: any;
  constructor(private http:HttpClient) { }
  onSubmit(data){
  this.http.post('http://localhost:8083/dateReq',data)
  .subscribe((data)=>{
    console.log("result",data)
  })
 }
}

-------应用程序组件.html--------

<form #datePost="ngForm" (ngSubmit)="onSubmit(datePost.value)" >
<input type="text" name="date" ngModel placeholder="12/12/2012">
<button type="submit">Find</button>
</form>
jrcvhitl

jrcvhitl2#

我想你应该用 @DateTimeFormat 后端上的注解以接收来自请求的日期
使用你需要的日期模式

@CrossOrigin("http://localhost:4200")
 @PostMapping("/dateReq")
 public ArrayList<String> getDates(@RequestParam("date") @DateTimeFormat(pattern = "dd.MM.yyyy") Date date) {
        // ...
  }

这里有更多信息https://www.baeldung.com/spring-date-parameters

相关问题