春季日期格式

时间:2018-09-28 15:28:34

标签: java spring datetime spring-boot

我有一个棱角分明的应用程序,可以向我发送类似dd / MM / yyyy的日期。 我想将此日期插入数据库中。 这是我的实体

@Entity
public class Individu implements Serializable {

    @Id
    private String nui;
    private int civility; 
    private String lastName;
    private String useName;
    private String firstName;
    @Temporal(TemporalType.DATE)
    @DateTimeFormat(pattern="dd/MM/yyyy")
    private Date birthDate;

但是当我运行SpringBootApp时,我总是会遇到此错误:

org.springframework.http.converter.HttpMessageNotReadableException: JSON parse error: Cannot deserialize value of type `java.util.Date` from String "20/02/1990": not a valid representation (error: Failed to parse Date value '20/02/1990': Cannot parse date "20/02/1990": not compatible with any of standard forms ("yyyy-MM-dd'T'HH:mm:ss.SSSZ", "yyyy-MM-dd'T'HH:mm:ss.SSS", "EEE, dd MMM yyyy HH:mm:ss zzz", "yyyy-MM-dd")); 

有人对我有解决方案吗?

1 个答案:

答案 0 :(得分:5)

您需要View view; SurfaceView surfaceView; Handler handler; private BarcodeDetector detector; private CameraSource cameraSource; private TextView code; SparseArray<Barcode> items; private static Button btnBack; String barcode = "" ; SparseArray<Articoli> groups = new SparseArray<Articoli>(); Context _context = null; ProductsAdapter.ViewHolder _ViewHolder = null; public LettoreBarcode(){ } @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { view = inflater.inflate(R.layout.fragment_barcode_scanner, container, false); surfaceView = (SurfaceView) view.findViewById(R.id.surfaceView); detector = new BarcodeDetector.Builder(getActivity()).setBarcodeFormats(Barcode.ALL_FORMATS).build(); final Dialog d = new Dialog(getActivity()); btnBack = (Button) view.findViewById(R.id.btnBack); handler = new Handler(); if(!detector.isOperational()){ Toast.makeText(getActivity(), "Detector non attivabile", Toast.LENGTH_LONG).show(); } cameraSource = new CameraSource.Builder(getActivity(), detector).setAutoFocusEnabled(true).build(); surfaceView.getHolder().addCallback(new SurfaceHolder.Callback() { @Override public void surfaceCreated(SurfaceHolder holder) { AttivaCamera(); } @Override public void surfaceChanged(SurfaceHolder holder, int format, int width, int height) { } @Override public void surfaceDestroyed(SurfaceHolder holder) { } }); detector.setProcessor(new Detector.Processor<Barcode>() { @Override public void release() { } @Override public void receiveDetections(Detector.Detections<Barcode> detections) { items = detections.getDetectedItems(); if (items.size() > 0){ getActivity().runOnUiThread(new Runnable() { @Override public void run() { if (items.valueAt(0) != null){ //do something handler.postDelayed(new Runnable() { @Override public void run() { DisattivaCamera(); } },10); //1000 }else { d.setContentView(R.layout.dialog_barcode_assente); d.setTitle("Scanner"); d.setCancelable(true); d.show(); DisattivaCamera(); } } }); } } }); btnBack.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { getActivity().onBackPressed(); } }); return view; } private void AttivaCamera() { try{ cameraSource.start(surfaceView.getHolder()); }catch(IOException e){ Toast.makeText(getActivity(), "Errore nell'avvio della fotocamera", Toast.LENGTH_LONG).show(); } } private void DisattivaCamera() { cameraSource.stop(); }

@JsonFormat