terça-feira, 21 de setembro de 2010
quarta-feira, 15 de setembro de 2010
terça-feira, 14 de setembro de 2010
sábado, 21 de agosto de 2010
quinta-feira, 29 de abril de 2010
Lenda dos Profissionais de TI
Lenda dos Profissionais de TI
Conta a lenda que quando Deus liberou os conhecimentos das artes entre os homens, determinou que a Tecnologia ficaria restrita a um grupo muito selecionado de sábios, pois entender seus conceitos era uma grande arte! Mas neste pequeno grupo, onde todos se achavam "Semi-Deuses", alguém traiu as determinações divinas… Deus, bravo com a traição, resolveu fazer valer alguns mandamentos para aqueles que escolhessem a tal profissão:
1º – Não terás vida social, familiar ou sentimental.
2º – Não verás teus filhos crescerem.
3º – Não terás feriado, fins de semana ou qualquer outro tipo de folga.
4º – Terás gastrite, se tiveres sorte, se for como os demais, terás úlcera. Às vezes um ou mais enfartos!
5º – A pressa será tua única amiga e as suas refeições principais serão os lanches.
6º – Teus cabelos ficarão brancos antes do tempo, isso se te sobrares cabelos!
7º – Tua sanidade mental será posta em cheque antes que completes 5anos de trabalho.
8º – Dormir será considerado período de folga, logo, não dormirás.
9º – Trabalho será teu assunto preferido, talvez o único!
10º – As pessoas serão divididas em 2 tipos: as que entendem de TI e as que não entendem.
11º – A máquina de café será a tua melhor amiga de trabalho, porém, à cafeína não te farás mais efeito.
12º – Happy Hours serão excelentes oportunidades de ter contato com outras pessoas loucas como você.
13º – Terás sonhos com códigos fonte, bancos de dados e telecomunicações, e resolverás problemas de trabalho neste período.
14º – Exibirás olheiras como troféu de guerra… E o pior: Inexplicavelmente gostarás de tudo isso!
15º – Não poderás adoecer!
16º – Todo dia tudo recomeçará do zero novamente, pois qualquer conhecimento em TI não vale por muito tempo !
Conta a lenda que quando Deus liberou os conhecimentos das artes entre os homens, determinou que a Tecnologia ficaria restrita a um grupo muito selecionado de sábios, pois entender seus conceitos era uma grande arte! Mas neste pequeno grupo, onde todos se achavam "Semi-Deuses", alguém traiu as determinações divinas… Deus, bravo com a traição, resolveu fazer valer alguns mandamentos para aqueles que escolhessem a tal profissão:
1º – Não terás vida social, familiar ou sentimental.
2º – Não verás teus filhos crescerem.
3º – Não terás feriado, fins de semana ou qualquer outro tipo de folga.
4º – Terás gastrite, se tiveres sorte, se for como os demais, terás úlcera. Às vezes um ou mais enfartos!
5º – A pressa será tua única amiga e as suas refeições principais serão os lanches.
6º – Teus cabelos ficarão brancos antes do tempo, isso se te sobrares cabelos!
7º – Tua sanidade mental será posta em cheque antes que completes 5anos de trabalho.
8º – Dormir será considerado período de folga, logo, não dormirás.
9º – Trabalho será teu assunto preferido, talvez o único!
10º – As pessoas serão divididas em 2 tipos: as que entendem de TI e as que não entendem.
11º – A máquina de café será a tua melhor amiga de trabalho, porém, à cafeína não te farás mais efeito.
12º – Happy Hours serão excelentes oportunidades de ter contato com outras pessoas loucas como você.
13º – Terás sonhos com códigos fonte, bancos de dados e telecomunicações, e resolverás problemas de trabalho neste período.
14º – Exibirás olheiras como troféu de guerra… E o pior: Inexplicavelmente gostarás de tudo isso!
15º – Não poderás adoecer!
16º – Todo dia tudo recomeçará do zero novamente, pois qualquer conhecimento em TI não vale por muito tempo !
Marcadores:
lenda,
lenda dos profissionais de ti,
profissionais de ti
quarta-feira, 28 de abril de 2010
Class Finder - Encontrando Classes
Quem nunca precisou de uma classe para descompilá-la e não sabia onde encontrar a mesma.
Eu já passei por várias situações como esta.
Bem, para este fim podemos usar o ClassFinder
Utilitário bastante eficiente!
Basta que você faça o download e execute-o da seguinte maneira:
java -jar classfinder.jar -d dir/ -c AlgumaClasse
-d
Especifica o diretório à ser usado. Argumento obrigatório
-c Especifica o nome da classe à ser encontrada dentro dos jars. A busca é feita em case-sensitive, a menos que você use a opção p. Este argumento é obrigatório(must define it!)
-v Verbose
Espero ter ajudado!
Abraços!
Marcadores:
classe dentro de um jar,
find class,
jar,
procurando classe
sábado, 24 de abril de 2010
Seu código no seu blog como na sua IDE
Eclipse
No eclipse você terá de instalar o Java2Html
Basta que você descompacte jogue seu conteúdo na pasta plugin no diretório de instalação do seu eclipse.
Reinicie o eclipse.
Agora você está apto exportar seu código colorido em html, basta que você selecione a parte do código que você deseja clicar com o botão direito, e escolher a opção Java2Html. Veja a figura abaixo:
Salve em um arquivo, e abra com o brOffice ou Microsoft Word.
Agora você pode copiar e colar seu código onde quiser.
Netbeans
No netbeans, a tarefa se torna ainda mais fácil, basta que você acesse a opção print to html no menu arquivo.
Faça o mesmo procedimento abrindo seu html com o brOffice ou MS Wordl.
rideick@gmail.com
Follow me on twitter
No eclipse você terá de instalar o Java2Html
Basta que você descompacte jogue seu conteúdo na pasta plugin no diretório de instalação do seu eclipse.
Reinicie o eclipse.
Agora você está apto exportar seu código colorido em html, basta que você selecione a parte do código que você deseja clicar com o botão direito, e escolher a opção Java2Html. Veja a figura abaixo:
Salve em um arquivo, e abra com o brOffice ou Microsoft Word.
Agora você pode copiar e colar seu código onde quiser.
Netbeans
No netbeans, a tarefa se torna ainda mais fácil, basta que você acesse a opção print to html no menu arquivo.
Faça o mesmo procedimento abrindo seu html com o brOffice ou MS Wordl.
rideick@gmail.com
Follow me on twitter
Marcadores:
código colorido,
colando código colorido,
eclipse,
netbeans
sexta-feira, 23 de abril de 2010
sábado, 17 de abril de 2010
Como incializar um array de forma correta
Simples!
// Exemplo de um array mal inicializado:
public class Test {
public static void main(String args[]) {
String sa[] = new String[5];
sa[0].charAt(0);
}
}
// Exemplo de um array inicializado corretamente:
public class Test {
public static void main(String args[]) {
String sa[] = new String[5];
for(int i = 0; i < 5; i++) {
sa[i] = new String();
}
sa[0].charAt(0);
}
}
// Exemplo de um array mal inicializado:
public class Test {
public static void main(String args[]) {
String sa[] = new String[5];
sa[0].charAt(0);
}
}
// Exemplo de um array inicializado corretamente:
public class Test {
public static void main(String args[]) {
String sa[] = new String[5];
for(int i = 0; i < 5; i++) {
sa[i] = new String();
}
sa[0].charAt(0);
}
}
Array Multidimensional em Java
Para este exemplo utilizaremos o conceito de agenda.
Primeiro inicialize seu array da seguinte forma:
String agenda[][] = new String[][]{{"João", "8898-4452", "Rua Perdigão"}, {"Pedro", "9984-5569", "Alameda Rio Negro"}, {"Ana", "7422-9966", "Alameda Porto Alegre"}, {"Bia", "5555-2244", "Av. do Estado"}};
Para a impressão do mesmo utilize dois for's(note que o array tem duas dimensões) da seguinte forma:
for(int i = 0; i < agenda.length; i++ ){ System.out.println("--------"); for(int e = 0; e < agenda[i].length; e++){ System.out.println(agenda[i][e]); }
Saída:
João
8898-4452
Rua Perdigão
--------
Pedro
9984-5569
Alameda Rio Negro
--------
Ana
7422-9966
Alameda Porto Alegre
--------
Bia
5555-2244
Av. do Estado
Rápido e simples!
sexta-feira, 16 de abril de 2010
Practical experience on Oracle products: WLS: Monitoring Oracle JRockit JVM with JRockit Mission Control remotely
Practical experience on Oracle products: WLS: Monitoring Oracle JRockit JVM with JRockit Mission Control remotely
Este link mostra como iniciar o Jrockit Mission Control, resolvendo um problema bastante comum de conexão.
Abraço.
Este link mostra como iniciar o Jrockit Mission Control, resolvendo um problema bastante comum de conexão.
Abraço.
quinta-feira, 15 de abril de 2010
Transformando Weblogic 32 bits em 64bits
1. Copie as bibliotecas nativas 64-bits de um servidor que tenha um weblogic 64 bits instalado. Copiar os arquivos se encontram em install_dir/wlserver_10.0/
2. No servidor que você acabou de copiar as libs, altere o arquivo install_dir/wlserver_10.0/
LINUX|Linux)
arch=`uname –m
if [arch =’x86_64’]
arch=’i686’
fi
Remova as linhas:
if [arch =’x86_64’]
arch=’i686’
fi
3. Reinicie o NodeManager e seus Managed Servers.
domingo, 21 de março de 2010
Java para Web - Aprendendo a programar - Parte II - JSP, Javabean, Mysql com login criptografado
Nesta segunda parte vou postar os códigos que consegui desenvolver durante este período. Consegui fazer um pequeno código, com autenticacao usando o banco de dados mysql, consulta de cadastro e inclusão no banco de dados.
Desculpem me se o código estiver um tanto quanto tosco. Lembro que estou apenas aprendendo.
index.jsp
<%--
Document : index
Created on : 16/03/2010, 15:39:11
Author : Alexandro Félix Pereira
--%>
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<%--Cria instâncias das classes userBean e UserDataBean--%>
<jsp:useBean id="user" class="com.vignette.vps.UserBean" scope="page"/>
<jsp:useBean id="userData" class="com.vignette.vps.UserDataBean" scope="page"/>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Pet Plus</title>
</head>
<body>
<%-- Seta todas as propriedades do java bean UserBean, que
equivalem ao nome dos campos "input" abaixo --%>
<jsp:setProperty name="user" property="*"/>
<%
/*Testa se os campos userName ou senha são diferente de null, caso algum seja,
significa que temos uma consulta à ser realizada, caso contrário exibe os
campos para consulta*/
if(user.getUserName() == null |
user.getSenha() == null){
%>
<form action="index.jsp" method="post">
<table>
<tr><th>Usuário:</th>
<th><input name="userName" type="text"/></th>
</tr>
<tr><th>Senha:</th>
<th><input name="senha" type="password"/></th>
</tr>
</table>
<input type="submit" name="Entrar" value="Enviar"/>
</form>
<%
/*Verifica as credenciais do usuário, caso o retorno seja "true", redireciona
o usuário para home.jsp*/
}else if(userData.getCredentials(user.getUserName(), user.getSenha())){
%>
<jsp:forward page = "home.jsp"/>
<%
/*Caso usuário ou senha estejam incorretos, será exibida a mensagem abaixo */
}else{
out.println("Usuário ou senha incorretos");
%>
<br />
<%-- Link recarrega a pagina apos insercao de dados incorreta --%>
<a href="index.jsp">Voltar</a>
<% } %><%-- finaliza o "else" --%>
</body>
</html>
##################################################
home.jsp
<%--
Document : home
Created on : 16/03/2010, 16:17:01
Author : Alexandro Félix Pereira
--%>
<%@page contentType="text/html" pageEncoding="UTF-8"
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Pet Plus</title>
</head>
<body>
<h2><strong>O que deseja fazer?</strong></h2>
<table>
<tr>
<th><a href="listaClientes.jsp">Consultar Clientes</a></th>
</tr>
<tr>
<th><a href="incluirClientes.jsp">Cadastrar Clientes</a></th>
</tr>
</table>
</body>
</html>
Desculpem me se o código estiver um tanto quanto tosco. Lembro que estou apenas aprendendo.
index.jsp
<%--
Document : index
Created on : 16/03/2010, 15:39:11
Author : Alexandro Félix Pereira
--%>
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<%--Cria instâncias das classes userBean e UserDataBean--%>
<jsp:useBean id="user" class="com.vignette.vps.UserBean" scope="page"/>
<jsp:useBean id="userData" class="com.vignette.vps.UserDataBean" scope="page"/>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Pet Plus</title>
</head>
<body>
<%-- Seta todas as propriedades do java bean UserBean, que
equivalem ao nome dos campos "input" abaixo --%>
<jsp:setProperty name="user" property="*"/>
<%
/*Testa se os campos userName ou senha são diferente de null, caso algum seja,
significa que temos uma consulta à ser realizada, caso contrário exibe os
campos para consulta*/
if(user.getUserName() == null |
user.getSenha() == null){
%>
<form action="index.jsp" method="post">
<table>
<tr><th>Usuário:</th>
<th><input name="userName" type="text"/></th>
</tr>
<tr><th>Senha:</th>
<th><input name="senha" type="password"/></th>
</tr>
</table>
<input type="submit" name="Entrar" value="Enviar"/>
</form>
<%
/*Verifica as credenciais do usuário, caso o retorno seja "true", redireciona
o usuário para home.jsp*/
}else if(userData.getCredentials(user.getUserName(), user.getSenha())){
%>
<jsp:forward page = "home.jsp"/>
<%
/*Caso usuário ou senha estejam incorretos, será exibida a mensagem abaixo */
}else{
out.println("Usuário ou senha incorretos");
%>
<br />
<%-- Link recarrega a pagina apos insercao de dados incorreta --%>
<a href="index.jsp">Voltar</a>
<% } %><%-- finaliza o "else" --%>
</body>
</html>
##################################################
home.jsp
<%--
Document : home
Created on : 16/03/2010, 16:17:01
Author : Alexandro Félix Pereira
--%>
<%@page contentType="text/html" pageEncoding="UTF-8"
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Pet Plus</title>
</head>
<body>
<h2><strong>O que deseja fazer?</strong></h2>
<table>
<tr>
<th><a href="listaClientes.jsp">Consultar Clientes</a></th>
</tr>
<tr>
<th><a href="incluirClientes.jsp">Cadastrar Clientes</a></th>
</tr>
</table>
</body>
</html>
##################################################
listaClientes.jsp
<%--
Document : listaClientes
Created on : 17/03/2010, 12:31:29
Author : Alexandro Félix Pereira
--%>
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<%--Cria instâncias das classes userBean e UserDataBean--%>
<jsp:useBean id="userData" class="com.vignette.vps.UserDataBean" scope="page"/>
<jsp:useBean id="user" class="com.vignette.vps.UserBean" scope="page"/>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Consulta Clientes</title>
</head>
<%--Seta prpriedades--%>
<jsp:setProperty name="user" property="*"/>
<%-- Se nome ou id igual null, exibe a página para consulta --%>
<%
if((user.getId() == null && user.getNome() == null)){
%>
<body>
<h2><strong>O que deseja fazer?</strong></h2>
<form action="listaClientes.jsp">
<table>
<tr>
<th align="left">Id:</th>
<th align="left"><input type="text" name="id" value="" size="30" /></th>
</tr>
<tr>
<th align="left">Nome do cliente:</th>
<th align="left"><input type="text" name="nome" value="" size="30" /></th>
</tr>
</table>
<input type="submit" value="Consultar" name="consultar" />
</form>
<% /*
se o retorno do metodo listaClientes for verdadeiro, exibe o resultado
da consulta
*/
}else if(userData.listaClientes(user.getNome(), user.getId())){
%>
<table width="90%" border="1">
<tr>
<% // write out the header cells containing the column labels
for (int i=1; i<=userData.getColumns(); i++) {
out.write("<th>" + userData.getRsmd().getColumnLabel(i) + "</th>");
}
%>
</tr>
<% // now write out one row for each entry in the database table
while (userData.getResult().next()) {
out.write("<tr>");
for (int i=1; i<=userData.getColumns(); i++) {
out.write("<td>" + userData.getResult().getString(i) + "</td>");
}
out.write("</tr>");
}
}
%>
</table>
</body>
</html>
##################################################
incluirClientes.jsp
<%--
Document : incluirClientes
Created on : Mar 21, 2010, 6:05:29 PM
Author : rideick
--%>
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<%--Cria instâncias das classes userBean e UserDataBean--%>
<jsp:useBean id="user" class="com.vignette.vps.UserBean" scope="request"/>
<jsp:useBean id="userData" class="com.vignette.vps.UserDataBean" scope="request"/>
<HTML>
<HEAD><META http-equiv="Content-Type" content="text/html; charset=UTF-8">
<TITLE>Incluir Clientes</TITLE>
</HEAD>
<BODY>
<%-- Define as propriedades do bean user--%>
<jsp:setProperty name="user" property="*"/>
<%
//se nome diferente de null exibe a página para inclusão de cliente
if(user.getNome() == null){
%>
<H3>Incluir Cliente</H3>
<FORM action="incluirClientes.jsp" method="get">
<TABLE>
<TBODY><TR><TH align="left">Nome do Cliente:</TH>
<TH><INPUT type="text" name="nome" value="" size="60"></TH>
</TR>
<TR><TH align="left">Endereço:</TH>
<TH><INPUT type="text" name="end1" value="" size="60"></TH>
</TR>
<TR><TH align="left">Endereço Secundário:</TH>
<TH><INPUT type="text" name="end2" size="60"></TH>
</TR>
<TR><TH align="left">CEP:</TH>
<TH><INPUT type="text" name="cep" size="60"></TH>
</TR>
<TR><TH align="left">Cidade:</TH>
<TH><INPUT type="text" name="cidade" size="60"></TH>
</TR>
<TR><TH align="left">Estado</TH>
<TH><INPUT type="text" name="estado" size="60"></TH>
</TR>
<TR><TH align="left">Telefone:</TH>
<TH><INPUT type="text" name="telefone" size="60"></TH>
</TR>
<TR><TH align="left">Fax:</TH>
<TH><INPUT type="text" name="fax" size="60"></TH>
</TR>
<TR><TH align="left">E-mail:</TH>
<TH><INPUT type="text" name="email" size="60"></TH>
</TR>
<TR><TH align="left">Código de Desconto:</TH>
<TH><INPUT type="text" name="cod_desc" size="60"></TH>
</TR>
<TR><TH align="left">Limite de Crédito:</TH>
<TH><INPUT type="text" name="lim_cred" size="60"></TH>
</TR>
</TBODY></TABLE>
<INPUT type="submit" value="Incluir" name="incluir">
</FORM>
<%
}else{
//construcao do sql para inclusão do cliente
userData.setSql(user.getId(),user.getNome(),user.getEnd1(),user.getEnd2(),
user.getCep(),user.getCidade(),user.getEstado(),user.getTelefone(),
user.getFax(),user.getEmail(),user.getCod_desc(),user.getLim_cred());
//se as linhas afetadas maior ou igual a 1, exibe mensagem de sucesso.
}if(userData.getLinhas() >= 1){
%>
<strong>Dados inseridos com sucesso</strong><br />
<a href="incluirClientes.jsp">Voltar</a>
<%
}
%>
</BODY>
</HTML>
##################################################
UserBean.java
package com.vignette.vps;
import java.io.Serializable;
import java.math.BigInteger;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
/**
*
* @author rideick
*/
public class UserBean implements Serializable{
private String userName,senha,id,nome,end1,end2,
cep,cidade,estado,telefone,fax,email,
cod_desc,lim_cred;
/**
* @return the nome
*/
public String getNome() {
return nome;
}
/**
* @param nome the nome to set
*/
public void setNome(String nome) {
this.nome = nome;
}
/**
* @return the senha
*/
public String getSenha() {
return senha;
}
/**
* @param senha the senha to set
*/
public void setSenha(String senha) {
try {
MessageDigest md5 = MessageDigest.getInstance("MD5");
md5.update(senha.getBytes());
BigInteger hash = new BigInteger(1, md5.digest());
senha = hash.toString(16);
} catch (NoSuchAlgorithmException nsae) {
}
this.senha = senha;
}
/**
* @return the id
*/
public String getId() {
return id;
}
/**
* @param id the id to set
*/
public void setId(String id) {
this.id = id;
}
/**
* @return the userName
*/
public String getUserName() {
return userName;
}
/**
* @param userName the userName to set
*/
public void setUserName(String userName) {
this.userName = userName;
}
/**
* @return the end1
*/
public String getEnd1() {
return end1;
}
/**
* @param end1 the end1 to set
*/
public void setEnd1(String end1) {
this.end1 = end1;
}
/**
* @return the end2
*/
public String getEnd2() {
return end2;
}
/**
* @param end2 the end2 to set
*/
public void setEnd2(String end2) {
this.end2 = end2;
}
/**
* @return the cep
*/
public String getCep() {
return cep;
}
/**
* @param cep the cep to set
*/
public void setCep(String cep) {
this.cep = cep;
}
/**
* @return the cidade
*/
public String getCidade() {
return cidade;
}
/**
* @param cidade the cidade to set
*/
public void setCidade(String cidade) {
this.cidade = cidade;
}
/**
* @return the estado
*/
public String getEstado() {
return estado;
}
/**
* @param estado the estado to set
*/
public void setEstado(String estado) {
this.estado = estado;
}
/**
* @return the telefone
*/
public String getTelefone() {
return telefone;
}
/**
* @param telefone the telefone to set
*/
public void setTelefone(String telefone) {
this.telefone = telefone;
}
/**
* @return the fax
*/
public String getFax() {
return fax;
}
/**
* @param fax the fax to set
*/
public void setFax(String fax) {
this.fax = fax;
}
/**
* @return the email
*/
public String getEmail() {
return email;
}
/**
* @param email the email to set
*/
public void setEmail(String email) {
this.email = email;
}
/**
* @return the cod_desc
*/
public String getCod_desc() {
return cod_desc;
}
/**
* @param cod_desc the cod_desc to set
*/
public void setCod_desc(String cod_desc) {
this.cod_desc = cod_desc;
}
/**
* @return the lim_cred
*/
public String getLim_cred() {
return lim_cred;
}
/**
* @param lim_cred the lim_cred to set
*/
public void setLim_cred(String lim_cred) {
this.lim_cred = lim_cred;
}
}
##################################################
UserDataBean.java
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package com.vignette.vps;
import javax.naming.NamingException;
import javax.sql.*;
import java.sql.*;
import javax.naming.Context;
import javax.naming.InitialContext;
/**
*
* @author Alexandro Felix Pereira
*/
public class UserDataBean {
private Statement pstmt = null;
private PreparedStatement pst = null;
private ResultSetMetaData rsmd = null;
private ResultSet result = null;
private Context ctx = new InitialContext();
private DataSource ds = (DataSource) ctx.lookup("petplus");
private Connection connection = ds.getConnection();
String usrName, pass;
private boolean credentials = false;
private int columns = 0;
private int linhas = 0;
private String sql = null;
UserBean usrBean = new UserBean();
public UserDataBean()
throws SQLException, NamingException{
}
public boolean getCredentials(String userName, String senha)
throws SQLException, NamingException{
String sql = "SELECT user_name,password " +
"FROM users " +
"WHERE user_name='" + userName + "' " +
"AND password='" + senha + "'";
try{
setPstmt(getConnection().createStatement());
setResult(getPstmt().executeQuery(sql));
while(result.next()){
if( getResult().getString("user_name").equals(userName) &&
getResult().getString("password").equals(senha)){
credentials = true;
}
}
}
catch(SQLException e){
System.out.println("Exception na consulta: SELECT user_name,password " +
"FROM users " +
"WHERE user_name='" + userName + "' " +
"AND password='" + senha + "'" + e);
}
return credentials;
}
public boolean listaClientes(String nome, String id) throws SQLException{
setPstmt(getConnection().createStatement());
try{
if (ds != null) {
if(id == null && nome == null){
setResult(getPstmt().executeQuery("SELECT customer_id as id, " +
"name as nome, " + "city as cidade, " +
"" + "phone as telefone, " + "state as estado, " +
"addressline1 as endereço, " +
"addressline2 as endereço_alternativo, " +
"credit_limit as limite_de_crédito " +
"FROM customer " +
"ORDER BY name"));
}else if(id != null && nome == null){
setResult(getPstmt().executeQuery("SELECT customer_id as id, name as nome, city as cidade, " +
"phone as telefone, state as estado, " +
"addressline1 as endereço, " +
"addressline2 as endereço_alternativo, " +
"credit_limit as limite_de_credito " +
"FROM customer " +
"WHERE customer_id=" + id + " " +
"ORDER BY name"));
}else if(id != null && nome != null){
setResult(getPstmt().executeQuery("SELECT customer_id as id, name as nome, city as cidade, " +
"phone as telefone, state as estado, " +
"addressline1 as endereço, " +
"addressline2 as endereço_alternativo, " +
"credit_limit as limite_de_credito " +
"FROM customer " +
"WHERE customer_id=" + id + " " +
"AND LOWER(name) LIKE '%" + nome + "%' " +
"ORDER BY name"));
}else{
setResult(getPstmt().executeQuery("SELECT customer_id as id, name as nome, city as cidade, " +
"phone as telefone, state as estado, " +
"addressline1 as endereço, " +
"addressline2 as endereço_alternativo, " +
"credit_limit as limite_de_credito " +
"FROM customer " +
"WHERE LOWER(name) " +
"LIKE '%" + nome + "%' " +
"ORDER BY name"));
}
if(result != null ){
credentials = true;
}
}
}
catch (SQLException e) {
System.out.println("Error occurred " + e);
}
try {
setRsmd(getResult().getMetaData());
setColumns(getRsmd().getColumnCount());
}
catch (SQLException e) {
System.out.println("Error occurred " + e);
}
return credentials;
}
public void setSql(String id,String nome,String end1,String end2,
String cep,String cidade,String estado,String telefone,
String fax,String email,String cod_desc,String lim_cred) throws SQLException{
pstmt = connection.createStatement();
sql = "INSERT INTO customer " +
"(discount_code, zip, name, " +
"addressline1, addressline2, city, state, phone, " +
"fax, email, credit_limit) " +
"VALUES ('" + cod_desc + "','" +
cep +"','" + nome + "','" + end1 + "','" + end2 +"','" +
cidade + "','" + estado + "','" + telefone
+ "','" + fax + "','" + email + "'," + lim_cred + ")";
setLinhas(pstmt.executeUpdate(sql));
}
public String getSql(){
return sql;
}
/**
* @return the columns
*/
public int getColumns() {
return columns;
}
/**
* @param columns the columns to set
*/
public void setColumns(int columns) {
this.columns = columns;
}
/**
* @return the rsmd
*/
public ResultSetMetaData getRsmd() {
return rsmd;
}
/**
* @param rsmd the rsmd to set
*/
public void setRsmd(ResultSetMetaData rsmd) {
this.rsmd = rsmd;
}
/**
* @return the result
*/
public ResultSet getResult() {
return result;
}
/**
* @param result the result to set
*/
public void setResult(ResultSet result) {
this.result = result;
}
/**
* @return the connection
*/
public Connection getConnection() {
return connection;
}
/**
* @param connection the connection to set
*/
public void setConnection(Connection connection) {
this.connection = connection;
}
/**
* @return the pstmt
*/
public Statement getPstmt() {
return pstmt;
}
/**
* @param pstmt the pstmt to set
*/
public void setPstmt(Statement pstmt) {
this.pstmt = pstmt;
}
/**
* @return the pst
*/
public PreparedStatement getPst() {
return pst;
}
/**
* @param pst the pst to set
*/
public void setPst(String sql) throws SQLException {
pst = connection.prepareStatement(sql);
}
/**
* @return the linhas
*/
public int getLinhas() {
return linhas;
}
/**
* @param linhas the linhas to set
*/
public void setLinhas(int linhas) {
this.linhas = linhas;
}
@Override
public void finalize() throws SQLException{
try{
result.close();
connection.close();
pstmt.close();
}
catch(SQLException e){
System.out.print(e);
}
}
}
Marcadores:
javabean,
jsp,
login,
login com jsp javabean e mysql,
mysql
quinta-feira, 18 de março de 2010
Java para Web - Aprendendo a programar
Depois de um tempo de inatividade, estou eu aqui de volta à "blogar". Agora para passar um pouco minha experiência com programação para web.
Bem, sempre tive vontade de desenvolver aplicações, pois considero a programação, uma arte. Acredito que seja uma grande satisfação, desenvolver algo útil onde você pode facilitar a vida das pessoas através de seu trabalho, e dessa forma, contribuir com o meio em que você vive.
Até hoje tenho desenvolvido, pequenos programas em variadas linguagens, php, C, java e shell script, uma boa gama de linguagens, para alguém que até agora tem na programação, umas espécie de hobby. Contudo, na maioria dos casos, os programas desenvolvidos, só serviram para o meu próprio deleito, nada sofisticados, multi usuário, ou que atendesse a uma certa quantidade de pessoas.
Agora que relatei alguns dos motivos, que me levaram, a realmente aprender a programar. Vou tentar passar um pouco da minha experiência, relatando dificuldades e o que houver de mais relevante, e claro, sempre que aprender algo novo, postarei aqui, para ajudar novos "programadores" como eu.
A duas semanas atrás, estava na livraria Saraiva, e encontrei um livro chamado: Denvolvendo aplicações para web com jsp, servlets, javaserver faces, hibernate, ejb 3 persitense e ajax. Li um pouco o que havia no mesmo e resolvi comprar. É um livro muito, estou usando ele como base no meu aprendizado, que hoje, está fazendo mais ou menos uma semana desde seu início. Até agora, aprendi um pouco sobre servlets, jsp, e javabeans. Já consegui fazer uma página de login, efetuando a consulta em um data source, no app server, uma página para inclusão de dados e outra para consulta de dados. Nada mal para uma semana.
Hoje, aprendi um novo conceito, aprendi que não é uma boa prática, criar a conexão ao banco de dados, dentro da jsp. Devemos fazer isto através de um javabean. Dessa maneira, tornamos nosso código mais legível, mais coeso, e o reaproveitamento de código é mais eficiente. Estou tendo uma certa dificuldade, mas acho que amanhã, consigo transferir toda a parte de conexão com banco, para javabean.
O aprendizado tem sido fantástico, algo que tem me motivado, e me mantido na frente do computador. Estou me fascinando por esta área, e espero que com os conhecimentos adquiridos, possa ajudar outras pessoas a resolver seus problemas, e passar conhecimento às mesmas.
Por hoje é só.
Abraços e boa noite!
Bem, sempre tive vontade de desenvolver aplicações, pois considero a programação, uma arte. Acredito que seja uma grande satisfação, desenvolver algo útil onde você pode facilitar a vida das pessoas através de seu trabalho, e dessa forma, contribuir com o meio em que você vive.
Até hoje tenho desenvolvido, pequenos programas em variadas linguagens, php, C, java e shell script, uma boa gama de linguagens, para alguém que até agora tem na programação, umas espécie de hobby. Contudo, na maioria dos casos, os programas desenvolvidos, só serviram para o meu próprio deleito, nada sofisticados, multi usuário, ou que atendesse a uma certa quantidade de pessoas.
Agora que relatei alguns dos motivos, que me levaram, a realmente aprender a programar. Vou tentar passar um pouco da minha experiência, relatando dificuldades e o que houver de mais relevante, e claro, sempre que aprender algo novo, postarei aqui, para ajudar novos "programadores" como eu.
A duas semanas atrás, estava na livraria Saraiva, e encontrei um livro chamado: Denvolvendo aplicações para web com jsp, servlets, javaserver faces, hibernate, ejb 3 persitense e ajax. Li um pouco o que havia no mesmo e resolvi comprar. É um livro muito, estou usando ele como base no meu aprendizado, que hoje, está fazendo mais ou menos uma semana desde seu início. Até agora, aprendi um pouco sobre servlets, jsp, e javabeans. Já consegui fazer uma página de login, efetuando a consulta em um data source, no app server, uma página para inclusão de dados e outra para consulta de dados. Nada mal para uma semana.
Hoje, aprendi um novo conceito, aprendi que não é uma boa prática, criar a conexão ao banco de dados, dentro da jsp. Devemos fazer isto através de um javabean. Dessa maneira, tornamos nosso código mais legível, mais coeso, e o reaproveitamento de código é mais eficiente. Estou tendo uma certa dificuldade, mas acho que amanhã, consigo transferir toda a parte de conexão com banco, para javabean.
O aprendizado tem sido fantástico, algo que tem me motivado, e me mantido na frente do computador. Estou me fascinando por esta área, e espero que com os conhecimentos adquiridos, possa ajudar outras pessoas a resolver seus problemas, e passar conhecimento às mesmas.
Por hoje é só.
Abraços e boa noite!
Assinar:
Postagens (Atom)