Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java: Общие вопросы > Правильное построение запросов к БД.


Автор: Avaj 26.4.2010, 10:27
Моя проблема наверняка многократно решена, но всё же позволю себе создать новую тему  smile 

Допустим у меня есть класс, атрибутами которого являются строки:

Код

public class UserData{              //      Класс для хранения информации о пользователях.
        public String UserLogin;
        public String Password;
        public String Email;
        public String Status;
        public String FirstName;
        public String LastName;
        public String Country;
        public String State;
        public String City;
        public String Street;
        public String HouseNumber;  //  int
        public String ApNumber;     //  int
        public String PhoneNumber;
        public String Balance;      //  int
}

и есть объект Data данного класса, у которого, возможно, некоторые строки пусты, а мне нужно вставить значения атрибутов в запрос:

Код

"INSERT INTO user(UserLogin, Password, Email, Status, ...) VALUES(?, ?, ?, ?, ...)"


Так вот если атрибуты пусты, то запрос будет неправильный. Как с этим правильно бороться, ведь не нужно же писать самому проверки на пустоту и в соответствии с ними составлять запрос?
Мне рекомендовали использовать Hibernate, нужен ли он здесь?

Автор: Kircul 26.4.2010, 10:48
Есть такой метод:
http://java.sun.com/javase/6/docs/api/java/sql/PreparedStatement.html#setNull(int,%20int)

А вообще (мое мнение) лучше использовать какую либо ORM библиотеку. Для класса с таким количеством полей прямое использование JDBC приведет к корявому коду.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)