Создание классов Java-сущностей из таблиц MySQL в netbenas

0

У меня есть база данных MySQL с некоторыми данными, которую я хочу преобразовать в классы Java. У меня есть файл Persistence.xml, но я не уверен, как это сделать. Я мог бы перепроектировать его и сделать экспорт данных из моего рабочего места MySQL, но после того, как я установил соединение, с базой данных, могу ли я использовать функцию в Netbeans для этого?

Теги:
netbeans

1 ответ

2
Лучший ответ

У NetBeans есть мастер, который сделает именно то, что вы хотите:

  • На панели " Проекты" в рамках вашего проекта выберите пакет, содержащий класс сущности.
  • Щелкните правой кнопкой мыши и выберите " Создать"> "Сущности" из базы данных... из контекстного меню.

    Изображение 174551

  • Запускается мастер создания новых объектов из базы данных.

  • На странице " Таблицы базы данных":

    Изображение 174551

    • Выберите соединение, которое вы хотите использовать, в раскрывающемся списке " Соединение с базой данных".
    • Выберите таблицу (таблицы), для которой вы хотите создать классы сущностей, из списка Доступные таблицы.
    • Нажмите кнопку " Добавить" или " Добавить все", чтобы переместить таблицу в список " Выбранные таблицы", затем нажмите кнопку " Далее".
  • На странице " Объекты классов" выберите все параметры, которые вам нужны, хотя часто задаваемые значения по умолчанию будут уместны. Нажмите кнопку " Далее".
  • На странице " Параметры сопоставления" выберите любые параметры, которые вам нужны, хотя часто задаваемые по умолчанию значения будут соответствовать. Нажмите кнопку " Готово".

После запуска мастера класс сущности будет создан в выбранном вами пакете. Например:

/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package mysql8demo;

import java.io.Serializable;
import javax.persistence.Basic;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.NamedQueries;
import javax.persistence.NamedQuery;
import javax.persistence.Table;
import javax.xml.bind.annotation.XmlRootElement;

/**
 *
 * @author johndoe
 */
@Entity
@Table(name = "country")
@XmlRootElement
@NamedQueries({
    @NamedQuery(name = "Country.findAll", query = "SELECT c FROM Country c")
    , @NamedQuery(name = "Country.findById", query = "SELECT c FROM Country c WHERE c.id = :id")
    , @NamedQuery(name = "Country.findByCountryCode", query = "SELECT c FROM Country c WHERE c.countryCode = :countryCode")
    , @NamedQuery(name = "Country.findByCountryName", query = "SELECT c FROM Country c WHERE c.countryName = :countryName")
    , @NamedQuery(name = "Country.findByCurrencyCode", query = "SELECT c FROM Country c WHERE c.currencyCode = :currencyCode")
    , @NamedQuery(name = "Country.findByPopulation", query = "SELECT c FROM Country c WHERE c.population = :population")
    , @NamedQuery(name = "Country.findByCapital", query = "SELECT c FROM Country c WHERE c.capital = :capital")
    , @NamedQuery(name = "Country.findByContinent", query = "SELECT c FROM Country c WHERE c.continent = :continent")
    , @NamedQuery(name = "Country.findByAreaInSqKm", query = "SELECT c FROM Country c WHERE c.areaInSqKm = :areaInSqKm")})
public class Country implements Serializable {

    private static final long serialVersionUID = 1L;
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    @Basic(optional = false)
    @Column(name = "id")
    private Integer id;
    @Basic(optional = false)
    @Column(name = "countryCode")
    private String countryCode;
    @Basic(optional = false)
    @Column(name = "countryName")
    private String countryName;
    @Column(name = "currencyCode")
    private String currencyCode;
    @Column(name = "population")
    private String population;
    @Column(name = "capital")
    private String capital;
    @Column(name = "continent")
    private String continent;
    @Column(name = "areaInSqKm")
    private Integer areaInSqKm;

    public Country() {
    }

    public Country(Integer id) {
        this.id = id;
    }

    public Country(Integer id, String countryCode, String countryName) {
        this.id = id;
        this.countryCode = countryCode;
        this.countryName = countryName;
    }

    public Integer getId() {
        return id;
    }

    public void setId(Integer id) {
        this.id = id;
    }

    public String getCountryCode() {
        return countryCode;
    }

    public void setCountryCode(String countryCode) {
        this.countryCode = countryCode;
    }

    public String getCountryName() {
        return countryName;
    }

    public void setCountryName(String countryName) {
        this.countryName = countryName;
    }

    public String getCurrencyCode() {
        return currencyCode;
    }

    public void setCurrencyCode(String currencyCode) {
        this.currencyCode = currencyCode;
    }

    public String getPopulation() {
        return population;
    }

    public void setPopulation(String population) {
        this.population = population;
    }

    public String getCapital() {
        return capital;
    }

    public void setCapital(String capital) {
        this.capital = capital;
    }

    public String getContinent() {
        return continent;
    }

    public void setContinent(String continent) {
        this.continent = continent;
    }

    public Integer getAreaInSqKm() {
        return areaInSqKm;
    }

    public void setAreaInSqKm(Integer areaInSqKm) {
        this.areaInSqKm = areaInSqKm;
    }

    @Override
    public int hashCode() {
        int hash = 0;
        hash += (id != null ? id.hashCode() : 0);
        return hash;
    }

    @Override
    public boolean equals(Object object) {
        // TODO: Warning - this method won't work in the case the id fields are not set
        if (!(object instanceof Country)) {
            return false;
        }
        Country other = (Country) object;
        if ((this.id == null && other.id != null) || (this.id != null && !this.id.equals(other.id))) {
            return false;
        }
        return true;
    }

    @Override
    public String toString() {
        return "mysql8demo.Country[ id=" + id + " ]";
    }

}
  • 0
    Это был именно тот ответ, который я искал. Спасибо

Ещё вопросы

Сообщество Overcoder
Наверх
Меню