SQLite и Java - PullRequest
       16

SQLite и Java

0 голосов
/ 22 февраля 2011

Когда я создавал новый проект в Netbeans, я добавил sqlite.jar в classpath и библиотеку.Я написал короткую тестовую программу, и она прекрасно работает!

Теперь я хочу добавить графический интерфейс в качестве внешнего интерфейса, поэтому я создаю совершенно новый проект в Netbeans, но я создаю свинг-проект и создаю графический интерфейс, используя netbeans,Графический интерфейс работает нормально сам по себе (просто беря ввод и записывая его в консоль в качестве теста).

Итак, теперь в проекте с графическим интерфейсом я иду и в папке «Source Package» я добавляю новый класс Java иЯ копирую / вставляю код из моей другой (работающей) реализации sqlite.Я также добавляю sqlite в Classpath / библиотеку, и ничего не работает!

Это (часть) моего кода:

package my.test;

import java.sql.*;

public class sqlaccess {
    Class.forName ("org.sqlite.JDBC");
    Connection conn = DriverManager.getConnection("jdbc:sqlite:TestUser.db");
    Statement stat = conn.createStatement();
    /* commented out the connecting/creating tables etc code */
}

Я получаю следующую ошибку:

C:\Users\xxx\Documents\NetBeansProjects\TestUser\src\my\testuser\sqlaccess.java:12:    <identifier> expected
Class.forName ("org.sqlite.JDBC");
C:\Users\xxx\Documents\NetBeansProjects\TestUser\src\my\testuser\sqlaccess.java:12: illegal start of type
Class.forName ("org.sqlite.JDBC");

Так что я почти уверен, что проблемаэто способ, которым я объединяю эти 2 класса / файлы, так как каждый из них работает идеально самостоятельно *

Ответы [ 2 ]

2 голосов
/ 22 февраля 2011

Проблема в этом блоке кода:

Class.forName ("org.sqlite.JDBC");
Connection conn = DriverManager.getConnection("jdbc:sqlite:TestUser.db");
Statement stat = conn.createStatement();

Вам нужно переместить этот код в метод, конструктор, статический инициализатор или что-то подобное. Код не может быть помещен непосредственно в тело класса в Java.

1 голос
/ 22 февраля 2011

Как насчет ..

public class sqlaccess {
  void init(){
    try{
      Class.forName ("org.sqlite.JDBC");
      Connection conn = DriverManager.getConnection("jdbc:sqlite:TestUser.db");
       Statement stat = conn.createStatement();
      /* commented out the connecting/creating tables etc code */
    }
    catch(ClassNotFoundException ex){
       //Handle Exception
    }
  }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...