АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция

Установка

Читайте также:
  1. I. Общая установка сознания
  2. А) Наивная установка.
  3. А) Общая установка сознания.
  4. А) Общая установка сознания.
  5. Абсорбционная холодильная установка
  6. Асфальтосмесительная установка
  7. Б) Бессознательная установка.
  8. Б) Сентиментальная установка.
  9. Б) Установка бессознательного.
  10. В ЭЛЕКТРОУСТАНОВКАХ.
  11. Вимірювальна установка
  12. Вимірювальна установка і методика вимірювань

1. Загрузить и установить сервер баз данных MySQL с сервера http://dev.mysql.com/

2. Загрузить и подключить Hibernate с сервера

http://hibernate.org/

3. Загрузить и подключить JDBC-драйвер, используемой базы данных
в tomcat/common/lib (или, в случае использования Ant, в папку lib проекта), в данном случае mysql-connector-java-3.1.12.jar. Обычно JDBC-драйвер предоставляется на сайте разработчика сервера баз данных.

Библиотека hibernate3.1.3.jar является основной. Кроме нее, устанавливается еще целый ряд необходимых библиотек из дистрибутива Hibernate,
а именно:

cglib.jar, commons-collections.jar, commons-logging.jar, jta.jar, dom4j.jar, log4j.jar, а также библиотеки antlr.jar, asm.jar, asm-attrs.jar для запуска приложения из-под Apache Ant.

dom4j.jar – отвечает за разбор файлов XML-настроек и файла XML-mapping метаданных;

CGLIB (cglib.jar) – эта библиотека используется для генерации кода для расширения классов во время исполнения;

commons-collections.jar – вспомогательная библиотека из проекта Apache Jakarta Commons;

commons-logging.jar – вспомогательная библиотека для журналирования событий из проекта Apache Jakarta Commons;

ODMG4 (odmg.jar) – пакет, необходимый для mapping-коллекций;

EHCache (ehcache.jar) – кэш-провайдер второго уровня;

ANother Tool for Language (antlr.jar) – инструмент, позволяющий создавать трансляторы, компиляторы и распознаватели для текстов, содержащие Java, C#, C++ или Python код;

ASM (asm.jar, asm-attrs.jar) – библиотека, предназначенная для динамического создания классов, а также их динамической корректировки.

Создание простейшего приложения

Hibernate использует JDBC-соединения для вызова SQL-запросов к базе данных, поэтому необходимо указать настроенный пул JDBC-соединений либо использовать один из поддерживаемых пулов, встроенных в Hibernate (C3P0, Proxool). Tomcat настраивает и дает доступ к пулу соединений, используя встроенный DBCP пул, а Hibernate запрашивает данные соединения через интерфейс JNDI. Tomcat связывает пул соединений с JNDI, объявляя ресурс в свой основной конфигурационный файл Tomcat 5.5/conf/server.xml, в виде:

<Context path="/test_db" docBase="test_db">

<Resource name="jdbc/test_db" scope="Shareable"

type="javax.sql.DataSource"/>

 

<ResourceParams name="jdbc/test_db">

<parameter>

<name>factory</name>

<value>org.apache.commons.dbcp.BasicDataSourceFactory </value>

</parameter>

<Context/>

Далее следует настроить конфигурационный файл Hibernate на использование пула соединений. Этот файл должен располагаться в каталоге
WEB-INF/classes и иметь имя hibernate.cfg.xml.

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE hibernate-configuration PUBLIC

"-//Hibernate/Hibernate Configuration DTD 3.0//EN"

"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">

<hibernate-configuration>

<session-factory>

<property name="connection.datasource"> java:comp/env/jdbc/test_db</property>

<property name="show_sql">true</property>

<property name="dialect"> net.sf.hibernate.dialect.MySQLDialect</property>

<property name="hibernate.connection.password">pass</property>

<property name="hibernate.connection.username">root</property>

 

<mapping resource="courses/hiber/Course.hbm.xml"/>

<mapping resource="courses/hiber/Student.hbm.xml"/> </session-factory>

</hibernate-configuration>

Здесь указан способ получения JDBC-соединения, включено логирование команд SQL, настроен диалект SQL.

Для настройки параметров работы Hibernate вместо конфигурационного XML-файла можно использовать файл hibernate.properties в WEB-INF/ classes (в случае, если приложение разбито по пакетам, необходимо это учитывать, чтобы данный файл был доступен):

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

hibernate.query.substitutions true 1, false 0, yes 'Y',
no 'N'

##Прописывается JDBC-драйвер для базы данных MySQL

hibernate.dialect net.sf.hibernate.dialect.MySQLDialect

hibernate.connection.driver_class com.mysql.jdbc.Driver

##Прописывается адрес для подсоединения к серверу

##баз данных

##Формат подключения следующий:

##hibernate.connection.url ##jdbc:mysql://АДРЕС_МАШИНЫ:НОМЕР_ПОРТА/ИМЯ_БАЗЫ_ДАННЫХ? ##autoReconnect=Автоматически переподключатся к базе данных ##или нет, при потере соединения. Этот параметр должен быть ##выставлен в true, т.к. отключение от БД происходит в ##случае 30-ти минутного простоя.

##Параметр useUnicode=true отвечает за использование

##кодировки unicode при работе с БД.

##Параметр characterEncoding=Cp1251 отвечает за кодировку ##при передаче данных в базу данных

hibernate.connection.url jdbc:mysql://localhost:3306/test_db?autoReconnect =true&useUnicode=true&characterEncoding=Cp1251

##Имя пользователя при подключении к БД

hibernate.connection.username root

##Пароль при подключении к БД

hibernate.connection.password pass

##Размер пула соединений к БД

##Обычно используется значение в 50 соединений при

##создании реальных проектов

hibernate.connection.pool_size 50

##Кеширование запросов. Кеш повышает быстродействие при ##использовании большого числа однотипных запросов к базе ##данных

hibernate.statement_cache.size 20

##Директива, которая используется при debug. Результатом ##является то, что все запросы, которые осуществляются
к базе ##данных, будут показаны (или нет) разработчику.

hibernate.show_sql true

Как еще одну альтернативу (не очень удачную) можно рассматривать метод, генерирующий объект java.util.Properties. Например, в виде:

private Properties createProperties() {

Properties properties = new Properties();

properties.setProperty(

"hibernate.dialect",

"net.sf.hibernate.dialect.MySQLDialect");

properties.setProperty(

"hibernate.connection.driver_class",

"com.mysql.jdbc.Driver");

properties.setProperty(

"hibernate.connection.url",

"jdbc:mysql://localhost/test_db");

properties.setProperty(

"hibernate.connection.username", "root");

properties.setProperty(

"hibernate.connection.password", "pass");

return properties;

}


1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | 92 | 93 | 94 | 95 | 96 | 97 | 98 | 99 | 100 | 101 | 102 | 103 | 104 | 105 | 106 | 107 | 108 | 109 | 110 | 111 | 112 | 113 | 114 | 115 | 116 | 117 | 118 | 119 | 120 | 121 | 122 | 123 | 124 | 125 | 126 | 127 | 128 | 129 | 130 | 131 | 132 | 133 | 134 | 135 | 136 | 137 | 138 | 139 | 140 | 141 | 142 | 143 |

Поиск по сайту:



Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.006 сек.)