@Override
public boolean validar(String login, String password) {
Map<String, Object> map = jdbcTemplate.queryForMap(queryPorLogin, login);
if(BCrypt.checkpw(password, map.get())) {
return true;
}else {
return false;
}
}
eu tenho esse metodo para dar um select no banco de dados apartir do login
mas estou com dúvida do que utilizar no map.get() para obter a senha que foi pega do banco de dados desse login
Qdo vc depura o código, como esse map vem preenchido?
na verdd ainda não eu estava apenas testando ainda não consegui rodar a aplicação:
eu já fiz o meu controller / view mas não sei como faz para inciar o swing
meu main:
public static void main(String[] args) {
ConfigurableApplicationContext context = new SpringApplicationBuilder(MarketApplication.class).headless(false).run(args);
LoginController appLogin = context.getBean(LoginController.class);
}
meu controller:
@Component
public class LoginController extends AbstractController {
@Autowired
private LoginFrame frame;
@Autowired
private FuncionarioDAO dao;
@PostConstruct
private void init() {
this.frame.addWindowListener(this);
registerAction(frame.getbEnter(), new AbstractAction() {
private List<Funcionarios> list;
@Override
public void action() {
if (!frame.getjLogin().getText().trim().isEmpty() || !frame.getjPassword().getText().trim().isEmpty()) {
dao.validar(frame.getjLogin().getText(), frame.getjPassword().getText());
}else {
JOptionPane.showMessageDialog(frame, null, "Campo vázio", JOptionPane.INFORMATION_MESSAGE);
}
}
@Override
public void posAction() {
cleanUp();
}
});
}
public void show() {
frame.setVisible(true);
}
@Override
protected void cleanUp() {
frame.setVisible(false);
frame.resetForm();
super.cleanUp();
}
}
meu view frame:
@Component
public class LoginFrame extends JFrame {
private static final int FRAME_WIDTH = 400;
static final int FRAME_HEIGHT = 350;
static final int FRAME_X_ORIGIN = 150;
static final int FRAME_Y_ORIGIN = 150;
static final int BUTTON_WIDTH = 90;
static final int BUTTON_HEIGHT = 30;
private JTextField jLogin;
private JTextField jPassword;
private JButton bEnter;
private JButton bRegister;
private JPanel loginForm;
private JLabel loginText;
private JLabel passwordText;
public LoginFrame() {
setTitle("Login System");
setSize (FRAME_WIDTH, FRAME_HEIGHT);
setLocation (FRAME_X_ORIGIN, FRAME_Y_ORIGIN);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setLayout(new FlowLayout());
setResizable(false);
initComponents();
}
private void initComponents() {
loginForm = new JPanel(new GridLayout(3,1));
//buttons
bRegister = new JButton("Registrar");
bRegister.setBounds(195, 285, BUTTON_WIDTH, BUTTON_HEIGHT);
bEnter = new JButton("Registrar");
bEnter.setBounds(195, 285, BUTTON_WIDTH, BUTTON_HEIGHT);
bEnter.setMnemonic(NativeKeyEvent.VC_ENTER);
//labels
loginText = new JLabel();
loginText.setText("Username:");
passwordText = new JLabel();
passwordText.setText("Password:");
//
loginForm.add(loginText);
loginForm.add(jLogin);
loginForm.add(passwordText);
loginForm.add(jPassword);
loginForm.add(bEnter);
loginForm.add(bRegister);
setVisible(true);
}
public void resetForm() {
jLogin.setText("");
jPassword.setText("");
}
public JTextField getjLogin() {
return jLogin;
}
public void setjLogin(JTextField jLogin) {
this.jLogin = jLogin;
}
public JTextField getjPassword() {
return jPassword;
}
public void setjPassword(JTextField jPassword) {
this.jPassword = jPassword;
}
public JButton getbEnter() {
return bEnter;
}
public void setbEnter(JButton bEnter) {
this.bEnter = bEnter;
}
}
estou com esse error:
No qualifying bean of type ‘com.market.controller.LoginController’ available