<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
		<id>http://jexp.ru/index.php?action=history&amp;feed=atom&amp;title=Java%2FApache_Common%2FDatabase_Utils</id>
		<title>Java/Apache Common/Database Utils - История изменений</title>
		<link rel="self" type="application/atom+xml" href="http://jexp.ru/index.php?action=history&amp;feed=atom&amp;title=Java%2FApache_Common%2FDatabase_Utils"/>
		<link rel="alternate" type="text/html" href="http://jexp.ru/index.php?title=Java/Apache_Common/Database_Utils&amp;action=history"/>
		<updated>2026-04-15T03:04:26Z</updated>
		<subtitle>История изменений этой страницы в вики</subtitle>
		<generator>MediaWiki 1.30.0</generator>

	<entry>
		<id>http://jexp.ru/index.php?title=Java/Apache_Common/Database_Utils&amp;diff=9035&amp;oldid=prev</id>
		<title>Admin: 1 версия</title>
		<link rel="alternate" type="text/html" href="http://jexp.ru/index.php?title=Java/Apache_Common/Database_Utils&amp;diff=9035&amp;oldid=prev"/>
				<updated>2010-06-01T07:23:25Z</updated>
		
		<summary type="html">&lt;p&gt;1 версия&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr style=&quot;vertical-align: top;&quot; lang=&quot;ru&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Предыдущая&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Версия 07:23, 1 июня 2010&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; style=&quot;text-align: center;&quot; lang=&quot;ru&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(нет различий)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	<entry>
		<id>http://jexp.ru/index.php?title=Java/Apache_Common/Database_Utils&amp;diff=9034&amp;oldid=prev</id>
		<title> в 18:01, 31 мая 2010</title>
		<link rel="alternate" type="text/html" href="http://jexp.ru/index.php?title=Java/Apache_Common/Database_Utils&amp;diff=9034&amp;oldid=prev"/>
				<updated>2010-05-31T18:01:48Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;== Clone Object ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
import org.apache.rumons.beanutils.BeanUtils;&lt;br /&gt;
import java.util.Map;&lt;br /&gt;
import java.util.Date;&lt;br /&gt;
import java.util.List;&lt;br /&gt;
import java.util.HashMap;&lt;br /&gt;
import java.util.ArrayList;&lt;br /&gt;
import java.util.GregorianCalendar;&lt;br /&gt;
public class BeanUtilsExampleV2 {&lt;br /&gt;
  public static void main(String args[]) throws Exception {&lt;br /&gt;
    BeanUtilsExampleV2 diff = new BeanUtilsExampleV2();&lt;br /&gt;
    Movie movieBean = diff.prepareData();&lt;br /&gt;
    // create a new Movie with the same properties&lt;br /&gt;
    Movie newMovieBean = new Movie();&lt;br /&gt;
    BeanUtils.copyProperties(newMovieBean, movieBean);&lt;br /&gt;
    // Movie newMovieBean = (Movie)BeanUtils.cloneBean(movieBean);&lt;br /&gt;
    // change its title&lt;br /&gt;
    BeanUtils.setProperty(newMovieBean, &amp;quot;title&amp;quot;, &amp;quot;Quills&amp;quot;);&lt;br /&gt;
    // and date&lt;br /&gt;
    BeanUtils.setProperty(&lt;br /&gt;
      newMovieBean,&lt;br /&gt;
      &amp;quot;dateOfRelease&amp;quot;,&lt;br /&gt;
      new GregorianCalendar(2000, 0, 1).getTime());&lt;br /&gt;
    // and director name&lt;br /&gt;
    BeanUtils.setProperty(newMovieBean, &amp;quot;director.name&amp;quot;, &amp;quot;Philip Kaufman&amp;quot;);&lt;br /&gt;
    // and director&amp;quot;s home number&lt;br /&gt;
    BeanUtils.setProperty(&lt;br /&gt;
      newMovieBean,&lt;br /&gt;
      &amp;quot;director.contactNumber(Home)&amp;quot;,&lt;br /&gt;
      &amp;quot;3349084333&amp;quot;);&lt;br /&gt;
    System.err.println(BeanUtils.getProperty(movieBean, &amp;quot;title&amp;quot;));&lt;br /&gt;
    System.err.println(BeanUtils.getProperty(movieBean, &amp;quot;director.name&amp;quot;));&lt;br /&gt;
    System.err.println(BeanUtils.getProperty(&lt;br /&gt;
      newMovieBean,&lt;br /&gt;
      &amp;quot;director.contactNumber(Home)&amp;quot;));&lt;br /&gt;
  }&lt;br /&gt;
  private Movie prepareData() {&lt;br /&gt;
    Movie movie = new Movie();&lt;br /&gt;
    movie.setTitle(&amp;quot;The Italian Job&amp;quot;);&lt;br /&gt;
    movie.setDateOfRelease(new GregorianCalendar(1969, 0, 1).getTime());&lt;br /&gt;
    // sets the genre&lt;br /&gt;
    Map genre_map = new HashMap();&lt;br /&gt;
    genre_map.put(&amp;quot;THR&amp;quot;, &amp;quot;Thriller&amp;quot;);&lt;br /&gt;
    genre_map.put(&amp;quot;ACT&amp;quot;, &amp;quot;Action&amp;quot;);&lt;br /&gt;
    movie.setGenre(genre_map);&lt;br /&gt;
    // creates the Director&lt;br /&gt;
    Person director = new Person();&lt;br /&gt;
    director.setName(&amp;quot;Peter Collinson&amp;quot;);&lt;br /&gt;
    director.setGender(1);&lt;br /&gt;
    Map director_contacts = new HashMap();&lt;br /&gt;
    director_contacts.put(&amp;quot;Home&amp;quot;, &amp;quot;99922233&amp;quot;);&lt;br /&gt;
    director_contacts.put(&amp;quot;Mobile&amp;quot;, &amp;quot;0343343433&amp;quot;);&lt;br /&gt;
    director.setContactNumber(director_contacts);&lt;br /&gt;
    movie.setDirector(director);&lt;br /&gt;
    // create the actors&lt;br /&gt;
    Actor actor1 = new Actor();&lt;br /&gt;
    actor1.setName(&amp;quot;Michael Caine&amp;quot;);&lt;br /&gt;
    actor1.setGender(1);&lt;br /&gt;
    actor1.setWorth(10000000);&lt;br /&gt;
    List actor1_movies = new ArrayList();&lt;br /&gt;
    Movie movie2 = new Movie();&lt;br /&gt;
    movie2.setTitle(&amp;quot;The Fourth Protocol&amp;quot;);&lt;br /&gt;
    Movie movie3 = new Movie();&lt;br /&gt;
    movie3.setTitle(&amp;quot;Shiner&amp;quot;);&lt;br /&gt;
    actor1_movies.add(movie2);&lt;br /&gt;
    actor1_movies.add(movie3);&lt;br /&gt;
    actor1.setMovieCredits(actor1_movies);&lt;br /&gt;
    Actor actor2 = new Actor();&lt;br /&gt;
    actor2.setName(&amp;quot;Margaret Blye&amp;quot;);&lt;br /&gt;
    actor2.setGender(2);&lt;br /&gt;
    actor2.setWorth(20000000);&lt;br /&gt;
    List actors = new ArrayList();&lt;br /&gt;
    actors.add(actor1);&lt;br /&gt;
    actors.add(actor2);&lt;br /&gt;
    movie.setActors(actors);&lt;br /&gt;
    return movie;&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
----------------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
import java.util.List;&lt;br /&gt;
public class Actor extends Person {&lt;br /&gt;
  public Actor() {&lt;br /&gt;
  }&lt;br /&gt;
  public List getMovieCredits() { return this.movieCredits; }&lt;br /&gt;
  public void setMovieCredits(List movieCredits) {&lt;br /&gt;
    this.movieCredits = movieCredits;&lt;br /&gt;
  }&lt;br /&gt;
  public long getWorth() { return this.worth; }&lt;br /&gt;
  public void setWorth(long worth) { this.worth = worth; }&lt;br /&gt;
  private List movieCredits;&lt;br /&gt;
  private long worth;&lt;br /&gt;
}&lt;br /&gt;
----------------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
import java.util.Map;&lt;br /&gt;
import java.util.List;&lt;br /&gt;
import java.util.Date;&lt;br /&gt;
public class Movie {&lt;br /&gt;
  public Movie() {&lt;br /&gt;
  }&lt;br /&gt;
  public Date getDateOfRelease() { return this.dateOfRelease; }&lt;br /&gt;
  public void setDateOfRelease(Date dateOfRelease) {&lt;br /&gt;
    this.dateOfRelease = dateOfRelease;&lt;br /&gt;
  }&lt;br /&gt;
  public String getTitle() { return this.title; }&lt;br /&gt;
  public void setTitle(String title) {this.title = title; }&lt;br /&gt;
  public Person getDirector() { return this.director; }&lt;br /&gt;
  public void setDirector(Person director) { this.director = director; }&lt;br /&gt;
  public List getActors() { return this.actors; }&lt;br /&gt;
  public void setActors(List actors) { this.actors= actors; }&lt;br /&gt;
  public String[] getKeywords() { return this.keywords; }&lt;br /&gt;
  public void setKeyWords(String[] keywords) { this.keywords = keywords; }&lt;br /&gt;
  public Map getGenre() { return this.genre; }&lt;br /&gt;
  public void setGenre(Map genre) { this.genre = genre; }&lt;br /&gt;
  private Date dateOfRelease;&lt;br /&gt;
  private String title;&lt;br /&gt;
  private Person director;&lt;br /&gt;
  private List actors;&lt;br /&gt;
  private String[] keywords;&lt;br /&gt;
  private Map genre;&lt;br /&gt;
}&lt;br /&gt;
----------------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
import java.util.Map;&lt;br /&gt;
import org.apache.rumons.lang.builder.EqualsBuilder;&lt;br /&gt;
import org.apache.rumons.lang.builder.HashCodeBuilder;&lt;br /&gt;
import org.apache.rumons.lang.builder.ToStringBuilder;&lt;br /&gt;
public class Person {&lt;br /&gt;
  public Person() {&lt;br /&gt;
  }&lt;br /&gt;
  public String getName() {&lt;br /&gt;
    return this.name == null ? &amp;quot;NoName&amp;quot; : this.name; }&lt;br /&gt;
  public void setName(String name) { this.name = name; }&lt;br /&gt;
  public int getGender() { return this.gender; }&lt;br /&gt;
  public void setGender(int gender) {  // 0 - Indeterminate, 1 - Male, 2 - Female&lt;br /&gt;
    this.gender = (gender &amp;gt; 2 || gender &amp;lt; 0) ? 0 : gender; }&lt;br /&gt;
  public Map getContactNumber() { return this.contactNumber; }&lt;br /&gt;
  public void setContactNumber(Map contactNumber) {&lt;br /&gt;
    this.contactNumber = contactNumber;&lt;br /&gt;
  }&lt;br /&gt;
  /**public boolean equals(Object o) {&lt;br /&gt;
    if(o == this) return true;&lt;br /&gt;
    if(!(o instanceof Person)) return false;&lt;br /&gt;
    Person otherPerson = (Person)o;&lt;br /&gt;
    if(otherPerson.getName().equals(this.name) &amp;amp;&amp;amp;&lt;br /&gt;
       otherPerson.getGender() == this.gender) return true;&lt;br /&gt;
    return false;&lt;br /&gt;
  }*/&lt;br /&gt;
  public boolean equals(Object o) {&lt;br /&gt;
    if(!(o instanceof Person)) return false;&lt;br /&gt;
    Person otherPerson = (Person)o;&lt;br /&gt;
    return new EqualsBuilder()&lt;br /&gt;
               .append(name, otherPerson.getName())&lt;br /&gt;
               .append(gender, otherPerson.getGender())&lt;br /&gt;
               .isEquals();&lt;br /&gt;
  }&lt;br /&gt;
  public int hashCode() {&lt;br /&gt;
    return new HashCodeBuilder(7, 51)&lt;br /&gt;
               .append(name)&lt;br /&gt;
               .append(gender)&lt;br /&gt;
               .append(contactNumber)&lt;br /&gt;
               .toHashCode();&lt;br /&gt;
  }&lt;br /&gt;
  public String toString() {&lt;br /&gt;
    return new ToStringBuilder(this)&lt;br /&gt;
               .append(&amp;quot;Name&amp;quot;, name)&lt;br /&gt;
               .append(&amp;quot;Gender&amp;quot;, gender)&lt;br /&gt;
               .append(&amp;quot;Contact Details&amp;quot;, contactNumber)&lt;br /&gt;
               .toString();&lt;br /&gt;
  }&lt;br /&gt;
  private String name;&lt;br /&gt;
  private int gender;&lt;br /&gt;
  private Map contactNumber;&lt;br /&gt;
}&lt;br /&gt;
           &lt;br /&gt;
       &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Map ResultSet to Object ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
import org.apache.rumons.dbcp.BasicDataSource;&lt;br /&gt;
import org.apache.rumons.beanutils.DynaBean;&lt;br /&gt;
import org.apache.rumons.beanutils.ResultSetDynaClass;&lt;br /&gt;
import java.util.Iterator;&lt;br /&gt;
import java.sql.ResultSet;&lt;br /&gt;
import java.sql.Connection;&lt;br /&gt;
import java.sql.PreparedStatement;&lt;br /&gt;
public class DynaBeansExampleV2 {&lt;br /&gt;
  public static void main(String args[]) throws Exception {&lt;br /&gt;
    Connection conn = getConnection();&lt;br /&gt;
    PreparedStatement ps =  conn.prepareStatement(&amp;quot;SELECT * from movie, person &amp;quot; +&lt;br /&gt;
                                      &amp;quot;WHERE movie.director = person.Id&amp;quot;);&lt;br /&gt;
    ResultSet rs = ps.executeQuery();&lt;br /&gt;
    ResultSetDynaClass rsdc = new ResultSetDynaClass(rs);&lt;br /&gt;
    Iterator itr = rsdc.iterator();&lt;br /&gt;
    while(itr.hasNext()) {&lt;br /&gt;
      DynaBean bean = (DynaBean)itr.next();&lt;br /&gt;
      System.err.println(bean.get(&amp;quot;title&amp;quot;));&lt;br /&gt;
    }&lt;br /&gt;
    conn.close();&lt;br /&gt;
  }&lt;br /&gt;
  private static Connection getConnection() throws Exception {&lt;br /&gt;
    BasicDataSource bds = new BasicDataSource();&lt;br /&gt;
    bds.setDriverClassName(&amp;quot;com.mysql.jdbc.Driver&amp;quot;);&lt;br /&gt;
    bds.setUrl(&amp;quot;jdbc:mysql://localhost/commons&amp;quot;);&lt;br /&gt;
    bds.setUsername(&amp;quot;root&amp;quot;);&lt;br /&gt;
    bds.setPassword(&amp;quot;&amp;quot;);&lt;br /&gt;
    //bds.setInitialSize(5);&lt;br /&gt;
    return bds.getConnection();&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
           &lt;br /&gt;
       &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Use Mapped Object after database Connection close ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
import org.apache.rumons.dbcp.BasicDataSource;&lt;br /&gt;
import org.apache.rumons.beanutils.DynaBean;&lt;br /&gt;
import org.apache.rumons.beanutils.RowSetDynaClass;&lt;br /&gt;
import java.util.Iterator;&lt;br /&gt;
import java.sql.ResultSet;&lt;br /&gt;
import java.sql.Connection;&lt;br /&gt;
import java.sql.PreparedStatement;&lt;br /&gt;
public class DynaBeansExampleV3 {&lt;br /&gt;
  public static void main(String args[]) throws Exception {&lt;br /&gt;
    Connection conn = getConnection();&lt;br /&gt;
    PreparedStatement ps =&lt;br /&gt;
      conn.prepareStatement(&lt;br /&gt;
        &amp;quot;SELECT * from movie, person &amp;quot; +&lt;br /&gt;
        &amp;quot;WHERE movie.director = person.Id&amp;quot;);&lt;br /&gt;
    ResultSet rs = ps.executeQuery();&lt;br /&gt;
    RowSetDynaClass rsdc = new RowSetDynaClass(rs);&lt;br /&gt;
    conn.close();&lt;br /&gt;
    Iterator itr = rsdc.getRows().iterator();&lt;br /&gt;
    while(itr.hasNext()) {&lt;br /&gt;
      DynaBean bean = (DynaBean)itr.next();&lt;br /&gt;
      System.err.println(bean.get(&amp;quot;title&amp;quot;));&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
  }&lt;br /&gt;
  private static Connection getConnection() throws Exception {&lt;br /&gt;
    BasicDataSource bds = new BasicDataSource();&lt;br /&gt;
    bds.setDriverClassName(&amp;quot;com.mysql.jdbc.Driver&amp;quot;);&lt;br /&gt;
    bds.setUrl(&amp;quot;jdbc:mysql://localhost/commons&amp;quot;);&lt;br /&gt;
    bds.setUsername(&amp;quot;root&amp;quot;);&lt;br /&gt;
    bds.setPassword(&amp;quot;&amp;quot;);&lt;br /&gt;
//    bds.setInitialSize(5);&lt;br /&gt;
    return bds.getConnection();&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
           &lt;br /&gt;
       &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;/div&gt;</summary>
			</entry>

	</feed>