# Uses of Interface
org.apache.cayenne.exp.property.Property

Packages that use Property
Package
Description
org.apache.cayenne.access.translator.select
org.apache.cayenne.exp.property
Property API
org.apache.cayenne.query
Defines standard queries supported by Cayenne and extension mechanism to create custom queries.

- ## Uses of Property in org.apache.cayenne.access.translator.select

  Methods in org.apache.cayenne.access.translator.select that return types with arguments of type Property
  Modifier and Type
  Method
  Description
  `Collection<Property<?>>`
  FluentSelectWrapper.`getColumns()`
  `Collection<Property<?>>`
  TranslatableQueryWrapper.`getColumns()`

- ## Uses of Property in org.apache.cayenne.exp.property

  Subinterfaces of Property in org.apache.cayenne.exp.property
  Modifier and Type
  Interface
  Description
  `interface`
  `ComparableProperty<E>`
  Interface (or "Trait") that provides basic functionality for comparable properties.
  `interface`
  `IdProperty<E>`
  Base class for properties mapped to PK
  `interface`
  `PathProperty<E>`
  Property that represents path segment (relationship or embeddable).
  `interface`
  `RelationshipProperty<E>`
  Interface (or "Trait") that provides basic functionality for all types of relationships.
  Classes in org.apache.cayenne.exp.property that implement Property
  Modifier and Type
  Class
  Description
  `class`
  `BaseIdProperty<E>`
  Property that represents non-numeric PK
  `class`
  `BaseProperty<E>`
  Property that represents generic attribute.
  `class`
  `CollectionProperty<V extends Persistent,E extends Collection<V>>`
  Base class for `ListProperty` and `SetProperty`
  `class`
  `DateProperty<E>`
  Property that represents date/time attribute.
  `class`
  `EmbeddableProperty<E>`
  Property that represents object attribute mapped on `Embeddable` object.
  `class`
  `EntityProperty<E extends Persistent>`
  Property that represents to-one relationships.
  `class`
  `ListProperty<V extends Persistent>`
  Property that represents to-many relationship mapped on `List`.
  `class`
  `MapProperty<K,V extends Persistent>`
  Property that represents to-many relationship mapped on `Map`.
  `class`
  `NumericIdProperty<E extends Number>`
  Property that represents numeric PK
  `class`
  `NumericProperty<E extends Number>`
  Property that represents attributes mapped on numeric types
  `class`
  `SelfProperty<E extends Persistent>`
  Property that represents root entity
  Usage example: ``
  `class`
  `SetProperty<V extends Persistent>`
  Property that represents to-many relationship mapped on `Set`.
  `class`
  `StringProperty<E extends CharSequence>`
  Property that represents attributes mapped on string types
  Methods in org.apache.cayenne.exp.property with parameters of type Property
  Modifier and Type
  Method
  Description
  `ColumnSelect<Object[]>`
  SelfProperty.`columnQuery(Property<?>... properties)`
  `<T> ColumnSelect<T>`
  SelfProperty.`columnQuery(Property<T> property)`

- ## Uses of Property in org.apache.cayenne.query

  Fields in org.apache.cayenne.query with type parameters of type Property
  Modifier and Type
  Field
  Description
  `protected Collection<Property<?>>`
  ColumnSelect.`columns`
  Methods in org.apache.cayenne.query that return types with arguments of type Property
  Modifier and Type
  Method
  Description
  `Collection<Property<?>>`
  ColumnSelect.`getColumns()`
  `Collection<Property<?>>`
  FluentSelect.`getColumns()`
  Methods in org.apache.cayenne.query with parameters of type Property
  Modifier and Type
  Method
  Description
  `protected <E> ColumnSelect<E>`
  ColumnSelect.`column(Property<E> property)`
  `<E> ColumnSelect<E>`
  ObjectSelect.`column(Property<E> property)`
  Select one specific property.
  `static ColumnSelect<Object[]>`
  ObjectSelect.`columnQuery(Class<?> entityType, Property<?>... columns)`
  Creates a ColumnSelect that will fetch multiple columns of a given `ObjEntity`
  `static <E> ColumnSelect<E>`
  ObjectSelect.`columnQuery(Class<?> entityType, Property<E> column)`
  Creates a ColumnSelect that will fetch single property that can be resolved against a given `ObjEntity` class.
  `ColumnSelect<Object[]>`
  ColumnSelect.`columns(Property<?>... properties)`
  Add properties to select.
  `ColumnSelect<Object[]>`
  ObjectSelect.`columns(Property<?>... properties)`
  Select only specific properties.
  Method parameters in org.apache.cayenne.query with type arguments of type Property
  Modifier and Type
  Method
  Description
  `ColumnSelect<Object[]>`
  ColumnSelect.`columns(Collection<Property<?>> properties)`
  Add properties to select.