pobieranie daty z formularza i zapis w postgresql

0

Witam,

chciałbym pobierać datę wpisaną przez użytkownika za pomocą formularza osadzonego w JSP i zapisać ją do postgresql.
Chciałbym aby format daty był yyyy:mm:dd
Nie bardzo wiem, jakiego formatu użyć żeby to uzyskać, więc zrobiłem zwykłe pole String, ale przy zapisie do bazy mam komunikat:
org.postgresql.util.PSQLException: ERROR: column "dataur" is of type date but expression is of type character varying
W postgresie kolumna ma format date.
Wkleje kod klasy:

package transport;

import java.util.Date;
import java.util.List;

import javax.persistence.Basic;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.Table;

import org.hibernate.Criteria;
import org.hibernate.Query;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.cfg.AnnotationConfiguration;

@Entity
@Table(name = "kierowca")
public class Kierowca {

	@Id
	@GeneratedValue(strategy = GenerationType.IDENTITY)
	int idKier;
	@Basic(optional = false)
	@Column(name = "imie", unique = false, nullable = true)
	String imie;
	@Basic(optional = false)
	@Column(name = "nazwisko", unique = false, nullable = true)
	String nazwisko;
	@Basic(optional = false)
	@Column(name = "dataur", unique = false, nullable = true)
	String dataUr;
	@Basic(optional = false)
	@Column(name = "stawka", unique = false, nullable = true)
	int stawka;
	@Basic(optional = false)
	@Column(name = "uprawnienia", unique = false, nullable = true)
	String uprawnienia;
	@Basic(optional = false)
	@Column(name = "stzatrudnienia", unique = false, nullable = true)
	int stZatrudnienia;
	
	public Kierowca(String imie, String nazwisko, String dataUr, int stawka,
			String uprawnienia, int stZatrudnienia) {
		super();
		this.imie = imie;
		this.nazwisko = nazwisko;
		this.dataUr = dataUr;
		this.stawka = stawka;
		this.uprawnienia = uprawnienia;
		this.stZatrudnienia = stZatrudnienia;
	}
	
	public static void addKierowca (String imie, String nazwisko, String dataur, int stawka, String uprawnienia, int stanz){
		SessionFactory factory = new AnnotationConfiguration().configure().buildSessionFactory();
		Session session1 = factory.openSession();
		session1.beginTransaction();

		Kierowca kierowca = new Kierowca(imie,nazwisko,dataur, stawka, uprawnienia, stanz);
		session1.save(kierowca);
		session1.getTransaction().commit();
		session1.close();
	}
}

i kod strony obsługującej formularz:

<%@ include file="header.jsp"%>
<%@ include file="if_session.jsp"%>
<% 

String imie = request.getParameter("imie");
String nazwisko = request.getParameter("nazwisko");
String dataur = request.getParameter("dataur");
int stawka = Integer.parseInt(request.getParameter("stawka"));
String uprawnienia = request.getParameter("uprawnienia");
int stanz = Integer.parseInt(request.getParameter("status"));
Kierowca.addKierowca(imie,nazwisko,dataur,stawka,uprawnienia,stanz);
response.sendRedirect("displayKierowca.jsp");
%>
<%@ include file="footer.jsp"%>

chodzi mi konkretnie o pobierany parametr dataur.
Co mam zrobić, żeby uzyskać oczekiwany efekt?

0

org.postgresql.util.PSQLException: ERROR: column "dataur" is of type date but expression is of type character varying

dataur musi mieć format Date a nie String. Musisz dokonać konwersji ze String na java.sql.Date i wtedy zapisać. polecam użyć klasy GregorianCalendar.

0
random_char_sequence napisał(a)

org.postgresql.util.PSQLException: ERROR: column "dataur" is of type date but expression is of type character varying

dataur musi mieć format Date a nie String. Musisz dokonać konwersji ze String na java.sql.Date i wtedy zapisać. polecam użyć klasy GregorianCalendar.

nie do końca rozumiem jak mam jej użyć.. Może ktoś pomoże? rozumiem, że dataUr w klasie zamiast String zmienić na GregorianCalendar, ale co dalej?

0

Dla mnie jesteś po prostu fenomenem !!!! Nie znasz typów danych a piszesz z użyciem Hibernate :-D :-D :-D

Rozwiązanie Twojego problemu jest proste. Przeczytaj jakąś książkę, która w tytule ma "Java podstawy"

0
random_char_sequence napisał(a)

Dla mnie jesteś po prostu fenomenem !!!! Nie znasz typów danych a piszesz z użyciem Hibernate :-D :-D :-D

Rozwiązanie Twojego problemu jest proste. Przeczytaj jakąś książkę, która w tytule ma "Java podstawy"

już znalazłem rozwiązanie :-) a Hibernate nawet bez znajomości typów danych dotyczących daty da się mniej więcej zrozumieć :-) może i jestem fenomenem ;]

0

istnieje może jakiś gotowy skrypt dla strony JSP, który potrafi stworzyć coś takiego:

http://img38.imageshack.us/img38/5488/datax.jpg

?

1 użytkowników online, w tym zalogowanych: 0, gości: 1