Spring MVC, Hibernate, PostgreSQL Aplikacja Web

0

Witam, chciałbym napisać aplikację webową w oparciu o Spring MVC, Maven, Hibernate i PostgreSQL. Aplikacja postawiona na lokalnym serwerze Tomcat. W aplikacji do bazy danych wysyłany byłby plik Excel, następnie na stronie wyświetlana byłaby zawartość tego pliku (z użyciem Apache POI). Projekt pisany w Netbeans.

Moje pytanie jest, czy muszę te wszystkie technologie poskładać w jednym projekcie na raz, czy mogę to zrobić krokami i do szkieletu Springa stopniowo dodawać elementy?
W jaki sposób to najprościej wykonać, żeby za bardzo się nie pogubić?

Czy korzystać z tutoriali do danego elementu np. Hibernate, które są przewidziane dla samej Javy i będzie to działać w Springu (lub idzie to w miarę zaadaptować), czy szukać i używać tylko i wyłącznie tych które dotyczą używania tego w samym Springu?

0

Myślę ze najprościej byłoby utworzyć projekt w mavenie, później odpalić jakiegoś tutoriala ze springa (np książka spring in action,tutorial ze strony springa) i jechać po kolei. Zakładam ze nie miałeś do czynienia wcześniej ze springiem wiec najlepiej napisać sobie prostą aplikacje wyświetlającą Helloworld i później powoli razem z tutorialem edytować, dodawać kolejne elementy np formularz rejestracji i logowania, baze danych itp (sam tak robię i póki co sie udaje). Wydaje mi sie ze w dokumentacji springa jest tam opisana integracja z hibernatem :)

0

tutaj przykładowy tutorial: http://websystique.com/springmvc/spring-4-mvc-and-hibernate4-integration-example-using-annotations/

zamiast mysql podajesz konfigurację postgresa i powinno prażyć

Jeśli chodzi o samego Hibernate: to jest framework. Nie musisz korzystać ze Springa, żeby korzystać z Hibernate.
Zrób sobie konsolową komunikację z bazą danych, ale zamiast typowego "javowego" połączenia, skonfiguruj pod Hibernate.

Jeśli chodzi o samego Springa, to ja za mały miki jestem, żeby coś podpowiedzieć, ale postąpiłbym tak jak @Interpod napisał.

0

Już trochę Springa poznałem, przeczytałem i zaimplementowałem proste aplikacje Helloworld i prosty formularz. Co do tutorialów to rozwiązanie nie zawsze jest takie czytelne i proste, korzystają za bardziej zaawansowanych sposobów trudnych do zrozumienia dla początkującego, gdzie ja potrzebuje jedynie prostego rozwiązania. Między różnymi przykładami dotyczącymi tej samej rzeczy również są duże różnice, wręcz zupełnie inne i wtedy nie jestem pewien, które jest właściwe. Tak myślę, że następnym krokiem będzie najlepiej zintegrować szkielet Springa z Hibernate.

Nie mam zamiaru korzystać z zaawansowanych funkcji Springa, to co już umiem wystarczy by wyświetlić prosty formularz oraz odpowiedź, bardziej się skupić teraz by wykorzystać Hibernate i przesłać plik do bazy.

0

W tutorialach może być to zrobione na pierdyliard sposób np dla springa < 3.0, == 3.0, 3.0 >. Konfiguracja jako java config, xml itp. IMO wpierdzielanie sie do springa w sam środek i guglowanie rozwiązań jest bez sensu jak nie wiesz jak co działa itp choć są tacy którzy lubią zaczynać od środka i później szukają w necie odpowiedzi.

0

Ja czytałem że Spring sam w sobie jest bardzo duży i lepiej skupić się tylko na jego części która jest potrzebna. Staram zaznajomić się z podstawami jak co działa, choć większość takich poradników nie zawiera zbyt dużo szczegółowych wyjaśnień tylko kod i trochę komentarza. Spróbuję zintegrować szkielet Springa z Hibernate i poczytać więcej o Hibernate.

0

Skorzystałem z tutoriala ze strony

http://www.codejava.net/coding/upload-files-to-database-with-spring-mvc-and-hibernate

Aplikacja działa, po przesłaniu pliku jest on zapisywany, w konsoli wypisuje nazwę i rozmiar pliku, jednak otrzymuję błąd

HTTP Status 500 - Request processing failed; nested exception is org.hibernate.exception.SQLGrammarException: could not execute statement

Serwer MySQL postawiony, baza z tabelami utworzona.
W logu Tomcata pisze

com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Table 'filedb.files_upoad' doesn't exist

a zapytanie SQL to Hibernate: insert into FILES_UPOAD (FILE_DATA, FILE_NAME) values (?, ?)

EDIT:

Jednak wszystko ładnie działa, problem musiał byś po stronie MySQL. Usunąłem wszystkie bazy, dodałem nową ręcznie z innymi nazwami bazy i tabel, odpowiednio zmodyfikowałem nazwy w aplikacji, po zrestartowaniu MySQL działa jak powinno.

Udało mi się przerobić aplikację żeby współpracowała z PostgreSQL, wszystko działa, pliki są przesyłane do bazy. Trochę musiałem pokombinować z konfiguracją i odnaleźć się w aplikacji PostgreSQL.

0

Here is an excellent example for the integration of Spring MVC with hibernate.Also the source code is available.
Spring MVC hibernate Integration

1 użytkowników online, w tym zalogowanych: 0, gości: 1