Java EE i MS SQL Server w Eclipse

Czyli jak połączyć się w języku programowania Java z serwerem bazodanowym SQL Server.

Konfiguracja SQL Server:

1. W Configuration Manager włączyć protokół TCP/IP dla serwera.

2. Stworzyć użytkownika z możliwością logowania do bazy:

CREATE LOGIN user_name WITH PASSWORD='***';
CREATE USER user_name FOR LOGIN user_name;

3. Stworzyć bazę danych, której właścicielem jest powyższy użytkownik (Database Properties/Files/Owner).

4. Sprawdzić poprawność logowania.

Eclipse Java IDE for Web Developers:

1. Otworzyć narzędzie Data Source Explorer (Window/Show View/Other/Data Source Explorer)

2. Utworzyć połączenie (Database Connections/New/SQL Server/Microsoft SQL Server 2008 JDBC Driver/Jar List/Clear All). Dodać ściągnięty najnowszy sterownik sterownik JAR. Ustawić nazwę użytkownika i hasło. Zmienić nazwę sterownika na inną. Przetestować połączenie.

Projekt aplikacji:

1. Stworzyć nowy dynamiczny webowy projekt. Określić środowisko wykonawcze, np. Apache Tomcat. Zaznaczyć generuj web.xml. Po utworzeniu projektu wrzucić sterownik, przykładowo o nazwie sqljdbc.jar do /WEB-INF/lib. Utworzyć dwie klasy: Polaczenie.java:

package pl.polaczenie;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

public class Polaczenie {
	
	private Connection connection;
	private String userName = "user_name";
	private String password = "password";
	private String url = "jdbc:sqlserver://localhost:1433;databaseName=base_name";
	
	public Polaczenie() {
		try {
			connection = DriverManager.getConnection(url, userName, password);
		} catch (SQLException e) {
			e.printStackTrace();
		}
	}
	public Connection getConnection() {
		return connection;
	}

}

i PolaczenieTest.java:

package pl.test;

import static org.junit.Assert.assertNotNull;

import org.junit.jupiter.api.Test;

import pl.polaczenie.Polaczenie;

public class PolaczenieTest {
	
	Polaczenie polaczenie = new Polaczenie();
	
	@Test
	public void checkConnection() {
		assertNotNull(polaczenie.getConnection());
	}
}

Odpowiednio należy wstawić nazwę użytkownika, hasło i nazwę bazy danych. Uruchomić jako testy jednostkowe. Jeżeli nie ma błędów mamy poprawne połączenie aplikacji z bazą. I można zacząć tworzyć aplikację webową.

Higiena pracy przy komputerze

Według prawa pracy pracownikowi przysługuje 5 minut przerwy na każdą godzinę pracy przed dowolnym monitorem ekranowym, jeżeli czas ten wynosi ponad 4 godziny dziennie. W przypadku gdy dobowy wymiar pracy zatrudnionego wynosi co najmniej 6 godzin obowiązkowa jest 15-minutowa przerwa.

Ergonomia:

-odległość między użytkownikiem, a monitorem powinna wynosić od 40 do 75cm

-klawiatura powinna się znajdować minimum 10cm od brzegu stołu

-wysokość stołu powinna być taka, żeby między ramieniem a przedramieniem zachowany był kąt prosty, monitor (ekran) powinien znajdować się 20-50 stopni w dół (od linii poziomej oczu do środka ekranu)

-krzesło najlepiej powinno być obrotowe – 360 stopniowe, z podłokietnikami

Dbanie o oczy:

-robienie chwil przerwy, podczas których  rozluźniamy akomodacje oka poprzez, np. patrzenie na odległe przedmioty czy krajobraz za oknem

-monitora nie ustawiamy na przeciw okna, kontrast między ekranem komputera, a otaczającym go tłem powinien mieć w miarę mały kontrast

-można pomyśleć o kroplach nawilżających, gdyż przed komputerem mniej mrugamy i w związku z tym suchość oczu jest większa

Musimy też zadbać o Nasz kręgosłup, uprawiamy w miarę wolnego czasu aktywność fizyczną, im więcej tym lepiej. Staramy się utrzymywać prawidłową postawę ciała siedząc: nogi pod kątem prostym i plecy wyprostowane.

Zabezpieczenie plików serwera www – .htaccess i .htpasswd

Poniższa metoda jest przeznaczona dla systemu Windows, ale dla Linux-a jest bardzo podobna.

.htpasswd :

Otwieramy wiersz polecenia i przechodzimy do lokalizacji pliku wykonalnego htpasswd, jest to zazwyczaj ~\apache\bin.

Tworzymy plik .htpasswd za pomocą komendy:

htpasswd -bc .htpasswd username password

Gdzie argument -b odpowiada za podanie hasła z linii poleceń, -c za stworzenie nowego pliku. W miejsce username i password wstawiamy odpowiednie wartości.

Dla bezpieczeństwa umieszczamy plik .htpasswd w lokalizacji innej niż pliki www.

.htaccess :

Tworzymy plik z rozszerzeniem .htaccess i umieszczamy go w folderze z plikami www. W celu ochrony całego folderu umieszczamy w nim:

AuthUserFile [sciezka]\.htpasswd
AuthType Basic
AuthName "Zaloguj się, aby uzyskać dostęp do folderu"
require valid-user

Gdzie ścieżka to ścieżka dostępu do naszego pliku.

HTML, CSS i JavaScript: przykładowy kod strony

Poniżej przedstawiam przykładowe zastosowanie tych języków w utworzeniu prostej strony www. Składa się z czterech plików dostępnych poniżej.

 

Plik index.html:

<!DOCTYPE html>
<html>
<head>
<title>Menu</title>
<meta charset="utf-8" />
<link rel="stylesheet" type="text/css" href="style.css" />
<script type="text/javascript" src="skrypt.js"></script>
</head>
<body>
<div id="menu">
<ul>Kurs: 
<li><a href="#">HTML</a></li>
<li><a href="#">CSS</a></li>
<li><a href="#">JavaScript</a></li>
</ul>
</div>
<div id="srodek">
Strona z odrobiną HTML-a, CSS-a i JavaScript. Kliknij na podkreślony tekst, a zmieni on kolor: <div onclick="zmiana(this);" class="czarny" id="podkreslonyDiv">kliknij tu, a zmienię kolor.</div>
</div>
</body>
</html>

Strona jest zgodna ze specyfikacją HTML5. Składa się ze standardowej struktury znaczników: html, head, body.

W głowie dokumentu w znaczniku link umieszczamy odnośnik do zewnętrznego arkusza stylów. Dalej podobnie w znaczniku script zewnętrzny skrypt napisany w języku JavaScript.

W ciele dokumentu znajduje się menu w postaci listy nieuporządkowanej.

Następnie blok, który wypośrodkujemy i zastosujemy w znajdującym się w nim tekście, dynamikę strony, polegającą na wywołaniu funkcji zmiana(), która jest odpowiedzialna po kliknięciu na element o id podkreslonyDiv, za zmianę klasy tego elementu.

 

Plik style.css:

body{
background-color: #C0C0C0;
}
ul{
list-style-type:none;
background: url(menu.png) repeat-x;
font-size:23px;
width:332px;
border-radius:15px;
margin:0;
}
ul li{
display:inline;
padding:5px;
}
ul li a:hover{
background: rgb(45,75,80);
border-radius:2px;
color:white;
}
a{
text-decoration:none;
color:#303030 ;
}
#menu{
width:372px;
height:27px;
margin-left: auto ;
margin-right: auto ;
}
#srodek{
margin-top:10px;
width:700px;
margin-left: auto ;
margin-right: auto ;
border-radius:15px;
background-color:#e8edef;
padding:30px;
}
.czerwony{
color:red;
}
.czarny{
color:black;
}
#podkreslonyDiv{
text-decoration:underline;
display: inline;
cursor: pointer;
}

W liście wyłączamy style listy (wypunktowanie). Następnie podajemy lokalizację do obrazka, który posłuży za tło menu, musimy go odpowiednio rozciągnąć w poziomie. Za pomocą ul li, odpowiednio przodka i potomka, określamy, że elementy listy mają wyświetlać się w jednej linii. Pseudoklasa :hover odpowiada za czynność najechania kursorem na element łącza a, zmieniamy tu, m.in. tło i kolor. W łączu wyłączamy charakterystyczne dla linków podkreślenie tekstu.

.czerwony i .czarny odpowiednio to zdefiniowane własne klasy, każda posiada określony inny kolor.

 

Plik skrypt.js:

function zmiana(div){
if (div.className == "czarny")
div.className = "czerwony";
else
div.className = "czarny";
}

Wspomniana wcześniej funkcja zmiana() wywołana z parametrem div. Początkowo klasa div-a jest ustawiona na kolor czarny. Odpowiednio po wywołaniu funkcji ma się zmieniać na przeciwną, o odmiennym kolorze.

 

Plik menu.png (kliknij prawym przyciskiem myszy na linie pionową i kliknij zapisz jako):

 

Wszystko umieszczamy w jednym folderze i uruchamiamy plik index.html za pomocą dowolnej przeglądarki internetowej.

Darmowy hosting i AdSense

Po co wydawać pieniądze na płatny hosting, jak można połączyć darmowy hosting z AdSense. Zapewne wiele zależy od dostawcy, ale choćby zwykły Blogger, pisać bloga i zarabiać na reklamach na nim umieszczonych.

A czy tak można? :

Dzięki Bloggerowi możesz zarabiać na swoim blogu, wyświetlając na nim reklamy, np. z AdSense.

Źródło: Umieszczanie reklam na blogu – Blogger – Pomoc

Jest co prawda mocno okrojony i nie można wykonywać kopii bezpieczeństwa, ale jest.

Sposób na zarobek w sieci

Obecnie internet ma prawie każdy. Więc czemu by nie wykorzystać go nie tylko w celu informacyjnym, rozrywkowym, komunikacyjnym, ale również spróbować zarobić poprzez coś co Nas pasjonuje.

I tu prosty przepis na przeobrażenie przyjemności w pieniądze.

1. Temat.

Czyli z czym będzie związana witryna internetowa. Ktoś lubi biegać? Niech pisze o bieganiu. Kto inny czytać? Niech pisze recenzje książek.

2. Domena

Już zawczasu dobrze jest rozejrzeć się za swoim miejscem w sieci, powinna ona być wpadająca w ucho, zawierać jak najwięcej słów kluczowych odpowiednich dla treści strony, ale też niekoniecznie, może to być po prostu imię i nazwisko.

3. Hosting

Wiąże się to z serwerem, na którym będą się znajdowały pliki z zawartością strony.

I tu istnieje wiele rozwiązań.

Można w najtrudniejszym przypadku postawić własny serwer i zarządzać nim, powinien być cały czas pod dostępem sieci, to warunek obowiązkowy.  System jakiś stabilny, np. jakaś dystrybucja Linuksa. Szerokopasmowe połączenie z internetem, taka oddzielna stacja pod serwer. Można najpierw spróbować czegoś podobnego ze zwykłym codziennie używanym komputerem, laptopem, czy stacjonarnym – nieważne. Ale rozwiązanie problemu na tym przykładzie oddzielnego serwera wiąże się z pewnymi kwestiami finansowymi i miejscem na dodatkową stację roboczą.

Istnieją oczywiście darmowe alternatywy, np. :

https://www.000webhost.com/

https://www.cba.pl/pl

https://www.heroku.com/

Wszystkie przeze mnie sprawdzone. I oto jakie wrażenia:

Na webhost pomimo informacji, że nie ma reklam, jak strona zaczęła prawdopodobnie być bardziej popularna lub po upływie czasu, reklamy i tak były. Na cba niestety też. Jedynie na heroku nie ma reklam. Ale to propozycja raczej dla osób, które miały już kontakt z konsolą, i interesuje je bardziej pisanie strony w takich językach, jak np. Ruby czy Java. Których na dwóch pierwszych pozycjach na pewno nie znajdzie. Darmowe heroku wiąże się z pewną pulą dynamicznych godzin pracy serwera.  Nie wiem co się dokładnie dzieje po przekroczeniu limitu, czy jest to ograniczone pasmo przepływu, czy w ogóle dezaktywuje się aplikacja. Ale na szczęście hosting jest skalowalny, więc jak strona zacznie być popularna można za opłatą pominąć te kwestię. Co do dwóch pierwszych to są to typowe PHP-owo MySQL-owe rozwiązania na serwerze współdzielonym z przyjaznym panelem administracyjnym.

Jeżeli ktoś już spróbuje darmowego sposobu i dojdzie do wniosku, że to nie jest to czego dokładnie oczekiwał, zawsze może za drobną opłatą za pierwszy rok skorzystać z oferty takiej jak, np. :

https://www.ovh.pl/hosting/

https://www.nazwa.pl/hosting/

https://home.pl/hosting

https://az.pl/hosting/

To się tyczy pierwszego roku, który zazwyczaj jest w jakiejś promocji, czasami nawet z darmowymi domenami, a po okresie promocyjnym ceny wahają się przeważnie od 300zł/rok.

4. Postawienie strony

Umieszczamy na stronie jak najwięcej słów kluczowych, żeby roboty wyszukiwarek mogły z łatwością znaleźć naszą stronę, którą utworzymy zwykłym Pajączkiem chociażby, albo czymś w rodzaju systemowego Notatnika, jak Notepad++.

Oczywiście lepiej skorzystać z jakiegoś zintegrowanego środowiska programistycznego, typu Eclipse, albo typowo webowego Brackets utworzonego w JavaScript.

Można pominąć kwestię programistyczną i skorzystać z gotowego CMS-a (systemu zarządzania treścią) i można mieć całkiem przyzwoitą stronę nie znając nic HTML-a, CSS, PHP czy też JavaScript-u. Na przykład popularny WordPress czy Joomla (oba wymagają wyłącznie PHP i MySQL-a, więc świetnie nadają się do większości darmowych czy mniej płatnych hostingów).

Prośba o dodanie strony do indeksu:

https://www.google.com/webmasters/tools/submit-url

5. Dodanie reklam.

Dodajemy jak najwięcej i jak największe reklamy, a skąd? Chociażby niejednej osobie obiło się o ucho AdSense Google. Jest to w pełni darmowa propozycja, a pieniądze naliczane są za kliknięcia bądź wyświetlenia reklam.

Nie zapomnijmy o dodaniu linku do rejestracji w serwisie:

https://www.google.com/adsense/start/

6. Publikacja strony.

Starajmy się rozpowszechnić adres naszej strony internetowej, więc gdzie się da, umieszczajmy linki, na blogach czy forach .

Kto chce, może skorzystać z kampanii reklamowej dla własnej strony, czyli AdWords, też od Google np. w stosunku 1:10 (1zł wydana na AdWords jest z zarobionych 10zł na AdSense).

7. Cierpliwość.

Czekamy, ale jeżeli chcemy by strona przychodziła stałe dochody, musimy ciągle pracować nad naszą stroną, tzw. pozycjonowaniem i rozwojem strony, bo kogo interesowałaby informacje sprzed bodajże 5-10lat.