Projekt java [Spring, web, oracleSql]

Projekt java [Spring, web, oracleSql]
0

Mam zamiar zrobić projekt z Javy, aby douczyć się technologii, podsumować to co umiem i mieć coś zrealizowanego aby móc zaprezentować przyszłemu pracodawcy (nie mam doświadczenia).
Założenia są takie, że chcę stworzyć aplikację coś na zasadzie sklepu, czy firmy prowadzącej jakąś usługę, wraz z systemem powiadamiania klienta.

  1. Pomysł, aby stworzyć aplikacje desktopową, gdzie tam mam przyjmowane zlecenia jakiejś usługi np. naprawy sprzętu komputerowego, czyli to co jest w firmie, a do tego strona web, gdzie klient może sprawdzić status wykonania usługi np. po podaniu odpowiednich danych logowania lub w inny sposób. I komunikacja między tymi aplikacjami.
  2. Całość oprzeć na jednej aplikacji webowej, gdzie podajemy dane logowania, i zależnie na jakie konto się zalogujemy - pracownik firmy/klient możemy albo zarządzać zleceniami, dodawać, zmieniać statusy itp, albo po prostu jako klient mamy tylko możliwość sprawdzenia statusu zlecenia.

Do tego wszystkiego chciałbym podpiąć bazę, ogarniam najbardziej Oracle SQL. Wydaje mi się, że wszystko na razie lokalnie, a później można spróbować przetestować to na jakimś serwerze( czy jest jakaś możliwość zrobić za darmo?)

Chciałbym poradzić się, którą opcję wybrać i co tutaj wykorzystać, z tego co czytałem wydaje mi się, że Spring, Spring Data + Hibernate do obsługi bazy, i ewentualnie JavaFX jeśli zdecydowałbym się po stronie 'firmy' robić desktopową aplikację (jak wygląda wtedy komunikacja między tymi dwoma aplikacjami?), chociaż bardziej logiczna i prawidłowa wydaje mi się druga opcja,

0

Odświeżam.

PI
  • Rejestracja:ponad 9 lat
  • Ostatnio:4 miesiące
  • Postów:2787
0

Serwer - Spring, Hibernate, wystawienie REST API
Klient - wykonujący zapytania HTTP do serwera, jakiś JSowy framework np Angular

matt_z
  • Rejestracja:około 8 lat
  • Ostatnio:ponad 7 lat
  • Postów:56
0

Hej.

Polecam opcję 2. Mniej się namęczysz. Jeżeli to taki projekt dla siebie, to polecam MySQL zamiast Oracle.
Jeśli znasz Springa to Spring + Spring MVC + Hibernate będzie OK.


0

Nie znam Springa jeszcze, chcę się douczać w trakcie robienia tego.

0

Jak chce wygenerować projekt to mogę przy użyciu spring boota np wybrać mvc,jpa, spring data i to wystarczy? Czy lepiej samemu konfigurować springa? Jeśli tak, to czy przy użyciu inteliij wykonam pierwszą opcję? Jeśli druga opcja że wszystko od podstaw, to jak utworzyć projekt springa z odpowiednią strukturą katalogów w inteliij? Bo jest tam sporo opcji typu spring, albo np maven z wyborem archetypu spring mvc itd

S9
  • Rejestracja:ponad 10 lat
  • Ostatnio:6 miesięcy
  • Lokalizacja:Warszawa
  • Postów:3573
0

1.Lepiej na początku samemu konfigurowac Springa, ale w konfiguracji za pomocą kodu (czyli Java config)!
2.Zamiast Hibernate Spring Data JPA


"w haśle <młody dynamiczny zespół> nie chodzi o to ile masz lat tylko jak często zmienia się skład"
0

Rozumiem jednak nadal nie wiem jak utworzyć projekt aby mieć całą tą strukturę do obsługi rzeczy które wyżej wymieniłem

S9
  • Rejestracja:ponad 10 lat
  • Ostatnio:6 miesięcy
  • Lokalizacja:Warszawa
  • Postów:3573
1

Ja project Springowy robiłem jako maven + web, a później dodawałem springa do maven i konfigurowałem.
A generalnie struktura jest taka że w wersji typowej masz klasę konfiguracyjną główną np. RootConfig, masz WebConfig tak jak tutaj: http://memorynotfound.com/spring-mvc-java-configuration-example/ i security jak tutaj https://docs.spring.io/spring-security/site/docs/current/reference/html/jc.html


"w haśle <młody dynamiczny zespół> nie chodzi o to ile masz lat tylko jak często zmienia się skład"
0

Bo wlasnie troche sie gubie w tej strukturze katalogów.ogolnie trzymac sie katalogow model, view, kontroler i tam wszystko umieszczac czy to juz obojetnie?

0

Utworzyłem projekt jak wyżej polecałeś @scibi92 .
Tzn. Maven z archetypem web-app, oraz dodałem zależności spring-core, spring-context, oraz spring-mvc. Utworzyłem strukturę katalogów, oraz próbuję konfigurować springa ręcznie (bez spring boota), jednak mam małe problemy. Moje pliki konfiguracyjne w WEB-INF to web.xml, applicationContext.xml oraz rootApplicationContext.xml , otóż ciągle mam podkreślone linijki na czerwono jak np.

Kopiuj
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> 

czy problem przy ścieżce

Kopiuj
 <param-value>/WEB-INF/applicationContext.xml</param-value>

z błędem "cannot resolve directory 'WEB-INF' w pliku web.xml .

Mógłbym ktoś spojrzeć o co chodzi?
Tutaj link do repozytorium : https://github.com/BLCrack/dziennik-webapp

S9
  • Rejestracja:ponad 10 lat
  • Ostatnio:6 miesięcy
  • Lokalizacja:Warszawa
  • Postów:3573
0

Może po proestu poczytaj jak to się robi na stronie Springa, albo w ksiązke Spring w Akcji (4 wydanie) - tam jest to dobrze opisane...


"w haśle <młody dynamiczny zespół> nie chodzi o to ile masz lat tylko jak często zmienia się skład"
0

Powyższy problem ze ścieżką rozwiązany - wystarczyło w strukturze projektu oznaczyć folder webapp jako resources. Natomiast pozostaje kwestia tego, że tak jakby nie widzi tych springowych linków. Poniżej grafika :

title

0

Wszystko działa, pomogła opcja File - Invalidate Cache. Proszę tylko o ocenę, czy ma to ręcę i nogi - cała ta konfiguracja Springa, czy może robić coś w inny sposób.

0

A jednak nadal nie działa. Na początku po wczytaniu projektu było wszystko okej, a teraz ponownie te same błędy. Miał ktoś takie akcje z InteliiJ?

TP
  • Rejestracja:około 10 lat
  • Ostatnio:prawie 4 lata
  • Postów:21
0

Udostępnij projekt na zewnątrz, gitlab, github etc

S9
  • Rejestracja:ponad 10 lat
  • Ostatnio:6 miesięcy
  • Lokalizacja:Warszawa
  • Postów:3573
0

Powinna być Javova konfiguracja.


"w haśle <młody dynamiczny zespół> nie chodzi o to ile masz lat tylko jak często zmienia się skład"
0

@tomcki.pl: tutaj jest projekt https://github.com/BLCrack/dziennik-webapp
@scibi92 co masz na myśli - "javova konfiguracja?"?

S9
  • Rejestracja:ponad 10 lat
  • Ostatnio:6 miesięcy
  • Lokalizacja:Warszawa
  • Postów:3573
0

"w haśle <młody dynamiczny zespół> nie chodzi o to ile masz lat tylko jak często zmienia się skład"
0

Czyli zamiast tych plików .xml po prostu klasy javy i adnotacja @configuration?

Kliknij, aby dodać treść...

Pomoc 1.18.8

Typografia

Edytor obsługuje składnie Markdown, w której pojedynczy akcent *kursywa* oraz _kursywa_ to pochylenie. Z kolei podwójny akcent **pogrubienie** oraz __pogrubienie__ to pogrubienie. Dodanie znaczników ~~strike~~ to przekreślenie.

Możesz dodać formatowanie komendami , , oraz .

Ponieważ dekoracja podkreślenia jest przeznaczona na linki, markdown nie zawiera specjalnej składni dla podkreślenia. Dlatego by dodać podkreślenie, użyj <u>underline</u>.

Komendy formatujące reagują na skróty klawiszowe: Ctrl+B, Ctrl+I, Ctrl+U oraz Ctrl+S.

Linki

By dodać link w edytorze użyj komendy lub użyj składni [title](link). URL umieszczony w linku lub nawet URL umieszczony bezpośrednio w tekście będzie aktywny i klikalny.

Jeżeli chcesz, możesz samodzielnie dodać link: <a href="link">title</a>.

Wewnętrzne odnośniki

Możesz umieścić odnośnik do wewnętrznej podstrony, używając następującej składni: [[Delphi/Kompendium]] lub [[Delphi/Kompendium|kliknij, aby przejść do kompendium]]. Odnośniki mogą prowadzić do Forum 4programmers.net lub np. do Kompendium.

Wspomnienia użytkowników

By wspomnieć użytkownika forum, wpisz w formularzu znak @. Zobaczysz okienko samouzupełniające nazwy użytkowników. Samouzupełnienie dobierze odpowiedni format wspomnienia, zależnie od tego czy w nazwie użytkownika znajduje się spacja.

Znaczniki HTML

Dozwolone jest używanie niektórych znaczników HTML: <a>, <b>, <i>, <kbd>, <del>, <strong>, <dfn>, <pre>, <blockquote>, <hr/>, <sub>, <sup> oraz <img/>.

Skróty klawiszowe

Dodaj kombinację klawiszy komendą notacji klawiszy lub skrótem klawiszowym Alt+K.

Reprezentuj kombinacje klawiszowe używając taga <kbd>. Oddziel od siebie klawisze znakiem plus, np <kbd>Alt+Tab</kbd>.

Indeks górny oraz dolny

Przykład: wpisując H<sub>2</sub>O i m<sup>2</sup> otrzymasz: H2O i m2.

Składnia Tex

By precyzyjnie wyrazić działanie matematyczne, użyj składni Tex.

<tex>arcctg(x) = argtan(\frac{1}{x}) = arcsin(\frac{1}{\sqrt{1+x^2}})</tex>

Kod źródłowy

Krótkie fragmenty kodu

Wszelkie jednolinijkowe instrukcje języka programowania powinny być zawarte pomiędzy obróconymi apostrofami: `kod instrukcji` lub ``console.log(`string`);``.

Kod wielolinijkowy

Dodaj fragment kodu komendą . Fragmenty kodu zajmujące całą lub więcej linijek powinny być umieszczone w wielolinijkowym fragmencie kodu. Znaczniki ``` lub ~~~ umożliwiają kolorowanie różnych języków programowania. Możemy nadać nazwę języka programowania używając auto-uzupełnienia, kod został pokolorowany używając konkretnych ustawień kolorowania składni:

```javascript
document.write('Hello World');
```

Możesz zaznaczyć również już wklejony kod w edytorze, i użyć komendy  by zamienić go w kod. Użyj kombinacji Ctrl+`, by dodać fragment kodu bez oznaczników języka.

Tabelki

Dodaj przykładową tabelkę używając komendy . Przykładowa tabelka składa się z dwóch kolumn, nagłówka i jednego wiersza.

Wygeneruj tabelkę na podstawie szablonu. Oddziel komórki separatorem ; lub |, a następnie zaznacz szablonu.

nazwisko;dziedzina;odkrycie
Pitagoras;mathematics;Pythagorean Theorem
Albert Einstein;physics;General Relativity
Marie Curie, Pierre Curie;chemistry;Radium, Polonium

Użyj komendy by zamienić zaznaczony szablon na tabelkę Markdown.

Lista uporządkowana i nieuporządkowana

Możliwe jest tworzenie listy numerowanych oraz wypunktowanych. Wystarczy, że pierwszym znakiem linii będzie * lub - dla listy nieuporządkowanej oraz 1. dla listy uporządkowanej.

Użyj komendy by dodać listę uporządkowaną.

1. Lista numerowana
2. Lista numerowana

Użyj komendy by dodać listę nieuporządkowaną.

* Lista wypunktowana
* Lista wypunktowana
** Lista wypunktowana (drugi poziom)

Składnia Markdown

Edytor obsługuje składnię Markdown, która składa się ze znaków specjalnych. Dostępne komendy, jak formatowanie , dodanie tabelki lub fragmentu kodu są w pewnym sensie świadome otaczającej jej składni, i postarają się unikać uszkodzenia jej.

Dla przykładu, używając tylko dostępnych komend, nie możemy dodać formatowania pogrubienia do kodu wielolinijkowego, albo dodać listy do tabelki - mogłoby to doprowadzić do uszkodzenia składni.

W pewnych odosobnionych przypadkach brak nowej linii przed elementami markdown również mógłby uszkodzić składnie, dlatego edytor dodaje brakujące nowe linie. Dla przykładu, dodanie formatowania pochylenia zaraz po tabelce, mogłoby zostać błędne zinterpretowane, więc edytor doda oddzielającą nową linię pomiędzy tabelką, a pochyleniem.

Skróty klawiszowe

Skróty formatujące, kiedy w edytorze znajduje się pojedynczy kursor, wstawiają sformatowany tekst przykładowy. Jeśli w edytorze znajduje się zaznaczenie (słowo, linijka, paragraf), wtedy zaznaczenie zostaje sformatowane.

  • Ctrl+B - dodaj pogrubienie lub pogrub zaznaczenie
  • Ctrl+I - dodaj pochylenie lub pochyl zaznaczenie
  • Ctrl+U - dodaj podkreślenie lub podkreśl zaznaczenie
  • Ctrl+S - dodaj przekreślenie lub przekreśl zaznaczenie

Notacja Klawiszy

  • Alt+K - dodaj notację klawiszy

Fragment kodu bez oznacznika

  • Alt+C - dodaj pusty fragment kodu

Skróty operujące na kodzie i linijkach:

  • Alt+L - zaznaczenie całej linii
  • Alt+, Alt+ - przeniesienie linijki w której znajduje się kursor w górę/dół.
  • Tab/⌘+] - dodaj wcięcie (wcięcie w prawo)
  • Shit+Tab/⌘+[ - usunięcie wcięcia (wycięcie w lewo)

Dodawanie postów:

  • Ctrl+Enter - dodaj post
  • ⌘+Enter - dodaj post (MacOS)