'duplicated bit columns in table mysql

I can't bind a variable in the model to a column in the database, when creating a variable in the model, spring creates a new column. I need this to implement locking using spring security. How to solve such a problem?

MySQL query:

CREATE TABLE users(
  id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
  nickname VARCHAR(255) NOT NULL UNIQUE,
  email VARCHAR(255) NOT NULL UNIQUE,
  phone VARCHAR(255) NOT NULL UNIQUE,
  password VARCHAR(255) NOT NULL,
  accountNonLocked BIT NOT NULL DEFAULT 1
)
ENGINE=InnoDB;

Model:

@Getter
@Setter
@Builder
@AllArgsConstructor
@NoArgsConstructor
@Entity
@Table(name = "users")
public class User {
    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    @Column(name = "id")
    private int id;

    @Column(name = "nickname")
    @Length(min = 5, max = 12,
            message = "Имя должно быть не меньше 5 и не более 12 символов")
    private String nickname;

    @Column(name = "password")
    @Pattern(regexp = "^(?=.*[0-9])(?=.*[a-z])(?=\\S+$).{6,}$",
            message = "Пароль должен содержать хотя бы 1 цифру и 1 символ и быть не менее 6 символов")
    private String password;

    @Column(name = "phone")
    @Pattern(regexp = "^((8|\\+7)[\\- ]?)?(\\(?\\d{3}\\)?[\\- ]?)?[\\d\\- ]{7,10}$",
            message = "Введите действующий номер телефона")
    private String phone;

    @Column(name = "email")
    @NotBlank(message = "Введите адрес вашей почты")
    @Email(message = "Введите действующий адрес почты")
    private String email;

    @Column(name = "accountNonLocked")
    private boolean accountNonLocked;

    @ManyToMany(cascade = CascadeType.MERGE, fetch = FetchType.EAGER)
    @JoinTable(name = "user_roles", joinColumns = @JoinColumn(name = "user_id"),
            inverseJoinColumns = @JoinColumn(name = "role_id"))
    private Set<Role> roles;

    @OneToMany(mappedBy="user", cascade = CascadeType.ALL, fetch = FetchType.LAZY)
    private List<Order> orders;

}

enter image description here



Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source