title: Insert values to postgresql using JDBC
body: <p>I want to create something like task manager, using java. I've decided to use PostgreSQL for saving my tasks. On this moment, I want to save my created tasks to PostgreSQL, for this I have following code:</p>
  
  <pre><code>package TaskMgr;
  
  import java.time.LocalDate;
  import java.time.format.DateTimeFormatter;
  import java.time.format.DateTimeFormatterBuilder;
  import java.util.Locale;
  public class Task {
  
  private String title;
  private String description;
  private LocalDate dateFormat;
  
  
  public Task(String title, String description, String date) {
      this.title = title;
      this.description = description;
      this.dateFormat = setDate(date);
  }
  
  
  public LocalDate setDate(String inputDate) {
      DateTimeFormatter formatter = new DateTimeFormatterBuilder()
              .parseCaseInsensitive()
              .appendPattern("yyyy-MM-d")
              .toFormatter(Locale.ENGLISH);
      formatter = formatter.withLocale(Locale.ENGLISH);
      LocalDate outputDate = LocalDate.parse(inputDate, formatter);
      return outputDate;
  
  }
  
  public String getTitle() {
      return title;
  }
  
  public String getDescription() {
      return description;
  }
  
  
  public LocalDate getDateFormat() {
      return dateFormat;
  }
  
  public static void main(String[] args) {
  
  }
  
  
  }
  </code></pre>
  
  <p>And my code for database: (database with table Tasks has been already created, with fields : title of type text, description of type text and date of type date). Here's code of Database class: </p>
  
  <pre><code>package TaskMgr;
  
  import java.sql.Connection;
  import java.sql.DriverManager;
  import java.sql.SQLException;
  import java.sql.Statement;
  import java.time.LocalDate;
  import java.time.Month;
  
  public class Database {
  
  private final String url = "jdbc:postgresql://localhost/tasksdb";
  private final String user = "postgres";
  private final String password = "31415926";
  
  public Connection connect() {
      Connection conn = null;
      try {
          conn = DriverManager.getConnection(url, user, password);
          System.out.println("Connected to the PostgreSQL server successfully.");
  
      } catch (SQLException e) {
          System.out.println(e.getMessage());
      }
  
      return conn;
  }
  
  public void createItem(int idCur, String title, String description, LocalDate date) {
      try {
          Statement stmnt = null;
          stmnt = connect().createStatement();
          String sql = "INSERT INTO TASKS (ID,TITLE,DESCRIPTION,DATE) "
                  + "VALUES " + "(" + idCur + ", " + title + ", " + description + ", " + date + ")";
          stmnt.executeUpdate(sql);
  
      } catch (SQLException e) {
          System.out.println(e.getMessage());
      }
  
  }
  
  public static void main(String[] args) {
      Database database = new Database();
      database.connect();
      Task task = new Task("'Test2'", "'Test2 description'", "1998-01-07");
      database.createItem(2, task.getTitle(), task.getDescription(), task.getDateFormat());
  
  }
  </code></pre>
  
  <p>}</p>
  
  <p>But Intellij throws following error: </p>
  
  <pre><code>ERROR: column "date" is of type date but expression is of type integer
  TIP: You will need to rewrite or cast the expression.  
  </code></pre>
  
  <p>I've tried to google this error, but nothing helped. What should I do with my date?</p>