Тёмный
Cérebro Binário
Cérebro Binário
Cérebro Binário
Подписаться
Aprenda a programar na prática.

Entenda o código com profundidade.

Seja disputado no mercado.
29. Logout no Java Web
20:14
4 года назад
11. Foreach de forma mais detalhada
14:49
4 года назад
10. Array - Parte3
19:42
4 года назад
09. Array - Parte2
17:17
4 года назад
0. Instalação de Programas
8:05
4 года назад
27. Cadastro de Usuário com Java Web
42:00
4 года назад
28. Login no Java Web
33:42
4 года назад
26. Java Web - Introdução
34:18
4 года назад
Комментарии
@SamuelCereja
@SamuelCereja Месяц назад
que legal Parabens você show...
@pythonsemcao
@pythonsemcao 3 месяца назад
Você tem git? manda ai
3 месяца назад
@@pythonsemcao não tenho mais o código desses vídeos, mas estou preparando material para retomar as gravações e será tudo mais organizado.
@pythonsemcao
@pythonsemcao 3 месяца назад
Bom que vai vir atualizado, to fazendo esse seu curso por aqui e to tendo que resolver um monte de problemas paralelos kkk por causa das atualizações
@matiasrafael7208
@matiasrafael7208 4 месяца назад
criar um programa em Java que gerência as tarefas o programa tem que te permitir so usuário adicionar listar marcar e como concluir as tarefas a serem armazenado em um lista
@javudo264
@javudo264 5 месяцев назад
conteúdo brabo. parabéns e vou usar nos meus estudos aqui.
@cassimosaize6037
@cassimosaize6037 8 месяцев назад
Videos muito bom, gostava que fizesse curso de um sistema de venda em java...
@EdsonSilva-mm2rw
@EdsonSilva-mm2rw 8 месяцев назад
Muito obrigado, você foi o único que trouxe o que precisava logo de cara e com um título bem claro, tbm
@duarte6866
@duarte6866 8 месяцев назад
Mano posso mencionar sem medo de errar, a tua aula acerca desse assuto foi a melhor que visitei aqui no youtube, parabéns didatica excelente
@mauriciomaquengo5265
@mauriciomaquengo5265 9 месяцев назад
muito bem!👍🙏
@steircroph
@steircroph 10 месяцев назад
Cara eu compartilhei seus videos com o pessoal que faz senac comigo porque seu conteudo é muito melhor do que o que recebemos la. ❤
10 месяцев назад
Que bacana saber isso, Cristopher. Obrigado pelo comentário. (mini-spoiler: o canal logo logo voltará à ativa.)
@steircroph
@steircroph 10 месяцев назад
Nossa um canal como esse deveria ser muito mais divulgado e conhecido, seus videos são muito bons.
@steircroph
@steircroph 10 месяцев назад
Cara parabéns pelo conteudo, estou adorando seus videos ❤✌🏿🙏🏻
@julianaayala5892
@julianaayala5892 10 месяцев назад
Tua didática é muito boa!!!
@GuilhermeVRF_
@GuilhermeVRF_ 11 месяцев назад
Muito bom o vídeo!!Me ajudou demais
@fgfgfgfhfhgf1194
@fgfgfgfhfhgf1194 11 месяцев назад
Caro professor, primeiramente, parabéns pela excelente aula!! Não é comum encontrar material com tamanha qualidade! Caso o senhor tenha um tempo, eu gostaria de fazer uma pergunta: Como faço para vitar que os usuários (não autenticados) "colem" a url da página que quero proteger diretamente na barra de endereços? E neste caso, redirecioná-los para a tela de logi?! De qualquer forma, muito obrigado!
11 месяцев назад
A melhor maneira de resolver esse problema é criando uma camada na frente de todas as requisições. No caso do Java Web, essa camada é chamada de Filter. O filter é um pedaço de código que é executado antes de tudo. Nesse Filter, você vai precisar verificar se o usuário pode acessar a página da URL. De maneira resumida: 1. Você vai ter um ArrayList contendo todas as URLs protegidas 2. No Filter, você vai pegar a URL atual que o usuário está acessando 3. Vai verificar se essa URL é uma URL protegida (ou seja, verificar se a URL é igual a alguma URL do ArrayList de todas as URLs protegidas) 4. Se for uma URL protegida, vai verificar se o usuário está autenticado (tem uma sessão aberta) 5. Caso o usuário não esteja autenticado, retornar para página de login. Caso esteja, você pode fazer outras validações, se necessário. Por exemplo: pode ser que o usuário esteja autenticado, mas ele não é admin. Então precisa validar se ele pode acessar aquela página. Bons estudos!
@devaprendiz3758
@devaprendiz3758 Год назад
Parabéns pela didática de ensino, muito bom!!!
Год назад
Que bom que gostou, espero ter ajudado! Bons estudos.
@Magnos-h7u
@Magnos-h7u Год назад
❤❤❤❤
@wiltonmjr
@wiltonmjr Год назад
Aula fantástica por favor continue o QUIZ o sistema ficou muito bom e didático.
@joaoguilherme12345
@joaoguilherme12345 Год назад
Fala Igor muito bom dia! Cara, meu ta dando um erro bizarro. HTTP Status 500 - Internal Server Error Type Exception Report Message For input string: "on" Description The server encountered an unexpected condition that prevented it from fulfilling the request. Exception java.lang.NumberFormatException: For input string: "on" java.base/java.lang.NumberFormatException.forInputString(NumberFormatException.java:67) java.base/java.lang.Integer.parseInt(Integer.java:668) java.base/java.lang.Integer.parseInt(Integer.java:786) servlet.FinalizarTarefaServlet.doPost(FinalizarTarefaServlet.java:62) javax.servlet.http.HttpServlet.service(HttpServlet.java:681) javax.servlet.http.HttpServlet.service(HttpServlet.java:764) org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) Note The full stack trace of the root cause is available in the server logs. Eu já olhei e olhei milhão de vezes, alterei a lógica do for, mas não to achando esse erro, o que eu errei??
@joaoguilherme12345
@joaoguilherme12345 Год назад
Fala Igor bão? Cara um adúvida por que usar Servlets? Já não é possível usar apenas JSP? Colocar todos os métodos dentro da JSP e matar o Servlet? E redirecionar as páginas pelo form = "action"; É apenas uma dúvida que pode ser besta. Um abraço! E continue com essa didática impecável! Valeuuu!
Год назад
Pode usar Jsp direto sim. Obs.: Lembrando, todo JSP é "transformado" em um servlet por baixo dos panos. Explicação de por que vale a pena separar em Jsp e servlets: Servlets são usados para separar mais o código. A lógica e regras de negócio são implementadas no servlet, enquanto a estrutura visual (HTML + dados) é construída no JSP. Se usar apenas JSP, o arquivo vai ficar com lógica e regra de negócio misturadas com estrutura visual. Não existe certo ou errado. Dependendo do projeto, fazer usando só JSP tem suas vantagens. Mas para projetos médios e grandes, vale a pena demais separar as duas coisas. É complicado explicar as vantagens e desvantagens na teoria. É preciso sentir na pele as dificuldades para poder entender vantagens/desvantagens. Por isso eu sempre digo que vale a pena estudar JSP e servlets. Você sente na pele como eram os primórdios do Java web e entende melhor porque existem frameworks como spring hoje em dia.
@cauancisilio7946
@cauancisilio7946 11 месяцев назад
dependendo do tamanho do projeto é má pratica misturar rergra de negócio com estrutura visual, pensa na bagunça que seria fazer uma manutenção em um sistema onde a logica esteja misturada com estrutura html
@joaoguilherme12345
@joaoguilherme12345 Год назад
Fala Igor! Estava fazendo o código e seguindo a sua aula, porém me deu um erro grotesco do SQL, quando eu fui inserir uma tarefa, opção 4, java.sql.SQLIntegrityConstraintViolationException: Cannot add or update a child row: a foreign key constraint fails (`lista_tarefas`.`tarefa`, CONSTRAINT `tarefa_ibfk_1` FOREIGN KEY (`id_usuario`) REFERENCES `usuario` (`id`)) Pelo o meu conhecimento pifio de BD, ele não está encontrando a FK é isso? Mas eu fiz igualzinho o teu prompt do MySQL.
Год назад
Fala, João. Verifique se o usuário existe na tabela de usuário e se o id dele tá igual na tabela de usuário e tarefa. Outra coisa, verifique se você conectou no banco 'lista_tarefas' com o comando "use lista_tarefas". Abraço!
@joaoguilherme12345
@joaoguilherme12345 Год назад
@ Então quando ta criando a tarefa ele não tá amarrando com o id_usuario, o que eu to entendendo ela não encontra o id da tabela usuario, eu conferi ta tudo certo, fiz todo o comando de chave estrangeira igual o seu :( EDIÇÃO 1: FOI ACHADO O ERRO IGOR, burrice do estudante, depois de dois dias, hoje eu mandei mensagem requisitando ajuda sua, e tomei vergonha e fui procurar, solução, erro de digitação em getId para getIdUsuario. Muito obrigado e forte abraço!!!
@joaoguilherme12345
@joaoguilherme12345 Год назад
Igor, eu estou apreciando a sua aula, e sem palavras, que didática amigo, uma didática IMPECÁVEL!! Parabéns pela didática, apenas essa didática para ensinar o que é MVC, depois de 24 aulas/vídeos, com uma calma e paciência e novamente uma DIDÁTICA DE INVEJAR QUALQUER UM! Tu é foda e estou no aguardo da playlist Spring! É nóis :)
Год назад
Obrigado pelo carinho, João. Mini-spoiler: já estou preparando o setup para novos vídeos. Stay tuned e um grande abraço.
@joaoguilherme12345
@joaoguilherme12345 Год назад
Fala Igor, primeiramento, conteúdo EXCELENTE, boa didática, incrível explicação e paciência, POR FAVOR FAÇA MAIS VÍDEOS, Uma pergunta o que você acha mais recomendável para quem está começando à estudar JAVA WEB e quer entrar para o mercado de trabalho, sou estudante de EngSoft e quero uma vaga, estou estudando já tem 4 anos, porém ta foda. Servlet puro ou Spring, qual a melhor forma de implantar um sistema web Java? Vale a pena aprofundar o conhecimento em Servlets ou deve-se partir logo para o aprendizado do framework Spring? Óbvio que tem seus prós que é estudar o Javão, porém eu vejo vários vídeo aulas, vários cursos e fica meio confuso, pois cada um usa uma coisa diferemte, uma tecnologia, um banco, tipo de framework, conexão diferentes, então qual seria o teu conselho? Um abraço, de um cara aleatório que ficou muito seu fã e quer mais vídeo, por favor faz mais.
Год назад
Fala, João, obrigado pelo carinho. Esse tipo de comentário me incentiva a voltar a gravar o mais rápido possível. Pode ter certeza que irei voltar. Respondendo a sua pergunta de forma direta: spring te abre muito mais portas no mercado de trabalho, principalmente no regime CLT. Eu focaria em ficar bom no spring (que é minha especialidade, inclusive). Porém, uma dica valiosa que eu te dou é realmente entender como o spring funciona. E, pra isso, estudar servlets/Java web puro ajuda demais. Digo isso porque o spring facilita e "esconde" muita coisa que acontece debaixo dos panos. Se você conseguir conciliar 70% do seu tempo pra estudar spring e 30% pra estudar os fundamentos dos protocolos TCP/IP e HTTP, aí sim você vai se tornar o profissional que quer e será muito bem remunerado por isso. Digo por experiência própria. Bons estudos!
@joaoguilherme12345
@joaoguilherme12345 Год назад
@ muito obrigado pela resposta Igor, por favor volte, seus vídeos são incríveis, a próxima playlist pode ser de Spring. Muito obrigado pelo conselho irei colocar em praticar e maratonar os vídeos novamente!
@JoaoVitor-fn7vt
@JoaoVitor-fn7vt Год назад
mt bom
@joaoguilherme12345
@joaoguilherme12345 Год назад
Muito bom cara adorei seu conteudo continue explicando, eu te amo <3
@TIHNL-n9e
@TIHNL-n9e Год назад
Bela aula!
@JoaoVitor-fn7vt
@JoaoVitor-fn7vt Год назад
bom demaize
@JoaoVitor-fn7vt
@JoaoVitor-fn7vt Год назад
muito bom
@skyjl482
@skyjl482 Год назад
Muito bom mesmo, direto ao ponto torna mais dinâmico o aprendizado.
@jadsonlago33
@jadsonlago33 Год назад
Cara, sua didática é fantástica. Parabéns!!!
@matheusgta56
@matheusgta56 Год назад
Funciona no apache netbeans?
Год назад
Oi, Matheus. Deveria funcionar sim.
@hazmatgames
@hazmatgames Год назад
nice
@patrikdon.asensi2620
@patrikdon.asensi2620 Год назад
Prof. faz uma série de um projeto de Dashboard do início ao fim com Java, gráficos, export… mas que seja pago, eu serei o primeiro aluno! De fato a sua didática é muito boa e eu maratonei os seus vídeos de Java e você conseguiu esclarecer muitas dúvidas que eu tinha. 😊
@patrikdon.asensi2620
@patrikdon.asensi2620 Год назад
Você poderia fazer um vídeo explicando como usar o Chart.JS com o Java ;)
Год назад
Boa ideia, Patrik. Vou colocar chart.js aqui no planejamento do canal. Vem coisa boa aí!
@patrikdon.asensi2620
@patrikdon.asensi2620 Год назад
Excelente didática Professor. O código para estudo está no seu Git?
Год назад
Infelizmente, não coloquei o código no git. O canal está com planejamento de voltar com tudo e será mais organizado para facilitar o aprendizado. Obrigado pelo comentário e bons estudos.
@patrikdon.asensi2620
@patrikdon.asensi2620 Год назад
Camarada! Você está de parabéns pelos vídeos. A sua didática é muito boa e você explica nos mínimos detalhes, o que é muito difícil encontrar na internet. Estou maratonando todos os vídeos do seu canal.
@skaterfel
@skaterfel Год назад
Em vez de usar uma Collection não seria mais simples usar de inicio o List<T>?
Год назад
Opa, Felipe. Isso mesmo, seria mais simples sim. A Collection foi usada mais por motivos didáticos, para demonstrar a usabilidade do List e ficar claro que existem outras implementações de Collection. Bons estudos e forte abraço.
@skaterfel
@skaterfel Год назад
Legal man! Imaginei isso mesmo, show de bola ótimo trabalho e sucesso
@andersondallmanndallmann5902
Ótimo vídeo. Mas uma pergunta..... seria possível fazer um método chamado "Calculo" que recebe operadores externos (+, -, *, /)? pensando na coesão...
Год назад
Anderson, totalmente possível. Isso vai depender do nível de flexibilidade que você quer dar para seu programa. No final, os resultados serão os mesmos, apenas a implementação será diferente. Isso é muito normal (implementações diferentes para o mesmo objetivo). Contudo, vale ressaltar que você terá apenas um único método com muita responsabilidade. Ou seja, você está centralizando todo o seu código num único ponto central. As boas práticas de arquitetura de software direcionam para separar os métodos nas menores unidades possíveis que eles possam ser (desde que resolvam o problema que se propõem a resolver). Nesse caso, entendo que o mais interessante seja separar cada operação em métodos diferentes. Algumas vantagens em separar: 1. Menos complexidade. Estamos falando aqui de uma simples calculadora. Mas, imagine se você quiser fazer um "upgrade" na sua calculadora e implementar novas operações, tais como raiz, logaritmo, exponencial, cálculos binários/hexadecimais, etc. Manter toda essa lógica em um único ponto vai tornar seu código muito mais difícil de dar manutenção. Ao separar, você criar vários "pontos de lógica" diferentes, separados. Cada ponto tem sua própria funcionalidade e, portanto, fica mais fácil de resolver cada uma delas em separado. 2. Mais facilidade ao testar seu programa. Você consegue testar exatamente se o método "soma" está funcionando tal como deveria. Você consegue testar de forma separada cada operação que existe hoje no seu programa e, também, cada uma das operações que vierem a existir no futuro. 3. Caso você queira expor seu programa na internet, você consegue separar em microserviços. Mas, novamente, depende sempre do seu objetivo ao desenvolver o código. Com certeza, passar a operação por parâmetro tem suas vantagens também. Uma delas é a flexibilidade, reusabilidade e todas as vantagens de ter um código bem genérico (ao invés de um código específico). Finalizo enfatizando que um excelente desenvolvedor precisa ser capaz de avaliar os trade-offs das suas soluções e saber, de forma independente e razoável, tomar uma decisão. E, caso a decisão se mostre não tão boa, ter a humildade para voltar atrás e mudar de solução, ou, ao menos, trabalhar em uma otimização. Grande abraço e bons estudos.
@andersondallmanndallmann5902
@ Agradeço, o retorno! Compreendido a explanação.
@esthersena8337
@esthersena8337 Год назад
olá, gostaria de saber se a séria vai continuar :D?
Год назад
Oi, Esther. Essa série foi gravada para servir como material de apoio de um curso presencial. O restante do conteúdo foi passado em aula, e, infelizmente, não foi gravado. Mas o canal tem planos para fazer novas séries em breve. Bons estudos!
@raulocoify
@raulocoify Год назад
Ótimo vídeo, mais um inscrito. Tenho uma pergunta: teria como eu adicionar um som na hora de abrir o programa?
Год назад
Tem como adicionar, sim. Você pode jogar no Google "how to play sound in Java" e abrir o link do stack overflow. Tem alguns exemplos de código lá. Bons estudos.
@raulocoify
@raulocoify Год назад
@ Valeu.
@_gomesluis
@_gomesluis Год назад
Seus vídeos esta me ajudando mt vlwwwwwwww!!!!!!
@marcusvinicius3d55
@marcusvinicius3d55 Год назад
como posso fazer esse jogo de quiz?= SOCKET - servidor e cliente ??
Год назад
Segue o passo a passo que eu recomendo: 1. Usar um framework como o spring-boot ou micronaut. Isso elimina toda a complexidade de desenvolver a estrutura cliente-servidor, sockets e etc. 2. Utilizar a arquitetura REST para a comunicação entre cliente e servidor Caso você esteja fazendo algum trabalho de faculdade (ou estudando e praticando programação) e seu objetivo é realmente desenvolver a estrutura cliente-servidor com sockets e tudo mais, o que eu recomendo é estudar as classes Socket, a biblioteca java.net e o protocolo http. Vejo que o importante é você entender que mexer com sockets é algo voltado apenas para estudo. Ajuda bastante entender esses conceitos, mas é apenas com objetivos didáticos.
@gabrielmaloca5045
@gabrielmaloca5045 Год назад
cara você conseguiria me ajudar com um código por acaso ?
Год назад
Opa, consigo sim. Se preferir, pode enviar um e-mail para igor@cerebrobinario.com
@gabrielmaloca5045
@gabrielmaloca5045 Год назад
@ te mandei em seu e-mail, se puder dar essa força eu vou agradecer de coração, pode até usar como conteúdo para seu canal, creio que ajudara outras pessoas no futuro
@piracicabano10
@piracicabano10 Год назад
Excelente vídeo, mas não consegui, quando vou listar usuários todos aprecem com null, pois, não entendi o por quê.
Год назад
Oi, Paulo. Se quiser, pode enviar o seu código ou um print para o e-mail igor@cerebrobinario.com e, assim que der, retorno com uma resposta. Bons estudos.
@mariacalveira
@mariacalveira Год назад
estou fazendo um trabalho para montar uma biblioteca de livros, o video me ajudou demais mt bom o canal.
@isaacmoraes2326
@isaacmoraes2326 Год назад
gratidão pelos ensinamentos aprendi muito com vc
@hotelbrh8418
@hotelbrh8418 Год назад
Antes de salvar no BDS ele exclui , após salvar no banco não exclui mais! Tem um truque?
@hotelbrh8418
@hotelbrh8418 Год назад
To tendo problema para excluir usuários de um sistema já rodando tanto no BDS MYSQL e POSTGRESQL?
Год назад
Verifique se existem dados associados aos registros que você está tentando deletar. Caso o registro seja "pai" de outros registros, o banco de dados pode bloquear devido às contraints de chave estrangeira.
@hotelbrh8418
@hotelbrh8418 Год назад
@ Sim sim, tem chave estrangeira mesmo
Год назад
@@hotelbrh8418 Precisa excluir todos os registros filhos primeiro para depois excluir o registro pai. Deu certo aí?
@hotelbrh8418
@hotelbrh8418 Год назад
@ Realmente existe 2 chaves estrangeiras
@hotelbrh8418
@hotelbrh8418 Год назад
@ Não não .. não
@hotelbrh8418
@hotelbrh8418 Год назад
Java tudo de bom!
@cassimosaize6037
@cassimosaize6037 Год назад
Melhor explicacao que esta, impossivel. Muito boa sua aula, parabens...
@carlosramon4981
@carlosramon4981 2 года назад
Bem completinho, mano, valeu.