SpringMVC + Hibernate. Hasło użytkownika

0

Cześć.
Używam springMVC, hibernate, mysql.
Zastanawiam się jaki typ danych w bazie danych powinno mieć pole "haslo" tabeli np User.
Poskakałem trochę po googlach i wyczytałem że jeśli zastosuje się algorytm MD5 do szyfrowania hasła to najlepsze jest Char (32).
Tak też zrobiłem.

Teraz tworzę model obiektu User w javie do którego dodałem adnotacje potrzebne dla hibernate. Zastanawiam się tylko jaki typ danych powinno mieć tutaj pole password?
Teoretycznie wydaje mi się że to samo.
Stworzyłem więc

char[] password = new char[32];

I teraz 2 sprawy:

  1. Jak to później poskładać? Mam UserDao, UserDaoImpl, UserService,UserServiceImpl. W którym miejscu powinno odbyć się szyfrowanie? Wydaje mi się że w UserServiceImpl. Wykonywana jest metoda szyfrująca a potem metoda add(user).

  2. Jeśli tak zrobię to będzie mi się sypał controler gdyż:

@RequestMapping(value="/user/add",method=RequestMethod.POST)
	public String addUser(@ModelAttribute("user") User user)

Coś takiego nie przejdzie gdyż z formularza będzie pobierał String a nie Char.
Chyba że kompletnie się za to źle zabieram to wówczas proszę o pomoc od początku.

Zdaje sobie sprawę że pytanie może głupie i czegoś nie rozumiem ale jak na razie zapisywałem w bazie za pośrednictwem springMVC + hibernate proste obiekty.

Z góry dzięki.

0

Tu mam projekt w którym zaimplementowałem spring-sercurity. Zobacz sobie jak to wygląda:
https://github.com/bakeraw2/asco-webshop

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