2010-06-29 20 views
7

Wszystko, co pobieram, wydaje się być godne pochwały z używania całej Java EE. Muszę utworzyć pojedynczą stronę, aby obsłużyć żądania do niej i wykonać niewielkie przetwarzanie w oparciu o parametry. Jest to podpięcie do innej struktury, która rutynowo wywoła ten adres URL.Czy mogę uniknąć Java EE, aby utworzyć lekką stronę internetową?

Chcę szybko i łatwo utworzyć stronę z pewnym przetwarzaniem. Czy istnieje prosty sposób na to, używając Java? Używam Javy, ponieważ czuję się komfortowo z Javą. Używałem SE od lat i pracowałem w EE, ale nie chcę wszystkich rzeczy, które towarzyszą EE.

Czy mogę po prostu unikać Javy i używać czegoś innego. To musi być wdrożone w środowisku Linux.

+1

JavaScript? PHP? Wydaje się, że są to opłacalne opcje w tym przypadku. – corsiKa

+0

Całkowicie się z tobą zgadzam. – naikus

Odpowiedz

4
  1. Trzeba Tomcat (lub molo, ani żadnego kontenera serwletów - pomost ma niezabudowany wersji przy okazji)
  2. potrzebujesz pliku .jsp i ewentualnie HttpServlet

ogólnie, to nie jest dobra praktyka aby umieścić dowolny kod przetwarzania na stronie JSP, ale jeśli jest naprawdę prosty i nie zostanie przedłużony, po prostu umieść tam logikę - i tak jest on tłumaczony do Serwletu.

+1

OP nie potrzebuje ** Tomcat ani niczego innego, może ** używać ** Tomcat lub Jetty lub JBoss lub GlassFish lub WebLogic, itp. Środowisko wykonawcze nie ma znaczenia, chodzi o to, że OP może używaj małej części czegoś dużego. –

+0

@ Pascal. Ale nie chcę pobierać Java EE, jeśli mogę tego uniknąć. A szczególnie wolałbym uniknąć bólu JBossa lub innego serwera aplikacji, jeśli mogę tego uniknąć. – uriDium

+1

@uriDium: Nie o to mi chodzi. Chodzi mi o to, że nawet jeśli Twoja firma prowadzi cały projekt na korporacyjnym serwerze Java EE, możesz użyć niewielkiej części Java EE. Teraz, jeśli masz wybór, Tomcat lub Jetty będą dobre dla pojedynczej aplikacji Servlet. –

0

Wygląda na to, że możesz użyć PHP do przetwarzania. Zadzwoń na stronę i POST parametry do niego, oblicz i zwróć wynik.

+1

Polecanie PHP w pytaniu Java jest jak rzucanie Natrium (* aka Sodium *) do wody. – Esko

+0

@Esko: OP * nie * powiedział, że był otwarty na używanie czegoś innego niż Java, gdyby było jeszcze łatwiej. W rzeczywistości, jeśli OP jest ściśle związany z Java'em, może to być dobra okazja, aby poradzić sobie z jakąś inną technologią, chociaż będzie to wymagało więcej czasu, aby zacząć działać, z krzywymi uczenia się nowych technologii i takich ... – FrustratedWithFormsDesigner

+0

Zdecydowanie otwarty na wszystko w tym momencie. Rozważałem chodzenie po Ruby On Rails. Jedynym powodem dla którego wybieram Javę w tym momencie jest to, że mam największe doświadczenie z tym. – uriDium

5

Używałem SE od lat i pracowałem w EE, ale nie chcę wszystkich rzeczy, które są związane z EE.

Następnie wystarczy użyć serwletu i to wszystko. Nic, powtarzam NIC, zmuszam cię do używania "wszystkich tych rzeczy", a twoje pytanie jest albo wolnym rantem albo pokazuje głębokie nieporozumienie.

+1

+1, zgadzam się. Problem, który napotykam, to większość tutoriali zakładających, że CHCESZ korzystać ze wszystkiego i zlewu kuchennego, więc piszą wymyślone i zbyt skomplikowane przykłady prostych rzeczy przy użyciu bardzo ciężkich rzeczy EE. Chciałbym zobaczyć samouczek, który obejmuje stronę internetową w Javie z absolutnym * minimum * zamieszania i kłopotów, ale są one trudne do znalezienia. – FrustratedWithFormsDesigner

+0

Prawdopodobnie głębokie nieporozumienie, szczerze mówiąc. Tak naprawdę nigdy tak naprawdę nie uzyskałem architektury EE. Zrobiłem tylko trochę. Przez większość czasu robiłem rzeczy w środowisku serwera. – uriDium

+0

@uriDium: Nie ma problemu. To, czego nie rozumiem, to ta część, która sprawia, że ​​myślisz, że nie możesz robić "prostych rzeczy" z Java EE. Jak już napisałem, po prostu napisz "Servlet", to wszystko, czego potrzebujesz. –

0

Jeśli nie bardzo zależy ci na używaniu języka Java i chcesz eksperymentować, powinieneś spojrzeć na nodejs. Działa na silniku javascript V8 i działa na Linuksie. Istnieje kilka fraemworks dla nodejs dla aplikacji internetowych:

Expressjs i spludo

0

jak wspomniano, można to zrobić bardzo prosto z molo i serwletu, nie trzeba nawet JSP, jeśli tylko Potrzebuję adresu URL, który wykonuje pewne przetwarzanie na podstawie parametrów żądania i zwraca odpowiedź.

Dla rozwoju bardzo łatwo jest stworzyć dynamiczny projekt internetowy w czasie zaćmienia, wystarczy wykonać kroki opisane w this article.

To powiedziawszy, nie sądzę, że java jest świetnym wyborem na naprawdę lekkie rzeczy. PHP jest prawdopodobnie najłatwiejszy w użyciu, jeśli chcesz go wczytać.

2

tak, wszystkie rozwiązania oparte na serwletach są dość grube.

Pomost jest w porządku, ale pobieranie wynosi 20 MB. to jest absurdalne.

Obecnie najlepszym wyborem jest prawdopodobnie com.sun.net.httpserver, który jest sprzedawany w pakiecie JDK 6.możesz łatwo wdrożyć swoją usługę.

0

Możesz użyć Java with FastCGI. Jest to bardzo elastyczne, ale także trochę niskiego poziomu dla większości programistów Java.

Jeśli nie boisz się serwletów (to tylko bardzo mała część Java EE!), Mogę polecić JAX-RS, łatwo jest zacząć. Jeśli strona kliencka jest oparta na JavaScript, możesz uniknąć używania JSP (czego zalecałbym ci unikać). Na przykład, zobacz backbone-jax-cellar. Źródło Java to here. W przypadku aplikacji Java jest to niewielki ciężar. Wprowadza własne DAO, ale to jest cena, którą płacisz za używanie języka Java i SQL oraz brak zależności (innych niż JDBC). Kod ten przypomina PHP zorientowane obiektowo, jeśli mnie o to poprosisz. Chodzi o to, że jeśli masz klienta JavaScript, nie potrzebujesz renderowania szablonu lub całego tego interfejsu i interfejsu REST powinno wystarczyć.

Jeśli obawiasz się także ciężkich systemów kompilacji, stworzyłem example REST Todo app backend (który używa istniejącego interfejsu), który wymaga tylko systemu POSIX, JDK i sqlite3, i otrzymuje własne inne zależności (w tym serwer WWW). Nie używałem DAO. Strona główna repozytorium ma README.

Inną możliwością jest struktura Play, która nie korzysta z Java EE. Jest jednak raczej ciężki. W pełni funkcjonalny. Z pewnością będziesz musiał użyć IDE do tego, nie potrzebujesz tego do tworzenia aplikacji JAX-RS/FastCGI.

Powiązane problemy