Co tam Ruby on Rails - sam ActiveRecord jest wspaniały.
Tyle mówi się o RoR jednak IMHO należałoby także wspomnieć osobno o sercu - ActiveRecord.
Ostatnio trochę myślałem o różnych platformach do napisania aplikacji. Niestety nie webowej więc Railsy skreśliłem na samym początku - niesłusznie. Można wyjąć tylko odpowiednik Hibernate.
- require 'rubygems'
- require_gem 'activerecord'
- class Person < ActiveRecord::Base
- end
- ActiveRecord::Base.establish_connection(
- :adapter => "postgresql",
- :username => "user",
- :password => "you wish you will know",
- :database => "database"
- )
- author = Person.new(:first_name => "John", :last_name => "Brown")
- author.save
- puts author.id
Odpowiednik w Hibernate. Person.java:
- import javax.persistence.*;
- public class Person {
- @Id
- EntityManagerFactory emf = Persistence.createEntityManagerFactory("pgsql1");
- EntityManager em = emf.createEntityManager();
- User u = new User();
- u.firstName = "John";
- u.lastName = "Brown";
- em.persist(u);
- em.close();
- emf.close();
- }
- }{/java}
- <p>I <code class="inline">persistence.xml</code>:</p>
- {geshi lang=xml num=true}
- <persistence>
- <persistence-unit name="pgsql1" transaction-type="RESOURCE_LOCAL">
- <class>Person</class>
- <properties>
- <property name="hibernate.dialect" value="org.hibernate.dialect.PostgreSQLDialect"/>
- <property name="hibernate.connection.driver_class" value="org.postgresql.Driver"/>
- <property name="hibernate.connection.username" value="username"/>
- <property name="hibernate.connection.password" value="you wish you will know"/>
- <property name="hibernate.connection.url" value="jdbc:postgresql://localhost/database"/>
- </properties>
- <persistence-unit>
- </persistence>
Pierwsze jest przetestowane - drugiego nie miałem siły ;). Nie twierdzę, że Hibernate nie ma jakiś bardziej zaawansowanych możliwości (gdyż tego nie wiem). Nie twierdzę, że Hibernate/EJB3 można było lepiej zaprojektować. Nie wiem, czy z kompatybilnością wstecz Javę dało się zaprojektować lepiej. Ale ilość kodu da się ocenić na pierwszy rzut oka...
Komentarze do wpisu
Możesz śledzić odpowiedzi poprzez kanał RSS. Możesz dodać komentarz lub zostawić ślad (trackback) ze swojego bloga.
Jeszcze nie ma żadnych komentarzy. Twój może być pierwszy.
Dodaj komentarz