Prośba o wytłumaczenie kodu w Javie

0

Witam!!
Mam prośbę o wytłumaczenie tego kodu poniżej który znalazłem w sieci:

  
static final char[] hex_values={'0','1','2','3','4','5','6','7','8','9','a','b','c','d','e','f'};
  
     public void init(ServletConfig config) throws ServletException {
        super.init(config);

    }
    private static String string_hex(byte [] tablica)   {

        String wynik="";
        for (int i=0; i<tablica.length; i++)
        {
            wynik=wynik+hex_values[(tablica[i]>>4)&0x0f];
            wynik=wynik+hex_values[tablica[i]&0x0f];
        }
        return wynik;
    }

    
    public void destroy() {

    }
    protected void processRequest(HttpServletRequest request, HttpServletResponse response)
    throws ServletException, IOException {
    response.setContentType("text/html; CHARSET=windows-1250");
        String imie=request.getParameter("imie");
        String nazwisko=request.getParameter("nazwisko");

// co to oznacza ??

        String data=request.getParameter("data");
String id_user=request.getParameter("id_user");
        String email=request.getParameter("email");
        String telefon=request.getParameter("telefon");
        String miasto=request.getParameter("miasto");
        String ulica=request.getParameter("ulica");
        String numer=request.getParameter("numer");
        String kodpocztowy=request.getParameter("kodpocztowy");



            Connection polaczenie;
            Statement sql;
            HttpSession session=request.getSession();



            try {



                Class.forName("com.mysql.jdbc.Driver").newInstance();
         polaczenie=DriverManager.getConnection("jdbc:mysql://"+nazwaserwera+"/"+nazwabazy+"?user="+nazwauzytkownika+"&password="+haslobazy);
      sql=polaczenie.createStatement();

               sql.executeUpdate("insert into klient (imie,nazwisko,telefon,miasto,ulica,nr,kod,email) values('"+imie+"','"+nazwisko+"','"+telefon+"','"+miasto+"','"+ulica+"','"+numer+"','"+kodpocztowy+"','"+email+"');");



response.sendRedirect("w_rejestracja?data="+request.getParameter("data")+"&id_user="+request.getParameter("id_user")+"");


                }

            catch (Exception e)
            {

             }
    } 

static final char[] hex_values={'0','1','2','3','4','5','6','7','8','9','a','b','c','d','e','f'}; // co oznacza taki parametr ??
Pózniej następuję inicjacja serwletu, tzn. początek cyklu życia??

private static String string_hex(byte [] tablica)   // co ten parametr oznacza??

Jeśli ktoś mógłby mi to rozjaśnić to będę wdzięczny, nie mogę tego zrozumieć.

0

static final char[] hex_values={'0','1','2','3','4','5','6','7','8','9','a','b','c','d','e','f'}; - to definicja statycznej tablicy charów
private static String string_hex(byte [] tablica) - to deklaracja prywatnej metody przyjmującej tablicę bajtów i zwracającą Stringa

0

Ok dzięki ale to nie wszystko

...
}
protected void processRequest(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html; CHARSET=windows-1250");
String imie=request.getParameter("imie");
String nazwisko=request.getParameter("nazwisko");

co ten fragment spowoduje?? oraz ten poniżej

Connection polaczenie;
Statement sql;
HttpSession session=request.getSession();

        try {



            Class.forName("com.mysql.jdbc.Driver").newInstance();
     polaczenie=DriverManager.getConnection("jdbc:mysql://"+nazwaserwera+"/"+nazwabazy+"?user="+nazwauzytkownika+"&password="+haslobazy);
  sql=polaczenie.createStatement();

           sql.executeUpdate("insert into klient (imie,nazwisko,telefon,miasto,ulica,nr,kod,email) values('"+imie+"','"+nazwisko+"','"+telefon+"','"+miasto+"','"+ulica+"','"+numer+"','"+kodpocztowy+"','"+email+"');");

response.sendRedirect("w_rejestracja?data="+request.getParameter("data")+"&id_user="+request.getParameter("id_user")+"");

            }

        catch (Exception e)
        {
0

processRequest jest odpalana przy każdym żądaniu do servleta. Z tego co widzę to servlet wyciąga parametry z żądania, potem łączy się z bazą, konstruuje zapytanie i je wykonuje, a na końcu przekierowuje do prawdopodobnie innej strony.

0

Dzięki wielkie, a czy mógłbym cię prosić o podanie jakiś ciekawych linków gdzie mógłbym o tym poczytać?

0

Hmm, podstawy Javy: http://docs.oracle.com/javase/tutorial/

Poza tym Google i hasła typu: SQL, JDBC, Servlet, itd

0

Szukałem, znalazłem pare rzeczy na temat serwletów, ale nie znalazłem dokładnego wytłumaczenia. Czy jakoś bardzie szczegółowo może mi to ktoś wytłumaczyć.

 protected void processRequest(HttpServletRequest request, HttpServletResponse response)
    throws ServletException, IOException {
    response.setContentType("text/html; CHARSET=windows-1250");
        String imie=request.getParameter("imie");
        String nazwisko=request.getParameter("nazwisko"); 
                Class.forName("com.mysql.jdbc.Driver").newInstance();
         polaczenie=DriverManager.getConnection("jdbc:mysql://"+nazwaserwera+"/"+nazwabazy+"?user="+nazwauzytkownika+"&password="+haslobazy);
      sql=polaczenie.createStatement();
 
               sql.executeUpdate("insert into klient (imie,nazwisko,telefon,miasto,ulica,nr,kod,email) values('"+imie+"','"+nazwisko+"','"+telefon+"','"+miasto+"','"+ulica+"','"+numer+"','"+kodpocztowy+"','"+email+"');");
  

Będę bardzo wdzięczny.

0

o_O?
Pierwsze to metoda obsługi żądania za pomocą servletu. Następuje w niej ustawienie kodowania dla strony wynikowej a potem pobranie parametrów z requesta. Tzn np. parametry mogą być przekazane metodą GET poprzez wywołanie jakiegoś http://localhost/superStronka/megaServlet?imie=Jan&&nazwisko=Kowalski
Gdzie oczywiście /superStronka/megaServlet jest zmapowane w web.xml to naszego servleta i wtedy w naszej metodzie odczytamy wartości Jan Kowalski

Drugi kawałek to załadowanie drivera do obsługi bazy MySQL przez JDBC a potem nawiązanie połączenia z bazą i wywołanie podanego zapytania.

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