java a baza danych

Odpowiedz Nowy wątek
2017-08-12 23:28
Smutny Kot
0

Witam,
uczę się kodowania w Javie i chciałem teraz ogarnąć bazy danych. W związku z tym założyłem darmowe konto na hostingu 7mpl, utworzyłem prostą bazę danych i za nic nie mogę się z nią połączyć za pośrednictwem Javy. Nie wiem czy podaję zły adres hosta czy na hoscie muszę coś skonfigurować żeby java się łączyła z bazą danych? Wywala mi ciągle Exception: "com.mysql.jdbc.exceptions.jdbc4.CommunicationsException".

Podczas założenia konta dostałem info.:
Link to the database: sql-7-mpl,
The database server: sql-7m-pl,
Name database: db-user2824,
Login database: db-user2824.

Po zalogowaniu przez stronę mam tam informacje
Serwer: Hosting 5v-----pl (127.0.0.1 via TCP/IP)
Typ serwera: MySQL
Wersja serwera: 5.5.53-0+deb8u1 - (Debian)
Wersja protokołu: 10
Użytkownik: db-user2824
Kodowanie znaków serwera: UTF-8 Unicode (utf8)

Dodam że ściągnąłem bibliotekę ze sterownikami mySQL i je załadowałem. Jak by mi ktoś mógł napisać jak powinien wyglądać prosty kod do połączenia się z moją bazą danych to bym był wdzięczny.
Pozdrawiam.

Pozostało 580 znaków

2017-08-13 00:03
1

Pierwsze próby połączenia robi się programem konsolowym mysql albo gui MySQL Workbench. Dopiero jak to zadziała - próbuj w Javie. Adres hosta musisz podać prawidłowy, na pewno nie 127.0.0.1. Może być też potrzebny numer portu.

Hosting pewnie wymaga odblokowania bezpośredniego połączenia, może ze wskazaniem ip klienta. Lepiej zainstaluj sobie na razie serwer mysql lokalnie i na nim rób pierwsze próby.

Pozostało 580 znaków

2017-08-13 14:54
Smutny Kot
0

No i wychodzi, że zrobię tak jak piszesz czyli lokalnie. Chodź tak naprawdę napisałem mały programik w Swingu i chciałem wyniki zapisywać gdzieś na zewnątrz w bazie danych no ale chyba mnie to przerasta jak na razie :).
Dzięki i pozdrawiam

Pozostało 580 znaków

2017-08-13 15:01
0

Jak będzie Ci działać lokalnie, to przestawienie na serwer będzie formalnością. Napisz znowu, jak będziesz miał z tym problem. Ja mam na hostingu opcje dostępu do mysql i muszę tam odblokować zdalny dostęp do bazy. Ale wyobrażam sobie taki hosting, gdzie nie zezwalają na zdalne połączenie z mysql. Będziesz musiał poszukać informacji u nich.

Pozostało 580 znaków

2017-08-13 15:42
0

Zrób sobie projekt z Apache Derby (Embedded) i ew. Maven.

Masz do wyboru

  • Java DB jeśli używasz Oracle JDK - to jest Derby w wersji od Oracle
  • Apache Derby + Maven jeśli używasz OpenJDK (bo masz linuksa i nie chce Ci się ściągać JDK)

Zalety tej bazy:

  • jeśli wybierzesz Apache Derby to Maven ściągnie Ci wszystkie zależności
  • poza ciągiem połączeniowym w JDBC nic nie musisz konfigurować
  • w necie masz sporo przykładów do tej bazy
  • serwer wstaje momentalnie i momentalnie się zamyka

Pozostało 580 znaków

2017-08-13 21:02
0

Piotr, jemu nie chodzi o embedded database. A jak nie używasz Derby jako Embedded, to nie masz już żadnych zalet w stosunku do MySQL.

Jak ktoś myśli o bazie hostingowej, to nie widzę lepszego wyboru od MySQL. Na hostingu linuxpl.com, którego używam, jest możliwość zdalnego podpięcia wprost do bazy. Cały hosting kosztuje 50 zł rocznie.

Pozostało 580 znaków

2017-08-14 00:06
1
jarekczek napisał(a):

Piotr, jemu nie chodzi o embedded database.

Nic na to nie wskazuje. Chodzi mu o pracę z bazą danych w Javie. Nie napisał że musi być do tego serwer. A MySQL pasuje do Javy jak pięść do nosa.

"chciałem wyniki zapisywać gdzieś na zewnątrz w bazie danych" - jarekczek 2017-08-15 17:36

Pozostało 580 znaków

2017-08-15 17:57
0

OP założył bazę serwerową na hostingu, chce się z nią łączyć. Pisze o umieszczaniu bazy danych na zewnątrz. Jeżeli dla Was (@vpiotr i ten co dał +1) pasuje tutaj embedded database, to ja wymiękam. Rozumiem, że można to przeoczyć, ale jak widzę +1, to już muszę odpisać.

A MySQL pasuje do Javy jak pięść do nosa.

Hejtujemy MySQLa? Dlaczego? Chętnie poznam rzeczowe argumenty. Możesz również podać lepsze rozwiązanie na dane programu lokalnego trzymane na serwerze.

edytowany 1x, ostatnio: jarekczek, 2017-08-15 18:22
Ja tam trzymam w prevaylerze - i czyściej i szybciej :-) - jarekr000000 2017-08-15 18:12
Jarek, Ty zawsze znajdziesz swoją metodę, nie lubisz zwykłych ścieżek. Jakbyś kiedyś doznał amnezji i musiał zaczynać od 0, to ja Ci jednak polecę MySQL :) A tak poważnie, to sugerowane rozwiązanie musi dawać możliwość uruchomienia na tanim hostingu, czy tu nie będzie problemu? - jarekczek 2017-08-15 18:25
Będzie problem, bo tani hosting to jest do PHP. W PHP to nie działa afaik. - jarekr000000 2017-08-15 18:26

Pozostało 580 znaków

2017-08-15 18:55
0
jarekczek napisał(a):

OP założył bazę serwerową na hostingu, chce się z nią łączyć. Pisze o umieszczaniu bazy danych na zewnątrz. Jeżeli dla Was (@vpiotr i ten co dał +1) pasuje tutaj embedded database, to ja wymiękam. Rozumiem, że można to przeoczyć, ale jak widzę +1, to już muszę odpisać.

Myślę, że nie zrozumiałeś oryginalnego problemu.
Cytat:

Smutny Kot napisał(a):

uczę się kodowania w Javie i chciałem teraz ogarnąć bazy danych.

Poza tym, do nauki baz danych w Javie jest wiele rozwiązań lepszych od MySQL, a Apache Derby / Java DB działa zarówno w wersji embedded jak i c/s.
Dla przypomnienia czym jest tryb embedded, bo po komentarzach można odnieść wrażenie że nie wiesz:
https://db.apache.org/derby/papers/DerbyTut/embedded_intro.html

jarekczek napisał(a):

Hejtujemy MySQLa? Dlaczego?

W 2017 roku MySQL-a nie rzeba hejtować. Raczej jeśli go chcesz jeszcze używać, trzeba go bronić i to bardzo walecznie, bo bez tego zginie w zapomnieniu.
https://www.reddit.com/r/prog[...]vf4b1/terrible_choices_mysql/

edytowany 1x, ostatnio: vpiotr, 2017-08-15 18:55
Wszystkie bazy danych łatwo znienawidzić jak się z nimi pracuje. Każda ma jakąś durnotę. Wliczając też NoSQLe i event sourcing. - jarekr000000 2017-08-15 18:59
Niech Ci będzie, @vpiotr. Ty odpowiadasz, jak najlepiej uczyć się bazy danych, ja odpowiadam jak podejść do tematu hostowanej bazy danych. Myślałem, że chcesz mu doradzić hostowanie bazy Derby, co byłoby bez sensu. - jarekczek 2017-08-15 19:16

Pozostało 580 znaków

2017-08-17 00:24
Smutny Kot
0

Hej panowie powolutku i bez nerwów. Tak dopiero zaczynam z bazami danych i w Javie też nie mam jakiegoś ogromnego doświadczenia i nie wiedziałem, z której strony to ugryźć. Mimo wszystko wolałbym ogarnąć bardziej przyszłościowy kierunek.Nie wiem czy to Derby czy mySQL Póki co to połowę rzeczy wyjaśnia mi wujek Google. :). Udało mi się stworzyć bazę danych lokalnie instalując MAMP i ściągając connector JDBC. NIe jestem w stanie stwierdzić czy to źle ,dobrze , średnio na jeża czy jeszcze jakoś tak no ale działa :)

Bardziej przyszłościowe to byłoby Oracle. VM jest nawet do ściągnięcia za darmo ze strony Oracle (jedna z większych VM-ek jakie widziałem). - vpiotr 2017-08-17 07:59

Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę