PageBlockTable:
- PageBlockTable should be define inside
apex:pageblock
orapex:pageblocksection
- PageBlockTable uses standard page styles
- PageBlockTable has the required attribute “value”
- Column headers will be displayed automatically
DataTable:
- No need to write inside
apex:pageblock
orapex:pageblocksection
- There is no required attribute value
- The data can be displayed using custom styles
- We need to specify column headers explicitly
Repeat:
- No Salesforce styles inherited, no need to use
apex:column
- Simply data displayed in irregular format
- You can have full control over rendering data