persistencia.xml
2.6 KB
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
<?xml version='1.0' encoding="utf-8"?>
<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
"http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" []>
<chapter id="persistencia">
<title>Persistência</title>
<section>
<title>JDBC</title>
<para>
A persistência de dados usando JDBC, está disponível na extensão <literal>demoiselle-jdbc</literal>,
que provê uma fábrica de <literal>Connection</literal>. Para utilizá-la basta incluir a dependência para extensão JDBC
no arquivo pom.xml.
</para>
<programlisting role="XML"><![CDATA[<dependency>
<groupId>br.gov.frameworkdemoiselle</groupId>
<artifactId>demoiselle-jdbc</artifactId>
<scope>compile</scope>
</dependency>]]>
</programlisting>
<para>
Para obter uma instância de uma conexão, basta injetá-la na classe:
</para>
<programlisting role="JAVA"><![CDATA[@Inject
private Connection conn;]]></programlisting>
<para>
A conexão será criada pela fábrica do Demoiselle de acordo com as configurações no arquivo de propriedade (<emphasis>demoiselle.properties</emphasis>).
</para>
<para>
Você pode configurar as propriedades da conexão:
</para>
<programlisting>frameworkdemoiselle.persistence.driver.class=MeuDriver
frameworkdemoiselle.persistence.url=MinhaUrl
frameworkdemoiselle.persistence.username=MeuUsername
frameworkdemoiselle.persistence.password=MeuPassword</programlisting>
<para>
ou indicar o JNDI do datasource:
</para>
<programlisting>frameworkdemoiselle.persistence.jndi.name=MeuJndiName</programlisting>
<para>
Caso você necessite usar conexões com datasources diferentes, você pode usar a anotoção
<literal>@Name</literal> passando como valor o nome da conexão definida no arquivo
<literal>demoiselle.properties</literal>
</para>
<para>
No <literal>demoiselle.properties</literal> basta adicionar um nome qualquer para identificar a conexão:
</para>
<programlisting>frameworkdemoiselle.persistence.conn1.jndi.name=MeuJndiName1
frameworkdemoiselle.persistence.conn2.jndi.name=MeuJndiName2</programlisting>
<para>
Injetar o <literal>Connection</literal> usando <literal>@Name</literal> com o nome da conexão escolhida:
</para>
<programlisting role="JAVA"><![CDATA[@Inject
@Name("conn1")
private Connection conn1;
@Inject
@Name("conn2")
private Connection conn2;
]]></programlisting>
<para>
Caso possua mais de uma configuração de datasource você pode definir uma configuração padrão
para sua aplicação.
</para>
<programlisting>frameworkdemoiselle.persistence.default.unit.name=conn1</programlisting>
</section>
</chapter>