Does the sun provided interface comment:
// Returns an array of record numbers that match the specified
// criteria. Field n in the database file is described by
// criteria[n]. A null value in criteria[n] matches any field
// value. A non-null value in criteria[n] matches any field
// value that begins with criteria[n]. (For example, "Fred"
// matches "Fred" or "Freddy".)
public long findByCriteria(String criteria);
contradict with this line in instructions.html? :
It must allow the user to search the data for all records, or for records where the name and/or location fields exactly match values specified by the user.
No, it doesn't at all! Just other requirements for algorithm used in Data class and in your GUI. You will have to implement some filtering to only show the exact matches in your JTable.
If you use the search engine you 'll find tons of threads on this issue, because besides locking it is one of the requirements where people have doubts/questions about.