Pessaol,
Como eu converto uma data definida como java.util.Date para java.sql.Date?
Obrigado,
JM
Pessaol,
Como eu converto uma data definida como java.util.Date para java.sql.Date?
Obrigado,
JM
tente:
java.util.Date dataUtil = new java.util.Date();
java.sql.Date dataSql = new java.sql.Date(dataUtil.getTime());
[]'s
[quote=jgbt]tente:
java.util.Date dataUtil = new java.util.Date();
java.sql.Date dataSql = new java.sql.Date(dataUtil.getTime());
[]'s[/quote]
Valeu!
Pq esse transformação tem que ser feita dessa maneira?
Ola pessoal tenho o seguinte problema. Tenho essas duas classes a seguir:
[quote]
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStream;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.text.NumberFormat;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.Iterator;
import java.util.List;
import java.util.Locale;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.poifs.filesystem.POIFSFileSystem;
import org.apache.poi.ss.usermodel.Cell;
import org.apache.poi.ss.usermodel.DateUtil;
import org.apache.poi.ss.usermodel.Row;
import br.com.bb.persistencia.ProvedorConexao;
import br.com.leitorexceldistrato.to.GestorDistratoTO;
import br.com.leitorexel.to.GestorTO;
public class LeitorExcelDistrato{
private SimpleDateFormat sdf = null;
private NumberFormat numberFormat = NumberFormat.getInstance(new Locale("pt","BR"));
/**
* Retorna o inputStrem do arquivo.
* @param caminho
* @return
* @throws FileNotFoundException
*/
protected InputStream getInputStreamXls(String caminho) throws FileNotFoundException{
InputStream inputStream = null;
inputStream = new FileInputStream(caminho);
return inputStream;
}
/**
* @return the sdf
*/
public SimpleDateFormat getSdf() {
if(sdf == null){
sdf = new SimpleDateFormat("dd/MM/yyyy");
}
return sdf;
}
protected HSSFWorkbook novoWorkBook(String caminho){
POIFSFileSystem poi = null;
HSSFWorkbook workBook = null;
try {
poi = new POIFSFileSystem (getInputStreamXls(caminho));
workBook = new HSSFWorkbook(poi);
} catch (FileNotFoundException e) {
System.out.println("Arquivo não encontrado! "+e.getMessage());
e.printStackTrace();
System.exit(0);
} catch (IOException e) {
System.out.println("Não foi possível instanciar um workbook. O arquivo não é compativel.");
e.printStackTrace();
System.exit(0);
}
return workBook;
}
/**
* Esse método é usado para mostrar o contéudo do Excel na linha de Comando.
*
* @param xlsPath
*/
public List<GestorDistratoTO> readFromExcel (String xlsPath){
HSSFWorkbook workbook = novoWorkBook(xlsPath);
HSSFSheet sheet = workbook.getSheetAt(0);
Iterator<Row> rowIterator = sheet.rowIterator();
List<GestorDistratoTO> listaGestor = new ArrayList<GestorDistratoTO>(1);
while(rowIterator.hasNext()){
GestorDistratoTO to = new GestorDistratoTO();
Row r = rowIterator.next();
if(r.getRowNum() == 0) continue;
String Gestor = getCellValueAsString(1, r);
to.setGestor(Gestor);
System.out.print("Linha: "+r.getRowNum()+" Coluna 0: "+ to.getGestor());
String razaoSocial = getCellValueAsString(3, r);
to.setRazaoSocial(razaoSocial);
System.out.print("Linha: "+r.getRowNum()+" ,Coluna 2: "+ to.getRazaoSocial());
String coban = getCellValueAsString(2, r);
int cobanInt = 0;
try{
cobanInt = Integer.valueOf(coban);
}catch(Exception e){
}
to.setCoban(cobanInt);
System.out.println("Linha: "+r.getRowNum()+" ,Coluna 7: "+ to.getCoban()+"\n");
String cnpj = getCellValueAsString(5, r);
to.setCnpj(cnpj);
System.out.print("Linha: "+r.getRowNum()+"Coluna 1:"+cnpj);
String situacaoSistema = getCellValueAsString(6, r);
to.setSituacaoSistema(situacaoSistema);
System.out.print("Linha: "+r.getRowNum()+" ,Coluna 3: "+ to.getSituacaoSistema());
Date data = getCellValueAsString(4, r);
to.setData(data);
System.out.print("Linha: "+r.getRowNum()+" ,Coluna 4: "+ to.getData());
String situacaoDocumentos = getCellValueAsString(7, r);
to.setSituacaoDocumentos(situacaoDocumentos);
System.out.print("Linha: "+r.getRowNum()+" ,Coluna 3: "+ to.getSituacaoDocumentos());
String n = getCellValueAsString(8, r);
to.setN(n);
System.out.print("Linha: "+r.getRowNum()+" ,Coluna 6: "+ to.getN());
String saldo = getCellValueAsString(9, r);
to.setSaldo(saldo);
System.out.print("Linha: "+r.getRowNum()+" ,Coluna 6: "+ to.getSaldo());
String Obs = getCellValueAsString(10, r);
to.setObs(Obs);
System.out.print("Linha: "+r.getRowNum()+" ,Coluna 6: "+ to.getObs());
listaGestor.add(to);
}
return listaGestor;
}
protected String getCellValueAsString(int cellIndex, Row row){
String resultado = null;
Cell cell = row.getCell(cellIndex);
if(cell != null){
switch(cell.getCellType()) {
case Cell.CELL_TYPE_STRING:
resultado = cell.getRichStringCellValue().getString().trim();
break;
case Cell.CELL_TYPE_NUMERIC:
if(DateUtil.isCellDateFormatted(cell)) {
Date date = cell.getDateCellValue();
resultado = getSdf().format(date);
}else {
Double valor = cell.getNumericCellValue();
resultado = numberFormat.format(valor).replaceAll("\\.", "");
}
break;
}
}
return resultado;
}
public void sincronizarBancoDados(String xlsPath){
List<GestorDistratoTO> listaGestor = readFromExcel(xlsPath);
for (GestorDistratoTO to : listaGestor) {
boolean res = salvarPlanilhaOficial(to);
if(res){
System.out.println("Registro inserido: Nome do Gestor:"+to.getNomeGestor());
}else{
System.out.println("Registro não inserido: Nome do Gestor:"+to.getNomeGestor());
}
}
ProvedorConexao.desligaDataBase();
}
public boolean salvarPlanilhaOficial(GestorDistratoTO to) {
PreparedStatement ps = null;
int pKnovoGestor = 0;
int i = 0;
try {
pKnovoGestor = getPKnovoPlanilhaOficial();
ps = ProvedorConexao.getConexao().prepareStatement("INSERT INTO Contrato VALUES(?,?,?,?,?,?,?,?,?)");
ps.setInt(1,pKnovoGestor);
ps.setString(2, to.getNomeGestor());
ps.setString(3, to.getCnpj());
ps.setString(4, to.getRazaoSocial());
ps.setString(5, to.getDataRecebimento());
ps.setString(6, to.getSituacao());
ps.setString(7, to.getDataDevolucao());
ps.setString(8, to.getSituacao1());
ps.setDouble(9, to.getCoban());
i = ps.executeUpdate();
} catch (SQLException e) {
e.printStackTrace();
}
return i > 0;
}
private int getPKnovoPlanilhaOficial() throws SQLException{
PreparedStatement ps = ProvedorConexao.getConexao().prepareStatement("SELECT MAX(id) FROM Contrato");
ResultSet rs = ps.executeQuery();
int res = 0;
if(rs.next()) res = (rs.getInt(1)+1);
return res;
}
/**
* The main executable method to test displayFromExcel method.
*
* @param args
*/
public static void main (String[] args){
LeitorExcelDistrato poiExample = new LeitorExcelDistrato();
String xlsPath= "C:\\Users\\NN\\Desktop\\PLANILHA OFICIAL.xls";
poiExample.sincronizarBancoDados(xlsPath);
}
}[/quote]
Essa é a TO:
[quote]import java.util.Date;
public class GestorDistratoTO {
private String gestor;
private String razaoSocial;
private int coban;
private String nomeGestor;
private String nomeCoban;
private String cnpj;
private String situacaoSistema;
private Date data;
private String situacaoDocumentos;
private String n;
private String saldo;
private String obs;
public String getGestor() {
return gestor;
}
public void setGestor(String gestor) {
this.gestor = gestor;
}
public String getRazaoSocial() {
return razaoSocial;
}
public void setRazaoSocial(String razaoSocial) {
this.razaoSocial = razaoSocial;
}
public int getCoban() {
return coban;
}
public void setCoban(int coban) {
this.coban = coban;
}
public String getNomeGestor() {
return nomeGestor;
}
public void setNomeGestor(String nomeGestor) {
this.nomeGestor = nomeGestor;
}
public String getNomeCoban() {
return nomeCoban;
}
public void setNomeCoban(String nomeCoban) {
this.nomeCoban = nomeCoban;
}
public String getCnpj() {
return cnpj;
}
public void setCnpj(String cnpj) {
this.cnpj = cnpj;
}
public String getSituacaoSistema() {
return situacaoSistema;
}
public void setSituacaoSistema(String situacaoSistema) {
this.situacaoSistema = situacaoSistema;
}
public Date getData() {
return data;
}
public void setData(Date data) {
this.data = data;
}
public String getSituacaoDocumentos() {
return situacaoDocumentos;
}
public void setSituacaoDocumentos(String situacaoDocumentos) {
this.situacaoDocumentos = situacaoDocumentos;
}
public String getN() {
return n;
}
public void setN(String n) {
this.n = n;
}
public String getSaldo() {
return saldo;
}
public void setSaldo(String saldo) {
this.saldo = saldo;
}
public String getObs() {
return obs;
}
public void setObs(String obs) {
this.obs = obs;
}
}[/quote]
Como posso fazer o método getCellValueAsString aceitar Date ?
Grato pessoal!
Alguém pode me ajudar com esse código? eu estou usando a apostila FJ-21 da Caelum fiz algumas alterações no código pois estou implementando uma mini loja, estou com problemas para converter a data, e algumas outras coisas que não estou entendendo. Ex: Não sei se minha conexão está estabelecendo corretamente.
Se alguém que ja passou por isso puder me ajuda eu ficarei muito grato!
Abraço!
Estou usando Eclipse Indigo, MySQL 5.5 e o connector mysql-connector-java-5.1.15 e Apache Toncat 7
[b]Mensagem de erro: :?:
HTTP Status 500 -
Tipo de relatório de exceção
mensagem
Descrição O servidor encontrou um erro interno () que o impediu de cumprir este pedido.
exceção
java.lang.NullPointerException
java.text.SimpleDateFormat.parse (SimpleDateFormat.java: 1235)
java.text.DateFormat.parse (DateFormat.java: 335)
Controle.AdicionaCliente.service (AdicionaCliente.java: 47)
javax.servlet.http.HttpServlet.service (HttpServlet.java: 722)
Nota O rastreamento de pilha completa da causa raiz está disponível no Tomcat/7.0.19 Apache logs.
Apache Tomcat/7.0.19[/b]
Código com erro Servlet:
package Controle;
import java.io.IOException;
import java.io.PrintWriter;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import Modelo.Clientes;
@WebServlet("/AdicionaCliente")
public class AdicionaCliente extends HttpServlet {
private static final long serialVersionUID = 1L;
protected void service(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
//Busca o whiter
PrintWriter out = response.getWriter();
//Buscando os parametros no request
String nome = request.getParameter("nome");
String email = request.getParameter("email");
String endereco = request.getParameter("endereco");
String cep = request.getParameter("cep");
String bairro = request.getParameter("bairro");
String cidade = request.getParameter("cidade");
String estado = request.getParameter("estado");
String pais = request.getParameter("pais");
String complemento = request.getParameter("complemento");
String telefone = request.getParameter("telefone");
String dataTexto = request.getParameter("data_cadastro");
String senha = request.getParameter("senha");
Calendar data_cadastro = null;
//Fazendo a conversão da data.
try {
Date date = new SimpleDateFormat("dd/MM/yyyy").parse(dataTexto);
data_cadastro = Calendar.getInstance();
data_cadastro.setTime(date);
} catch (ParseException e) {
out.println("Erro na conversão da Data!");
return; // Para a execução do Metodo
}
//Monta um objeto clientes.
Clientes clientes = new Clientes();
clientes.setNome(nome);
clientes.setEmail(email);
clientes.setEndereco(endereco);
clientes.setCep(cep);
clientes.setBairro(bairro);
clientes.setCidade(cidade);
clientes.setEstado(estado);
clientes.setPais(pais);
clientes.setComplemento(complemento);
clientes.setTelefone(telefone);
clientes.setData_cadastro(data_cadastro);
clientes.setSenha(senha);
Cliente_DAO dao = new Cliente_DAO();
dao.adiciona(clientes);
//Imprime na tela.
out.println("<html>");
out.println("<body>");
out.println("Cliente " + clientes.getNome() + " Adicionado com sucesso!");
out.println("</body>");
out.println("</html>");
}
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
}
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
}
}
Classe Cliente DAO
package Controle;
import java.sql.Connection;
import java.sql.Date;
import java.sql.SQLException;
import Modelo.Clientes;
public class Cliente_DAO {
private Connection connection;
public Cliente_DAO(){
this.connection = new Fabrica_Conexao().getConnection();
}
public void adiciona(Clientes clientes){
String sql = "insert into clientes(nome, email, endereco, cep, " +
"bairro, cidade, estado, pais, complento, telefone, data_cadastro, senha) values (?,?,?,?,?,?,?,?,?,?,?,?)";
try{
java.sql.PreparedStatement stmt = connection.prepareStatement(sql);
stmt.setString(1,clientes.getNome());
stmt.setString(2,clientes.getEmail());
stmt.setString(3, clientes.getEndereco());
stmt.setString(4,clientes.getCep());
stmt.setString(5, clientes.getBairro());
stmt.setString(6, clientes.getCidade());
stmt.setString(7, clientes.getEstado());
stmt.setString(8, clientes.getPais());
stmt.setString(9, clientes.getComplemento());
stmt.setString(10, clientes.getTelefone());
stmt.setDate(11, new Date(clientes.getData_cadastro().getTimeInMillis()));
stmt.setString(12, clientes.getSenha());
stmt.execute();
stmt.close();
}catch(SQLException e){
throw new RuntimeException(e);
}
}
}
Classe que fabrica as conexões:
package Controle;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Connection;
public class Fabrica_Conexao {
public Connection getConnection(){
System.out.println("Conectando ao Banco");
try{
return DriverManager.getConnection("jdbc:mysql://localhost/loja_virtual","root","");
}catch(SQLException e){
throw new RuntimeException(e);
}
}
}
Classe JavaBeans Cliente
package Modelo;
import java.util.Calendar;
public class Clientes {
private long id_cliente;
private String nome;
private String email;
private String endereco;
private String cep;
private String bairro;
private String cidade;
private String estado;
private String pais;
private String complemento;
private String telefone;
private Calendar data_cadastro;
private String senha;
public long getId_cliente() {
return id_cliente;
}
public void setId_cliente(long id_cliente) {
this.id_cliente = id_cliente;
}
public String getNome() {
return nome;
}
public void setNome(String nome) {
this.nome = nome;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
public String getEndereco() {
return endereco;
}
public void setEndereco(String endereco) {
this.endereco = endereco;
}
public String getCep() {
return cep;
}
public void setCep(String cep) {
this.cep = cep;
}
public String getBairro() {
return bairro;
}
public void setBairro(String bairro) {
this.bairro = bairro;
}
public String getCidade() {
return cidade;
}
public void setCidade(String cidade) {
this.cidade = cidade;
}
public String getEstado() {
return estado;
}
public void setEstado(String estado) {
this.estado = estado;
}
public String getPais() {
return pais;
}
public void setPais(String pais) {
this.pais = pais;
}
public String getComplemento() {
return complemento;
}
public void setComplemento(String complemento) {
this.complemento = complemento;
}
public String getTelefone() {
return telefone;
}
public void setTelefone(String telefone) {
this.telefone = telefone;
}
public Calendar getData_cadastro() {
return data_cadastro;
}
public void setData_cadastro(Calendar data_cadastro) {
this.data_cadastro = data_cadastro;
}
public String getSenha() {
return senha;
}
public void setSenha(String senha) {
this.senha = senha;
}
}