将字符串日期转换为java.sql.Date

是否可以将string “20110210”转换为java.sql.Date 2011-02-10?

我试过SimpleDateFormat ,我得到了java.text.ParseException: Unparseable date: "20110210"

我究竟做错了什么?

我有新的SimpleDateFormat(“yyyy-MM-dd”)而不是新的SimpleDateFormat(“yyyyMMdd”)

这对我有用而不会抛出exception:

 package com.sandbox; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Date; public class Sandbox { public static void main(String[] args) throws ParseException { SimpleDateFormat format = new SimpleDateFormat("yyyyMMdd"); Date parsed = format.parse("20110210"); java.sql.Date sql = new java.sql.Date(parsed.getTime()); } } 

也为我工作:

 SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy"); Date parsed = null; try { parsed = sdf.parse("02/01/2014"); } catch (ParseException e1) { // TODO Auto-generated catch block e1.printStackTrace(); } java.sql.Date data = new java.sql.Date(parsed.getTime()); contato.setDataNascimento( data); // Contato DataNascimento era Calendar //contato.setDataNascimento(Calendar.getInstance()); // grave nessa conexão!!! ContatoDao dao = new ContatoDao("mysql"); // método elegante dao.adiciona(contato); System.out.println("Banco: ["+dao.getNome()+"] Gravado! Data: "+contato.getDataNascimento());