У меня есть класс модели, как показано ниже:
@Entity
@Table(name = "User")
public class UserModel implements Serializable{
private static final long serialVersionUID = 204096185700135310L;
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "user_id", unique = true, nullable = false)
private Integer userId;
@Column(name = "user_login_name")
private String userLoginName;
@Column(name = "user_email_id")
private String userEmailId;
@Column(name = "user_password")
private String userPassword;
}
, и я пишу критерии с проекцией для получения userLoginName на основе userId, например SELECT user_login_name from USER, где user_id = 1:
public UserModel getUserByUserName(Integer userId) {
return (UserModel) HibernateService.getSession(sessionFactory)
.createCriteria(UserModel.class)
.setProjection(Projections.projectionList()
.add(Projections.property("userLoginName"), "userLoginName"))
.add(Restrictions.eq(AppConstant.USER_Id, userId))
.uniqueResult();
}
Но он выбрасывает java .lang.String не может быть преобразован в исключение com.app.aus.model.UserModel . может кто-нибудь помочь мне здесь