private Map buildNamedParameterLocMap(QueryParameters queryParameters) { if ( queryParameters.getNamedParameters()!=null ) { final Map namedParameterLocMap = new HashMap(); Iterator piter = queryParameters.getNamedParameters().keySet().iterator(); while ( piter.hasNext() ) { String name = (String) piter.next(); namedParameterLocMap.put( name, getNamedParameterLocs(name) ); } return namedParameterLocMap; } else { return null; } }
public SubselectCollectionLoader( QueryableCollection persister, String subquery, Collection entityKeys, QueryParameters queryParameters, SessionFactoryImplementor factory, Map enabledFilters) throws MappingException { super(persister, 1, subquery, factory, enabledFilters); keys = new Serializable[ entityKeys.size() ]; Iterator iter = entityKeys.iterator(); int i=0; while ( iter.hasNext() ) { keys[i++] = ( (EntityKey) iter.next() ).getIdentifier(); } this.namedParameters = queryParameters.getNamedParameters(); this.types = queryParameters.getFilteredPositionalParameterTypes(); this.values = queryParameters.getFilteredPositionalParameterValues(); }
public SubselectOneToManyLoader( QueryableCollection persister, String subquery, Collection entityKeys, QueryParameters queryParameters, Map namedParameterLocMap, SessionFactoryImplementor factory, Map enabledFilters) throws MappingException { super(persister, 1, subquery, factory, enabledFilters); keys = new Serializable[ entityKeys.size() ]; Iterator iter = entityKeys.iterator(); int i=0; while ( iter.hasNext() ) { keys[i++] = ( (EntityKey) iter.next() ).getIdentifier(); } this.namedParameters = queryParameters.getNamedParameters(); this.types = queryParameters.getFilteredPositionalParameterTypes(); this.values = queryParameters.getFilteredPositionalParameterValues(); this.namedParameterLocMap = namedParameterLocMap; }
public SubselectOneToManyLoader( QueryableCollection persister, String subquery, Collection entityKeys, QueryParameters queryParameters, SessionFactoryImplementor factory, Map enabledFilters) throws MappingException { super(persister, 1, subquery, factory, enabledFilters); keys = new Serializable[ entityKeys.size() ]; Iterator iter = entityKeys.iterator(); int i=0; while ( iter.hasNext() ) { keys[i++] = ( (EntityKey) iter.next() ).getIdentifier(); } this.namedParameters = queryParameters.getNamedParameters(); this.types = queryParameters.getFilteredPositionalParameterTypes(); this.values = queryParameters.getFilteredPositionalParameterValues(); }
public SubselectCollectionLoader( QueryableCollection persister, String subquery, Collection entityKeys, QueryParameters queryParameters, Map namedParameterLocMap, SessionFactoryImplementor factory, Map enabledFilters) throws MappingException { super(persister, 1, subquery, factory, enabledFilters); keys = new Serializable[ entityKeys.size() ]; Iterator iter = entityKeys.iterator(); int i=0; while ( iter.hasNext() ) { keys[i++] = ( (EntityKey) iter.next() ).getIdentifier(); } this.namedParameters = queryParameters.getNamedParameters(); this.types = queryParameters.getFilteredPositionalParameterTypes(); this.values = queryParameters.getFilteredPositionalParameterValues(); this.namedParameterLocMap = namedParameterLocMap; }
public static int bindNamedParameters( final PreparedStatement ps, final Map namedParams, final int start, final NamedParameterSource source, final SessionImplementor session) throws SQLException, HibernateException { if ( namedParams != null ) { // assumes that types are all of span 1 Iterator iter = namedParams.entrySet().iterator(); int result = 0; while ( iter.hasNext() ) { Map.Entry e = ( Map.Entry ) iter.next(); String name = ( String ) e.getKey(); TypedValue typedval = ( TypedValue ) e.getValue(); int[] locations = source.getNamedParameterLocations( name ); for ( int i = 0; i < locations.length; i++ ) { if ( log.isDebugEnabled() ) { log.debug( "bindNamedParameters() " + typedval.getValue() + " -> " + name + " [" + ( locations[i] + start ) + "]" ); } typedval.getType().nullSafeSet( ps, typedval.getValue(), locations[i] + start, session ); } result += locations.length; } return result; } else { return 0; }
/** * Bind the appropriate value into the given statement at the specified position. * * @param statement The statement into which the value should be bound. * @param qp The defined values for the current query execution. * @param session The session against which the current execution is occuring. * @param position The position from which to start binding value(s). * * @return The number of sql bind positions "eaten" by this bind operation. */ public int bind(PreparedStatement statement, QueryParameters qp, SessionImplementor session, int position) throws SQLException { TypedValue typedValue = ( TypedValue ) qp.getNamedParameters().get( name ); typedValue.getType().nullSafeSet( statement, typedValue.getValue(), position, session ); return typedValue.getType().getColumnSpan( session.getFactory() ); }
public QueryKey(String queryString, QueryParameters queryParameters, Set filters, EntityMode entityMode) { this.sqlQueryString = queryString; this.types = queryParameters.getPositionalParameterTypes(); this.values = queryParameters.getPositionalParameterValues(); RowSelection selection = queryParameters.getRowSelection(); if (selection!=null) { firstRow = selection.getFirstRow(); maxRows = selection.getMaxRows(); } else { firstRow = null; maxRows = null; } this.namedParameters = queryParameters.getNamedParameters(); this.entityMode = entityMode; this.filters = filters; this.hashCode = getHashCode(); }
public QueryKey(String queryString, QueryParameters queryParameters, Set filters, EntityMode entityMode) { this.sqlQueryString = queryString; this.types = queryParameters.getPositionalParameterTypes(); this.values = queryParameters.getPositionalParameterValues(); RowSelection selection = queryParameters.getRowSelection(); if (selection!=null) { firstRow = selection.getFirstRow(); maxRows = selection.getMaxRows(); } else { firstRow = null; maxRows = null; } this.namedParameters = queryParameters.getNamedParameters(); this.entityMode = entityMode; this.filters = filters; this.customTransformer = queryParameters.getResultTransformer(); this.hashCode = getHashCode(); }
session ); col += bindNamedParameters( ps, queryParameters .getNamedParameters(), col, session ); result = ps.executeUpdate();
col += bindNamedParameters( st, parameters.getNamedParameters(), col, session );
col += bindNamedParameters( st, queryParameters.getNamedParameters(), col, session );