<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>JotaDeveloper &#187; bases de datos</title>
	<atom:link href="http://blog.jotadeveloper.com/tag/bases-de-datos/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.jotadeveloper.com</link>
	<description>Programacion y algo más</description>
	<lastBuildDate>Wed, 20 Jan 2010 09:28:05 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Cómo crear el schema de la base datos con Anotaciones de Hibernate y Spring</title>
		<link>http://blog.jotadeveloper.com/2009/10/23/como-crear-el-schema-de-la-base-datos-con-anotaciones-de-hibernate-y-spring/</link>
		<comments>http://blog.jotadeveloper.com/2009/10/23/como-crear-el-schema-de-la-base-datos-con-anotaciones-de-hibernate-y-spring/#comments</comments>
		<pubDate>Sat, 24 Oct 2009 04:46:31 +0000</pubDate>
		<dc:creator>Jota</dc:creator>
				<category><![CDATA[Articulos]]></category>
		<category><![CDATA[Programación]]></category>
		<category><![CDATA[bases de datos]]></category>
		<category><![CDATA[Hibernate]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[spring]]></category>

		<guid isPermaLink="false">http://blog.jotadeveloper.com/?p=2963</guid>
		<description><![CDATA[A veces es necesario hacer cambios a nuestra base de datos, y siempre estaremos lidiando con las herramientas gráficas o desde la consola, con los cambios en la base de datos, pero existen formas de hacer este trabajo &#8220;sucio&#8221; mucho más rapido y ahorrando tiempo.
En nuestro caso, usaremos Spring 2.5 y Hibernate 3.3 y MySQL, [...]]]></description>
			<content:encoded><![CDATA[<p>A veces <strong>es necesario hacer cambios a nuestra base de datos</strong>, y siempre estaremos lidiando con las herramientas gráficas o desde la consola, con los cambios en la base de datos, pero existen formas de hacer este trabajo &#8220;sucio&#8221; <strong>mucho más rapido y ahorrando tiempo</strong>.</p>
<p>En nuestro caso, usaremos Spring 2.5 y Hibernate 3.3 y MySQL, donde es necesario ya tengas armado los beans de conexión a la base de datos. El siguiente código es un array de cadenas, si en nuestro caso tenemos segmentado los xml de spring, los añadiremos de la siguiente manera.</p>

<div class="wp_syntax"><div class="code"><pre class="java" style="font-family:monospace;"><span style="color: #666666; font-style: italic;">// array de string para agregar todos tus archivos de configuración de spring</span>
<span style="color: #000000; font-weight: bold;">private</span> <span style="color: #000000; font-weight: bold;">static</span> <span style="color: #000000; font-weight: bold;">final</span> <span style="color: #003399;">String</span><span style="color: #009900;">&#91;</span><span style="color: #009900;">&#93;</span> SPRING_CONFIG_FILES <span style="color: #339933;">=</span>
<span style="color: #000000; font-weight: bold;">new</span> <span style="color: #003399;">String</span><span style="color: #009900;">&#91;</span><span style="color: #009900;">&#93;</span><span style="color: #009900;">&#123;</span><span style="color: #0000ff;">&quot;source/spring/config/xxxxxx-db-context.xml&quot;</span>, <span style="color: #0000ff;">&quot;source/spring/config/xxxxxxx-param-context.xml&quot;</span><span style="color: #009900;">&#125;</span><span style="color: #339933;">;</span></pre></div></div>

<p>A continuación, el código necesario para generar nuestra base de datos, el <strong>FileSystemXmlApplicationContext</strong> carga el Contexto de la Aplicación, y una vez teniendo el contexto obtenemos el SessionFactory, que en nuestro caso usamos Anotaciones, creamos el bean en base a la clase <strong>AnnotationSessionFactoryBean</strong> , esto es importante pues en base a esta clase usaremos los metodos <strong>dropDatabaseSchema();</strong> para borrar el actual schema (tablas, relaciones , etc) y luego ejecutamos <strong>createDatabaseSchema();</strong> para crear el nuevo schema.</p>

<div class="wp_syntax"><div class="code"><pre class="java" style="font-family:monospace;"><span style="color: #666666; font-style: italic;">// carga el application context de Spring</span>
 FileSystemXmlApplicationContext appContext <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> FileSystemXmlApplicationContext<span style="color: #009900;">&#40;</span>SPRING_CONFIG_FILES<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #666666; font-style: italic;">// Obtiene el bean del session factory</span>
 AnnotationSessionFactoryBean annotationSF <span style="color: #339933;">=</span> <span style="color: #009900;">&#40;</span>AnnotationSessionFactoryBean<span style="color: #009900;">&#41;</span>  appContext.<span style="color: #006633;">getBean</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;&amp;sessionFactory&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #666666; font-style: italic;">// si quieres eliminar el schema de la base de datos</span>
 annotationSF.<span style="color: #006633;">dropDatabaseSchema</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #666666; font-style: italic;">// para crear nuevamente el schema de la base de datos</span>
 annotationSF.<span style="color: #006633;">createDatabaseSchema</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre></div></div>

<p>Los archivos de configuración de <strong>Spring</strong>, deben lucir de la siguiente manera, hay que destacar el <strong>hibernate.dialect</strong> donde indicamos el dialecto que usaremos para crear el schema,  en el caso de MySQL puede ser MySAM o InnoDB, luego el parametro  <strong>hibernate.hbm2ddl.delimiter</strong> que también indicamos el tipo de tablas que usaremos en mi caso usaré <strong>type=InnoDB</strong>.</p>

<div class="wp_syntax"><div class="code"><pre class="xml" style="font-family:monospace;"><span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;bean</span> <span style="color: #000066;">id</span>=<span style="color: #ff0000;">&quot;dataSource&quot;</span></span>
<span style="color: #009900;">        <span style="color: #000066;">class</span>=<span style="color: #ff0000;">&quot;org.springframework.jdbc.datasource.DriverManagerDataSource&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;property</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;driverClassName&quot;</span> <span style="color: #000066;">value</span>=<span style="color: #ff0000;">&quot;${datasource.classname}&quot;</span> <span style="color: #000000; font-weight: bold;">/&gt;</span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;property</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;url&quot;</span> <span style="color: #000066;">value</span>=<span style="color: #ff0000;">&quot;${datasource.urldb}&quot;</span> <span style="color: #000000; font-weight: bold;">/&gt;</span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;property</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;username&quot;</span> <span style="color: #000066;">value</span>=<span style="color: #ff0000;">&quot;${datasource.userbd}&quot;</span> <span style="color: #000000; font-weight: bold;">/&gt;</span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;property</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;password&quot;</span> <span style="color: #000066;">value</span>=<span style="color: #ff0000;">&quot;${datasource.pass}&quot;</span> <span style="color: #000000; font-weight: bold;">/&gt;</span></span>
    <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/bean<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
&nbsp;
    <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;bean</span> <span style="color: #000066;">id</span>=<span style="color: #ff0000;">&quot;sessionFactory&quot;</span></span>
<span style="color: #009900;">        <span style="color: #000066;">class</span>=<span style="color: #ff0000;">&quot;org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;property</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;dataSource&quot;</span> <span style="color: #000066;">ref</span>=<span style="color: #ff0000;">&quot;dataSource&quot;</span> <span style="color: #000000; font-weight: bold;">/&gt;</span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;property</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;annotatedClasses&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
          <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;list<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
              <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;value<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>Clase1<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/value<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
              <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;value<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>Clase2<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/value<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
          <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/list<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/property<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;property</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;hibernateProperties&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
           <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;props<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
                <span style="color: #808080; font-style: italic;">&lt;!-- &lt;prop key=&quot;hibernate.hbm2ddl.auto&quot;&gt;update&lt;/prop&gt; --&gt;</span>
                <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;prop</span> <span style="color: #000066;">key</span>=<span style="color: #ff0000;">&quot;hibernate.dialect&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>${datasource.dialect}
                <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/prop<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
                <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;prop</span> <span style="color: #000066;">key</span>=<span style="color: #ff0000;">&quot;hibernate.show_sql&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>${datasource.showsql}<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/prop<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
                <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;prop</span> <span style="color: #000066;">key</span>=<span style="color: #ff0000;">&quot;hibernate.hbm2ddl.delimiter&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>${datasource.delimited}<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/prop<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
            <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/props<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/property<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
      <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/bean<span style="color: #000000; font-weight: bold;">&gt;</span></span></span></pre></div></div>

 <img src="http://blog.jotadeveloper.com/wp-content/plugins/feed-statistics.php?view=1&post_id=2963" width="1" height="1" style="display: none;" />]]></content:encoded>
			<wfw:commentRss>http://blog.jotadeveloper.com/2009/10/23/como-crear-el-schema-de-la-base-datos-con-anotaciones-de-hibernate-y-spring/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>MySQL presenta nuevo modelo de lanzamientos</title>
		<link>http://blog.jotadeveloper.com/2009/07/17/mysql-presenta-nuevo-modelo-de-lanzamientos/</link>
		<comments>http://blog.jotadeveloper.com/2009/07/17/mysql-presenta-nuevo-modelo-de-lanzamientos/#comments</comments>
		<pubDate>Fri, 17 Jul 2009 07:44:07 +0000</pubDate>
		<dc:creator>Jota</dc:creator>
				<category><![CDATA[Articulos]]></category>
		<category><![CDATA[Noticias]]></category>
		<category><![CDATA[Programación]]></category>
		<category><![CDATA[bases de datos]]></category>
		<category><![CDATA[mysql]]></category>

		<guid isPermaLink="false">http://blog.jotadeveloper.com/?p=2497</guid>
		<description><![CDATA[MySQL ha presentado un nuevo modelo de lanzamientos, la finalizad de los cambios es crear un modelo más dinámico, accesible, abierto y fácil de entender, todo esto con apresurar la salida de MySQL 6.0, el nombre clave del siguiente lanzamiento será Azalea (como puedes apreciar en el gráfico). El nuevo modelo se explica de la [...]]]></description>
			<content:encoded><![CDATA[<p><strong>MySQL</strong> ha presentado un <a href="http://blog.jotadeveloper.com/wp-content/plugins/feed-statistics.php?url=aHR0cDovL2Rldi5teXNxbC5jb20vdGVjaC1yZXNvdXJjZXMvYXJ0aWNsZXMvbXlzcWwtcmVsZWFzZS1tb2RlbC5odG1s">nuevo modelo de lanzamientos</a>, la finalizad de los cambios es crear un modelo <strong>más dinámico, accesible, abierto y fácil de entender,</strong> todo esto con apresurar la salida de <strong>MySQL 6.0, </strong>el nombre clave del siguiente lanzamiento será <strong>Azalea</strong> (como puedes apreciar en el gráfico). El nuevo modelo se explica de la siguiente manera:<br />
</p>
<ul>
<li>La rama <strong><code>trunk</code> está siempre por lo menos en calidad Beta</strong>.</li>
<li>Un hito (milestone) comienza siempre en calidad Beta (nunca en Alpha) con una fusión (merge) entre las ramas <code>trunk</code> y <code>stage</code>.</li>
<li>Los lanzamientos de los hitos (milestones), con calidad de <strong>RC</strong> (Release Candidates), serán<strong> cada 3 o 6 meses</strong>.</li>
<li>Las ventanas de integración entre los hitos permitirán la inserción de nuevas características de las ramas de <code>stages</code>.</li>
<li>Los <strong>lanzamientos GA</strong> (General Availability) <strong>sucederán cada 12 a 18 meses.</strong></li>
<li>Nunca habrá más de dos lanzamientos con soporte activo.</li>
</ul>
<p><a href="http://blog.jotadeveloper.com/wp-content/plugins/feed-statistics.php?url=aHR0cDovL2Jsb2cuam90YWRldmVsb3Blci5jb20vd3AtY29udGVudC91cGxvYWRzLzIwMDkvMDcvcmVsZWFzZS1tb2RlbF9BLnBuZw=="><img class="alignnone size-full wp-image-2498" title="release-model_A" src="http://blog.jotadeveloper.com/wp-content/uploads/2009/07/release-model_A.png" alt="release-model_A" width="716" height="455" /></a></p>
 <img src="http://blog.jotadeveloper.com/wp-content/plugins/feed-statistics.php?view=1&post_id=2497" width="1" height="1" style="display: none;" />]]></content:encoded>
			<wfw:commentRss>http://blog.jotadeveloper.com/2009/07/17/mysql-presenta-nuevo-modelo-de-lanzamientos/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
