プロジェクションを使用しようとしていて、次のエラーが発生しています。問題が何であるかはわかりません。ここでSpringデータJPAマッピング例外JDBCタイプのダイアレクトマッピング:-9
は投影である:ここでは
public interface UserMini {
Long getApproverKey();
String getEmailAddress();
String getFirstName();
String getLastName();
Long getUserKey();
String getUserName();
}
は、クエリは、リポジトリにある:ここでは
@RestResource(path="getUserMini")
@Query(value="SELECT approverKey, emailAddress, firstName, lastName, userKey, userName FROM [dbo].BdmUser WHERE userKey = :userKey ", nativeQuery=true)
UserMini getUserMini(@Param("userKey") long userKey);
は、Entity
@Table (name="[BdmUser]")
@Entity
public class BdmUser {
@Id
@GeneratedValue(strategy=GenerationType.IDENTITY)
private Long userKey;
private Long priceListKey;
private String firstName;
private String lastName;
private String userName;
private String emailAddress;
private String password;
private Boolean active;
private Long approverKey;
private BigDecimal orderLimit;
private Long salesOfficeKey;
private Long reportsToId;
private Boolean requiresOrderApproval;
private Date lastLoginDate;
private String rowIsCurrent;
private Date rowStartDate;
private Date rowEndDate;
@Column(name="HashByteValueType1", updatable=false, insertable=false)
private String hashByteValueType1;
@Column(name="HashByteValueType2", updatable=false, insertable=false)
private String hashByteValueType2;
private String rowChangeReason;
@Column(name="DQScoreKey")
private Integer dqScoreKey;
private Integer insertAuditKey;
private Integer updateAuditKey;
-9は 'java.sql.Types.NVARCHAR'です。かなり一般的です。どのような方言を使っていますか? –
sqlserver.datasource.databaseプラットフォーム= org.hibernate.dialect.SQLServerDialect – Don
\t パブリッククラスCustomSQLServer2012Dialectは{ \tパブリックCustomSQLServer2012Dialect(){ をSQLServer2012Dialectを拡張... SQLServer2012Dialectに設定して無駄にカスタム方言を作成してみました\t super(); \t registerHibernateType(NVARCHAR、StringType.INSTANCE.getName()); \t} \t} – Don