【发布时间】:2019-09-19 11:08:21
【问题描述】:
我正在创建一个 Spring Boot API,它基本上要求用户创建一个帐户。 帐户详细信息显示在表格上。 我想从表单中获取详细信息并将其保存到数据库(MYSQL)中。
模型类如下:
@Table(name = "user")
public class User {
@Id
@Column(name = "ID")
private int ID;
@Column(name = "Fname")
private String fName;
@Column(name = "Lname")
private String lName;
@Column(name = "dob")
private String dob;
@Column(name = "email")
private String email;
@Column(name = "pWord")
private String pWord;
}
控制器类如下:
public class MController {
@Autowired
private UserRepository userRepository;
@PostMapping("/successSignUp")
public String dataToDB(@ModelAttribute("User") User formData, Model model) {
userRepository.save(new User(formData.getFname(), formData.getLname(), formData.getDob(), formData.getEmail(), formData.getPassword()));
model.addAttribute("user", new User());
return "welcomeUser";
}
当我执行此代码时,我收到以下错误:
java.sql.SQLSyntaxErrorException: Unknown column 'p_word' in 'field list'
我在这里做错了什么? 提前致谢。
【问题讨论】:
-
你认为这到底是什么意思:'字段列表'中的未知列'p_word''是什么意思?
-
@AniketSahrawat,我在数据库中有一个名为
pWord的列,这就是我在 User 类中使用@Column(name="pWord)的原因。 -
你没有错过
@Entity注释吗? -
你能告诉我们你的
repository吗? -
能否也附上 DB 列?@Paplusc 是的,@Entity 也应该在那里。
标签: java mysql spring spring-boot spring-data-jpa