Ciao!!
Sto creando un'applicazione web con Spring e sto avendo qualche problema nell'ordinare i risultati di una query.
Tale query è la classica query di autocomplete di un form e quindi, se viene inserito 'java' vorrei mi visualizzasse nell'ordine (per esempio):
- Java
- Javascript
- Framework Java
- ...
Insomma, vorrei un ordinamento per pertinenza.
Ero riuscito a risolvere con una query particolare, ma nel passaggio dei dati tra il controller e la view (che purtroppo DEVE avvenire con una Map...) l'ordine mi viene perso...
A questo punto ho pensato di inserirli in ordine alfabetico (meglio di niente...in fin dei conti quel che più mi importa è avere per primo quello che è stato inserito!) con questo metodo della mia view:
Codice PHP:
protected void renderMergedOutputModel(Map map, HttpServletRequest request,
HttpServletResponse response) throws Exception {
Map m = new TreeMap(map);
Set set = m.entrySet();
Iterator i = set.iterator();
while(i.hasNext()) {
Map.Entry me = (Map.Entry)i.next();
response.getWriter().write(me.getKey()+"|"+me.getValue()+"\n");
}
Il problema è che in questo caso i caratteri maiuscoli mi vengono considerati prima dei caratteri minuscoli... 
Ad esempio, se inserisco 'java' il risultato ottenuto è del tipo:
- JSON-RPC-Java
- Java
- Java Cups
- Java Servlet Technology
- ...
Insomma, mette JSON-RPC-Java prima di tutti perché è composto di tutte lettere maiuscole...
Esiste un qualche metodo per rendere questo ordinamento key-unsensitive???
Grazie, ciao!!