List of usage examples for org.hibernate.type TimestampType INSTANCE
TimestampType INSTANCE
To view the source code for org.hibernate.type TimestampType INSTANCE.
Click Source Link
From source file:com.formkiq.core.dao.ObjectEventDaoImpl.java
License:Apache License
@SuppressWarnings({ "unchecked", "resource" })
@Override//from ww w . ja v a2s . co m
public ObjectEventListDTO list(final User user) {
StringBuilder sql = new StringBuilder("select oe.object_event_id as eventid, oe.type, "
+ "f.name as foldername, oe.notification, "
+ " oe.object_id as object, oe.inserted_date as insertedDate " + "from object_events oe "
+ "join folders f on f.folder_id=oe.object_id " + "where oe.user_id=:user " + "order by f.name");
Session session = getEntityManager().unwrap(Session.class);
List<ObjectEventDTO> list = session.createSQLQuery(sql.toString()).addScalar("eventid", StringType.INSTANCE)
.addScalar("type", StringType.INSTANCE).addScalar("foldername", StringType.INSTANCE)
.addScalar("notification", StringType.INSTANCE).addScalar("object", StringType.INSTANCE)
.addScalar("insertedDate", TimestampType.INSTANCE)
.setParameter("user", user.getUserid(), PostgresUUIDType.INSTANCE)
.setResultTransformer(new AliasToBeanResultTransformer(ObjectEventDTO.class)).list();
ObjectEventListDTO dto = new ObjectEventListDTO();
dto.setEvents(list);
return dto;
}
From source file:com.formkiq.core.dao.ObjectEventDaoImpl.java
License:Apache License
@SuppressWarnings("resource") @Override/* ww w . j av a 2 s. c o m*/ public ObjectEventDTO findEvent(final UUID eventid) { StringBuilder sql = new StringBuilder("select oe.object_event_id as eventid, " + "u.email as email, " + "oe.type, " + "f.name as foldername, " + "oe.notification, " + "oe.object_id as object, " + "oe.inserted_date as insertedDate " + "from object_events oe " + "join folders f on f.folder_id=oe.object_id " + "join users u on u.user_id=oe.user_id " + "where oe.object_event_id=:id"); Session session = getEntityManager().unwrap(Session.class); ObjectEventDTO dto = (ObjectEventDTO) session.createSQLQuery(sql.toString()) .addScalar("eventid", StringType.INSTANCE).addScalar("type", StringType.INSTANCE) .addScalar("email", StringType.INSTANCE).addScalar("foldername", StringType.INSTANCE) .addScalar("notification", StringType.INSTANCE).addScalar("object", StringType.INSTANCE) .addScalar("insertedDate", TimestampType.INSTANCE) .setParameter("id", eventid, PostgresUUIDType.INSTANCE) .setResultTransformer(new AliasToBeanResultTransformer(ObjectEventDTO.class)).uniqueResult(); return dto; }
From source file:com.formkiq.core.dao.ReportDaoImpl.java
License:Apache License
@SuppressWarnings({ "unchecked", "resource" })
@Override/*w w w .ja va 2 s . c om*/
public ReportListDTO getReports(final String folderid) {
String sql = "select data #>> '{name}' as name, " + "data #>> '{formuuid}' as formuuid, "
+ "updated_date as updateddate, " + "inserted_date as inserteddate, " + "report_uuid as uuid, "
+ "sha1_hash as sha1hash " + "from folder_form_reports " + "where folder_id=:folder";
Session session = getEntityManager().unwrap(Session.class);
List<ReportDTO> list = session.createSQLQuery(sql.toString()).addScalar("name", StringType.INSTANCE)
.addScalar("formuuid", StringType.INSTANCE).addScalar("uuid", StringType.INSTANCE)
.addScalar("sha1hash", StringType.INSTANCE).addScalar("updateddate", TimestampType.INSTANCE)
.addScalar("inserteddate", TimestampType.INSTANCE)
.setParameter("folder", UUID.fromString(folderid), PostgresUUIDType.INSTANCE)
.setResultTransformer(new AliasToBeanResultTransformer(ReportDTO.class)).list();
ReportListDTO dto = new ReportListDTO();
dto.setReports(list);
return dto;
}
From source file:com.formkiq.core.dao.UserDaoImpl.java
License:Apache License
@SuppressWarnings({ "unchecked", "resource" })
@Override//from w w w . ja v a 2 s . c om
public UserNotificationListDTO findNotifications(final User user, final String token) {
int offset = Strings.getOffset(token);
int max = Strings.getMaxResults(token, DEFAULT_MAX_RESULTS);
StringBuilder sql = new StringBuilder(
"select user_notifications_id as uuid, " + "data->'workflow'->>'label1' as \"workflow.label1\", "
+ "data->'workflow'->>'label2' as \"workflow.label2\", "
+ "data->'workflow'->>'label3' as \"workflow.label3\", " + "method as method, "
+ "inserted_date as inserteddate " + "from user_notifications " + "where user_id=:user "
+ "order by inserted_date, method desc ");
sql.append(" OFFSET " + offset + " FETCH FIRST " + (max + 1) + " ROWS ONLY");
Session session = getEntityManager().unwrap(Session.class);
List<Map<String, Object>> list = session.createSQLQuery(sql.toString())
.addScalar("uuid", StringType.INSTANCE).addScalar("workflow.label1", StringType.INSTANCE)
.addScalar("workflow.label2", StringType.INSTANCE).addScalar("workflow.label3", StringType.INSTANCE)
.addScalar("method", EnumCustomType.transform(NotificationMethod.class))
.addScalar("inserteddate", TimestampType.INSTANCE)
.setParameter("user", user.getUserid(), PostgresUUIDType.INSTANCE)
.setResultTransformer(AliasToEntityMapResultTransformer.INSTANCE).list();
UserNotificationListDTO dto = new UserNotificationListDTO();
List<UserNotificationDTO> unlist = transformMapListToObject(list, UserNotificationDTO.class);
List<UserNotificationDTO> tr = updatePagination(dto, offset, max, unlist);
dto.setNotifications(tr);
return dto;
}
From source file:com.formkiq.core.dao.UserDaoImpl.java
License:Apache License
@SuppressWarnings("resource") @Override/*w w w . ja va 2 s . co m*/ public UserDTO findUserDTO(final String email) { String sql = "select u.user_id as userid, u.email as email, " + " u.password as password, " + " u.status as status, u.role as role, " + " u.lastlogin_date as lastlogin, " + " u.last_user_agent as lastuseragent, " + " u.login_token as logintoken " + " from Users u" + " where u.email=:email"; Session session = getEntityManager().unwrap(Session.class); UserDTO dto = (UserDTO) session.createSQLQuery(sql).addScalar("userid", StringType.INSTANCE) .addScalar("email", StringType.INSTANCE).addScalar("password", StringType.INSTANCE) .addScalar("status", StringType.INSTANCE).addScalar("role", StringType.INSTANCE) .addScalar("lastlogin", TimestampType.INSTANCE).addScalar("lastuseragent", StringType.INSTANCE) .addScalar("logintoken", StringType.INSTANCE).setParameter("email", email) .setResultTransformer(new AliasToBeanResultTransformer(UserDTO.class)).uniqueResult(); if (dto != null) { List<FolderDTO> folders = this.folderDao.findFoldersDTO(email, FolderStatus.ACTIVE); dto.setFolders(folders); UUID userid = dto.getUUID(); Collection<UserSetting> settings = findUserSettings(userid); Map<String, String> map = new HashMap<>(); for (UserSetting us : settings) { map.put(us.getSetting().name(), us.getValue()); } dto.setSettings(map); } return dto; }
From source file:com.formkiq.core.dao.UserDaoImpl.java
License:Apache License
@SuppressWarnings({ "unchecked", "resource" })
@Override/*from ww w. ja v a 2s . c o m*/
public UserListDTO findUsers(final String token, final String text) {
int offset = Strings.getOffset(token);
int max = Strings.getMaxResults(token, DEFAULT_MAX_RESULTS);
StringBuilder sql = new StringBuilder("select u.user_id as userid, " + " u.email as email, "
+ " u.status as status, " + " u.role as role, " + " u.lastlogin_date as lastlogin, "
+ " u.last_user_agent as lastuseragent " + " from Users u ");
if (StringUtils.hasText(text)) {
sql.append("where u.email like :text ");
}
sql.append("order by u.email");
sql.append(" OFFSET " + offset + " FETCH FIRST " + (max + 1) + " ROWS ONLY");
Session session = getEntityManager().unwrap(Session.class);
org.hibernate.Query query = session.createSQLQuery(sql.toString()).addScalar("userid", StringType.INSTANCE)
.addScalar("email", StringType.INSTANCE).addScalar("status", StringType.INSTANCE)
.addScalar("role", StringType.INSTANCE).addScalar("lastlogin", TimestampType.INSTANCE)
.addScalar("lastuseragent", StringType.INSTANCE)
.setResultTransformer(new AliasToBeanResultTransformer(UserDTO.class));
if (StringUtils.hasText(text)) {
query.setParameter("text", "%" + text + "%");
}
List<UserDTO> list = query.list();
UserListDTO dto = new UserListDTO();
List<UserDTO> truncated = updatePagination(dto, offset, max, list);
dto.setUsers(truncated);
return dto;
}
From source file:com.manydesigns.portofino.persistence.hibernate.HibernateConfig.java
License:Open Source License
public boolean setHibernateType(@Nullable SimpleValue value, com.manydesigns.portofino.model.database.Column column, Class javaType, final int jdbcType) { String typeName;/*from ww w . j av a2 s . c om*/ Properties typeParams = null; if (javaType == null) { return false; } if (javaType == Long.class) { typeName = LongType.INSTANCE.getName(); } else if (javaType == Short.class) { typeName = ShortType.INSTANCE.getName(); } else if (javaType == Integer.class) { typeName = IntegerType.INSTANCE.getName(); } else if (javaType == Byte.class) { typeName = ByteType.INSTANCE.getName(); } else if (javaType == Float.class) { typeName = FloatType.INSTANCE.getName(); } else if (javaType == Double.class) { typeName = DoubleType.INSTANCE.getName(); } else if (javaType == Character.class) { typeName = CharacterType.INSTANCE.getName(); } else if (javaType == String.class) { typeName = StringType.INSTANCE.getName(); } else if (java.util.Date.class.isAssignableFrom(javaType)) { switch (jdbcType) { case Types.DATE: typeName = DateType.INSTANCE.getName(); break; case Types.TIME: typeName = TimeType.INSTANCE.getName(); break; case Types.TIMESTAMP: typeName = TimestampType.INSTANCE.getName(); break; default: typeName = null; } } else if (javaType == Boolean.class) { if (jdbcType == Types.BIT || jdbcType == Types.BOOLEAN) { typeName = BooleanType.INSTANCE.getName(); } else if (jdbcType == Types.NUMERIC || jdbcType == Types.DECIMAL || jdbcType == Types.INTEGER || jdbcType == Types.SMALLINT || jdbcType == Types.TINYINT || jdbcType == Types.BIGINT) { typeName = NumericBooleanType.INSTANCE.getName(); } else if (jdbcType == Types.CHAR || jdbcType == Types.VARCHAR) { typeName = StringBooleanType.class.getName(); typeParams = new Properties(); typeParams.setProperty("true", trueString != null ? trueString : StringBooleanType.NULL); typeParams.setProperty("false", falseString != null ? falseString : StringBooleanType.NULL); typeParams.setProperty("sqlType", String.valueOf(jdbcType)); } else { typeName = null; } } else if (javaType == BigDecimal.class) { typeName = BigDecimalType.INSTANCE.getName(); } else if (javaType == BigInteger.class) { typeName = BigIntegerType.INSTANCE.getName(); } else if (javaType == byte[].class) { typeName = BlobType.INSTANCE.getName(); } else { typeName = null; } if (typeName == null) { logger.error("Unsupported type (java type: {}, jdbc type: {}) " + "for column '{}'.", new Object[] { javaType, jdbcType, column.getColumnName() }); return false; } if (value != null) { value.setTypeName(typeName); if (typeParams != null) { value.setTypeParameters(typeParams); } } return true; }
From source file:com.mercatis.lighthouse3.persistence.commons.hibernate.ValueObjectUserType.java
License:Apache License
public Type[] getPropertyTypes() { return new Type[] { BooleanType.INSTANCE, IntegerType.INSTANCE, LongType.INSTANCE, FloatType.INSTANCE, DoubleType.INSTANCE, TimestampType.INSTANCE, BlobType.INSTANCE, StringType.INSTANCE, ClobType.INSTANCE };//w ww .ja v a 2 s. c o m }
From source file:com.mercatis.lighthouse3.persistence.commons.hibernate.ValueObjectUserType.java
License:Apache License
public void nullSafeSet(PreparedStatement statement, Object value, int index, SessionImplementor session) throws HibernateException, SQLException { Dialect d = session.getFactory().getDialect(); boolean isSqlServer = d instanceof org.hibernate.dialect.SQLServerDialect || d instanceof org.hibernate.dialect.SQLServer2008Dialect || d instanceof org.hibernate.dialect.SQLServer2008Dialect; @SuppressWarnings("deprecation") boolean isOracle = d instanceof org.hibernate.dialect.OracleDialect || d instanceof org.hibernate.dialect.Oracle8iDialect || d instanceof org.hibernate.dialect.Oracle9Dialect || d instanceof org.hibernate.dialect.Oracle9iDialect || d instanceof org.hibernate.dialect.Oracle10gDialect; if (value instanceof Boolean) statement.setBoolean(index, (Boolean) value); else//from w ww. j av a 2 s . c o m statement.setNull(index, BooleanType.INSTANCE.sqlType()); if (value instanceof Integer) statement.setInt(index + 1, (Integer) value); else statement.setNull(index + 1, IntegerType.INSTANCE.sqlType()); if (value instanceof Long) statement.setLong(index + 2, (Long) value); else statement.setNull(index + 2, LongType.INSTANCE.sqlType()); if (value instanceof Float) statement.setFloat(index + 3, (Float) value); else statement.setNull(index + 3, FloatType.INSTANCE.sqlType()); if (value instanceof Double) statement.setDouble(index + 4, (Double) value); else statement.setNull(index + 4, DoubleType.INSTANCE.sqlType()); if (value instanceof java.sql.Timestamp) statement.setTimestamp(index + 5, (java.sql.Timestamp) value); else if (value instanceof java.util.Date) statement.setTimestamp(index + 5, new java.sql.Timestamp(((java.util.Date) value).getTime())); else statement.setNull(index + 5, TimestampType.INSTANCE.sqlType()); if (value instanceof byte[] && isOracle) statement.setObject(index + 6, (byte[]) value); else if (value instanceof byte[]) statement.setBlob(index + 6, new SerialBlob((byte[]) value)); else statement.setNull(index + 6, java.sql.Types.BLOB); if (value instanceof String) statement.setString(index + 7, (String) value); else statement.setNull(index + 7, StringType.INSTANCE.sqlType()); if (value instanceof char[] && (isOracle || isSqlServer)) statement.setObject(index + 8, new String((char[]) value).getBytes()); else if (value instanceof char[]) statement.setClob(index + 8, new SerialClob((char[]) value)); else statement.setNull(index + 8, java.sql.Types.CLOB); }
From source file:com.soft.primerproyecto.Dao.BaseDaoHibernate.java
@Override public List<T> executeNamedQuery(final Method method, final Object[] queryArgs) { final String queryName = queryNameFromMethod(method); final Query namedQuery = getSessionFactory().getCurrentSession().getNamedQuery(queryName); //String[] namedParameters = namedQuery.getNamedParameters(); if (queryArgs != null) { for (int i = 0; i < queryArgs.length; i++) { Object arg = queryArgs[i]; if (arg instanceof String) namedQuery.setParameter("param" + i, arg, StringType.INSTANCE); else if (arg instanceof Integer) namedQuery.setParameter("param" + i, arg, IntegerType.INSTANCE); else if (arg instanceof Date) namedQuery.setParameter("param" + i, arg, TimestampType.INSTANCE); else if (arg instanceof Long) namedQuery.setParameter("param" + i, arg, LongType.INSTANCE); else if (arg instanceof Float) namedQuery.setParameter("param" + i, arg, FloatType.INSTANCE); else//from w w w . j a v a2 s . co m namedQuery.setParameter("param" + i, arg); } } return (List) namedQuery.list(); }