Spring data JPA solo una clave compuesta es problema de incremento automático
Estoy usando la base de datos MySQL.
En mi tabla i hay dos cuatro claves principales, de las cuales una se incrementa automáticamente.
@Embeddable
public class EmployeeId implements Serializable {
/**
*
*/
private static final long serialVersionUID = 1L;
@Column(name = "id", nullable = false)//
This is just Pk in mysql table
**private int id;**
// I have tried and @GeneratedValue(strategy = GenerationType.IDENTITY),
@GeneratedValue(strategy = GenerationType.IDENTITY)
//and @GeneratedValue(strategy = GenerationType.TABLE)
//@GeneratedValue(strategy = GenerationType.AUTO, generator = "id") @SequenceGenerator(name = "id", sequenceName = "id")
**this is auto incremented and pk in mysql table**
@Column(name = "gender_key", nullable = false)
private int gender_key;
}
@Entity
@Table(name = "employee")
public class employee {
@EmbeddedId
private EmployeeId employeeId;
private String emp_name;
private String mobile_no;
employee() {
}}
public interface employeeRepository extends
JpaRepository<employee, EmployeeId> {
}
En Mi controlador, quiero id después de employeeRepository.save (bean); método porque quiero guardar esa identificación en db diferente.
logger.info ("gender_key es --->" + gender_key);
Pero siempre obtengo el valor 0 de gender_key.
Lo que he intentado es:
bean = employeeRepository.save(bean)
int gender_key= bean.getGender_key();
logger.info("gender_keyis --- > "+gender_key);
Pero aún así el valor de gender_key es 0 (cero). O cualquier consulta que tenga que escribir en el repositorio.
¿Cómo puedo obtener el valor de incremento automático de gender_key que se inserta en la tabla MySQL?
Por favor ayuda.
Gracias por adelantado.