среда, 23 апреля 2014 г.

основы java работа с базой

исходный код компилится в - > класс файлы - > jar

спрашивает класс лоадер найди мне такой то класс
java_path = Где лежат классы  ( чтоб класс лоадер их нахо дил )
чтобы класс стал доступен к нему надо явно обратится и все имеющиеся классы не грузятся сразу

Java database connectivity JDBC
унифицированный драйвер доступа к базам данных
class forName ('db driver')  -- загрузи в память драйвер

driver manager -  штатный jdbc class
get connection method (url , properties )
реальное соединение тсп устанавливается
его надо обрывать когда все сделал иначе каждый раз будет новый коннект создастся и конекты к базе кончатся могут

jdbc vendor_name server
verdor_name

variable = connection
create statement ()
statement execute query (select * from t)

ResultSet

connection pool
Несколько коннектов при старте и висят а когда нужен конект джава выдает уже существующий  коннект

Data source
некий механизм работающий на стороне сервера приложений
и настраивающийся на нем
JNDI
java naming directory interface  имеет древо видную структуру
уникальное имя присваивается каждому конекту чтобы не заблудится
в коннектах которые установлены на сервере приложений

сначала нужно получить контекст
это все что окружает приложение
new initial context
data source lookup (jdbc\my_connect)  возвращает обьект файл база сервер
коннект логический и когда делаешь клозе коннект то он просто вертается в пул и если пул не создан то видимо кончатся

object relational mapping ORM
меппинг между обьектами и базой данных
Java Persistence API реализация JPA - hibernate  
JPA - это набор интерфейсов 

перед началом класса 
из базы в класс и в класса в базу 
первое пишем аннотацию  2 штуки 
@entity замаплен на обьекты  !!! обязан имплементировал интерфейс serialazible 
@table замаплен на таблицу базы данных 

Public class student SERIALASIBLE 
у нас должно быть описано поле 
private static final long serial version uid 
/ версия класса для описания и версия сериализования если его нет то прописывается при компиляции и версия может не сойтись значит слепок из базы не поднимется / 
// следить за этим полем надо //

@id  находить соотношение будет по айдишникам 

сначала создает обьекты предметной области 
так называемые домены а потом делаем маппинги на базу данных 
делает это архитектор или ведущий программист группы 

сешн фектори 
нью конфигурайшн / класс /
корнфигуре - билд сешн фэктори 
опен сешн 
сашн 
HQL - hibernate query language 

Комментариев нет:

Отправить комментарий