Fórum Dúvida: Conexão no banco com spring security #418135
06/06/2012
0
Minha aplicação utiliza a persistencia.xml para conectar ao banco conforme abaixo, porém minha dúvida é, a maioria dos modelos existente na web utilizando spring security conecta para validar o login através do xml do spring conforme modelo B, minha aplicação pode ter essas duas conexão, pelo hibernate e pelo spring ?, usando o hibernate para acesso aos dados da aplicação e a conexão do spring apenas para validar usuário ?.
UTILIZADO NA MINHA APLICAÇÃO.
<?xml version=1.0 encoding=UTF-8?>
<persistence version=1.0
xmlns=http://java.sun.com/xml/ns/persistence
xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance
xsi:schemaLocation=http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd>
<persistence-unit name=ecommerce>
<provider>org.hibernate.ejb.HibernatePersistence</provider>
<properties>
<property name=hibernate.archive.autodetection
value=class, hbm />
<!--Configuracoes de dialeto e conexao-->
<property name=hibernate.dialect
value=org.hibernate.dialect.MySQLInnoDBDialect />
<property name=hibernate.connection.driver_class
value=com.mysql.jdbc.Driver />
<property name=hibernate.connection.url
value=jdbc:mysql://localhost/ecommerce />
<property name=hibernate.connection.username
value=root />
<property name=hibernate.connection.password
value=123 />
<!--Configuracoes de Debug-->
<property name=hibernate.show_sql value=true />
<property name=hibernate.format_sql value=true />
<property name=use_sql_comments value=true />
<!--Configuração do segundo nível de cache-->
<property name=hibernate.cache.provider_class
value=net.sf.ehcache.hibernate.EhCacheProvider />
<property name=hibernate.cache.provider_configuration
value=/ehcache.xml />
<property name=hibernate.cache.use_minimal_puts
value=false />
<property name=hibernate.cache.use_query_cache
value=true />
<property name=hibernate.cache.use_second_level_cache
value=true />
<property name=hibernate.cache.use_structured_entries
value=true />
<property name=hibernate.ejb.classcache.br.com.integrator.entities.Categoria
value=read-write />
<!--Configuração do pool de c3p0-->
<property name=hibernate.c3p0.min_size value=5 />
<property name=hibernate.c3p0.max_size value=20 />
<property name=hibernate.c3p0.timeout value=300 />
<property name=hibernate.c3p0.max_statements value=50 />
<property name=hibernate.c3p0.idle_test_period value=3000/>
</properties>
</persistence-unit>
</persistence>
parte da conexão do spring security.xml com opção de conexão do banco de dados.
<authentication-provider>
<jdbc-user-service data-source-ref=dataSource/>
</authentication-provider>
<beans id=dataSource class=org.springframework.jdbc.datasource.DriverManagerDataSource>
<property name=driverClassName value=com.mysql.jdbc.Driver/>
<property name=url value=jdbc:mysql://localhost/ecommerce/>
<property name=username value=root/>
<property name=password value=123/>
</beans>
Roger Mendes
Curtir tópico
+ 0Posts
11/06/2012
Roger Mendes
Gostei + 0
12/06/2012
Davi Costa
Não só criando um data-source pode ser uma classe java onde vc faz toda sua regra de negócio e lá vc usaria o hibernate.
Na prática e na maioria dos sistema que tenho visto por ai é assim que é usado.
Vc configura o hibernate onde e como quiser, vc só não deve é duplicar nos seus arquivos de configuração a conexão com o banco.
Veja esse projeto:
https://github.com/rponte/jsf-issuetracker-project
att Davi
Gostei + 0
12/06/2012
Roger Mendes
Gostei + 0
12/06/2012
Davi Costa
att Davi
Gostei + 0
12/06/2012
Roger Mendes
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)