W mojej klasie Program Java ..Hibernate Bean zdefiniować jedną kolumnę jak ..Jak uniknąć "Dane obcięte dla kolumny" w bazie danych Mysql Korzystanie z java?
TimtableVO.java
@Column(name="REPEAT_DAYS")
private WeekdayType repeatDays;//hear WeekdayType is Enum Class
I w moim klasy usługi Używam tego TimetableVO.java fasoli jako klasę. .
to moja klasa usług:
public void createEvent(TimetableVO timetableVO) {
WeekdayType weekday = null;
for (String day : timetableVO.getTemp().split(",")) {
weekday = WeekdayType.valueOf(day);
}
timetableVO.setRepeatDays(weekday);
userDAO.createEvent(timetableVO);
}
A moja klasa DAO jestem ja Obiekt nserting timetableVO ..
public void createEvent(TimetableVO timetableVO) throws DataAccessException {
entityManager.persist(timetableVO);
}
Ale Wyjątek przyjdzie ..
Exception: Caused by: java.sql.BatchUpdateException: Data truncated for column 'REPEAT_DAYS' at row 1
at com.mysql.jdbc.PreparedStatement.executeBatchSerially(PreparedStatement.java:2045)
at coHibernate: insert into EC_TIMETABLE (CLASS_DURATION, COURSE_DURATION, COURSE_FEE, END_DATE, REPEAT_COUNT, REPEAT_DAYS, REPEAT_TYPE, SEARCH_KEY, START_DATE, S_ID) values (?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
m.mysql.jdbc.PreparedStatement.executeBatch(PreparedStatement.java:1468)
at org.hibernate.jdbc.BatchingBatcher.doExecuteBatch(BatchingBatcher.java:70)
at org.hibernate.jdbc.AbstractBatcher.executeBatch(AbstractBatcher.java:268)
... 65 more
Caused by: java.sql.SQLException: Data truncated for column 'REPEAT_DAYS' at row 1
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1073)
EDIT: To mój WeekdayType Enum
public enum WeekdayType {
MONDAY(Calendar.MONDAY), TUESDAY(Calendar.TUESDAY), WEDNESDAY(
Calendar.WEDNESDAY), THURSDAY(Calendar.THURSDAY), FRIDAY(
Calendar.FRIDAY), SATURDAY(Calendar.SATURDAY), SUNDAY(
Calendar.SUNDAY);
private int day;
private WeekdayType(int day) {
this.day = day;
}
public int getDay() {
return day;
}
}
Pokaż nam swój WeekdayType –
jaki jest typ danych dla kolumny 'REPEAT_DAYS' –
typu Enum .... ie., WeekdayType. –