Non penso che lo sviluppo web di Java avrà alcun impatto diretto sullo sviluppo di Android oltre a servire da indicatore generico della tua capacità di acquisire nuovi argomenti da solo. Potrebbero esserci alcune logiche a questo, anche se ottenere il tuo primo programma Android "Hello world" attivo e funzionante implica una notevole quantità di lavoro di installazione. Nel caso dello sviluppo web, c'è molto meno setup (ma ancora una piccola quantità, più su questo sotto)
Come sviluppatore PHP, i vecchi servlet + JSP saranno probabilmente i più vicini al tuo modello mentale (come ha sottolineato Adrian). Una delle grandi differenze è che si avrà accesso al contesto dell'applicazione in cui è possibile memorizzare oggetti globali e il contesto di sessione in cui è possibile memorizzare oggetti specifici dell'utente / sessione. Questo ti dà la possibilità di avere lo stato nella tua applicazione web senza colpire costantemente un database o ruotandolo manualmente con memcached o simili. Un'altra differenza è che Java ha il concetto di un'applicazione web. Un'applicazione web è un singolo file con estensione .war. se sei curioso, puoi decomprimere il file .war e vedrai all'interno di un albero vari file e cartelle, inclusi i tuoi JSP così come vari file di configurazione, classi compilate, altri file jar ecc.
Struttura dell'applicazione
Usando semplici vecchi servlet e JSP, puoi implementare il concetto di MVC strutturando il tuo codice come segue:
-
Crea un servlet chiamato controller. Il compito del controllore sarà di eseguire qualsiasi azione richiesta. Il controller non avrà alcuna logica di presentazione. In un'ipotetica applicazione del carrello degli acquisti, il controllore saprebbe come aggiornare il carrello, inviare l'ordine, registrare l'utente in ecc.
-
Crea vari JSP per ogni vista. Ad esempio, potresti avere un cart.jsp per visualizzare il carrello.
I tuoi JSP devono essere usati solo per la presentazione, non per la logica (che appartiene al controller)
Questo dovrebbe essere sufficiente per ottenere l'idea di base. Cordiali saluti, la struttura JSF riprende l'idea di cui sopra e la formalizza. Cioè, tu crei un file che dichiara tutte le azioni che possono essere intraprese e quale vista dovrebbe essere mostrata dopo l'azione. Il controller è stato creato in modo implicito. Consiglierei di stare lontano da JSF a meno che non si abbia familiarità con JSP / Servlet.
Esistono altri framework come Struts e Shale che svolgono un ruolo simile e, allo stesso modo, ritengo che possano essere affrontati al meglio solo quando conosci JSP / Servlet. Ci sono molte analogie con questo mondo PHP come CodeIgnitor, Yii ecc.
La primavera è sostanzialmente più grande di JSF / Struts, ecc. Potrebbe valere la pena imparare a lungo termine, ma diventare produttivi in primavera sarebbe probabilmente un impegno sostanziale per gli sviluppatori Java più esperti.
Come configurare lo sviluppo web
La mia opinione personale è che è difficile battere Netbeans per facilità d'uso quando si inizia. Netbeans viene fornito in diversi pacchetti; se si scarica il pacchetto JavaEE, verrà fornito con Glassfish e Tomcat in bundle. Glassfish fornisce un superset della funzionalità fornita da Tomcat, ma per semplici vecchie applicazioni servlet / JSP, è possibile utilizzare entrambi.
Raccomando il glassfish che è leggermente meglio integrato con Netbeans. In questo caso, integrato significa che è possibile fare clic sull'icona "Esegui" in Netbeans e ciò comporterà Netbeans facendo quanto segue:
- Avvia il tuo server se non è in esecuzione
- Crea e distribuisci la tua applicazione web
- Avvia un browser che punta all'URL appropriato
Tomcat funzionerà altrettanto bene, ma penso che il supporto per il debug di Netbeans sia migliore in Glassfish.