Java tutorial
/* * To change this license header, choose License Headers in Project Properties. * To change this template file, choose Tools | Templates * and open the template in the editor. */ package br.ufsm.csi.hotelmanagementats.controller; import br.ufsm.csi.hotelmanagementats.dao.UsuarioAdmDao; import br.ufsm.csi.hotelmanagementats.dao.UsuarioOpDao; import br.ufsm.csi.hotelmanagementats.model.UsuarioAdministrador; import br.ufsm.csi.hotelmanagementats.model.UsuarioOperador; import java.io.UnsupportedEncodingException; import java.security.MessageDigest; import java.security.NoSuchAlgorithmException; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpSession; import org.apache.commons.codec.binary.Base64; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.servlet.ModelAndView; /** * * @author Alisson */ @Controller public class AcessoController { @RequestMapping(value = "realizarLogin.html", method = RequestMethod.POST) public ModelAndView realizarLogin(HttpServletRequest rq, HttpSession session) throws NoSuchAlgorithmException, UnsupportedEncodingException { System.out.println("-------------------------------"); System.out.println("Submit Formulrio de Login..."); String login = rq.getParameter("login"); String senha = rq.getParameter("senha"); ModelAndView mv = new ModelAndView("/WEB-INF/views/paginaInicial"); if (login != null && senha != null) { int verificador = login.indexOf("@"); byte[] senhaByte = senha.getBytes(); MessageDigest md = MessageDigest.getInstance("SHA-256"); byte[] hashSenha = md.digest(senhaByte); byte[] hashSenhaBase = Base64.encodeBase64(hashSenha); String valorSenha = new String(hashSenhaBase, "ISO-8859-1"); if (verificador != -1) { UsuarioAdministrador u = new UsuarioAdministrador(); u.setEmail(login); u.setSenha(valorSenha); UsuarioAdmDao uD = new UsuarioAdmDao(); u = uD.logar(u); if (u == null) { mv.addObject("mensagem", "<Strong> Erro</Strong> Dados invlidos!"); mv.addObject("tipo", "danger"); System.out.println("Erro de Login - Administrador!"); } else { session.setAttribute("administrador", u); mv = new ModelAndView("/WEB-INF/views/ambienteAdministrador/paginaPrincipalAdm"); System.out.println("Login feito com sucesso - Administrador!"); } } else { UsuarioOperador u = new UsuarioOperador(); u.setNickname(login); u.setSenha(valorSenha); UsuarioOpDao uD = new UsuarioOpDao(); u = uD.logar(u); if (u == null) { mv.addObject("mensagem", "<Strong>Erro</Strong> Dados invlidos ou usurio sem acesso ao Sistema!"); mv.addObject("tipo", "danger"); System.out.println("Erro de Login - Operador!"); } else { mv = new ModelAndView("/WEB-INF/views/ambienteEstabelecimento/paginaPrincipalEstabelecimento"); // mv.addObject("mensagem", "<Strong> Sucesso!</Strong> Dados vlidos!"); // mv.addObject("tipo", "success"); session.setAttribute("operador", u); session.setAttribute("estabelecimentoEscolhido", u.getEstabelecimento()); System.out.println("Login feito com sucesso - Operador!"); } } } System.out.println("\n-------------------------------\n"); return mv; } @RequestMapping(value = "realizarLogin.html", method = RequestMethod.GET) public String realizarLoginGET() { return "/WEB-INF/views/paginaInicial"; } @RequestMapping("realizarLogout.html") public ModelAndView realizarLogout(HttpSession session) { session.invalidate(); ModelAndView mv = new ModelAndView("/WEB-INF/views/paginaInicial"); // mv.addObject("mensagem", "<Strong> Sucesso</Strong> Usurio saiu do sistema!"); // mv.addObject("tipo", "success"); return mv; } }