Я разрабатываю веб-приложение, использующее спящий режим.Как присоединиться к нескольким таблицам в спящем режиме
То же самое приложение, я создал в JSP сервлет, но теперь я использую spring
и hibernate
, но не в состоянии сделать то же самое, которое я сделал с помощью jsp/servlet
код Jsp
String sql = "select city from addres_table where id=2";
Statement st = con.createStatement();
ResultSet rs = st.executeQuery(sql);
while(rs.next()){
String city = rs.getString("city");
String sql1 = "select name from user_table where city='"+city+"'";
Statement st1 = con.createStatement();
ResultSet rs1 = st1.executeQuery(sql1);
while(rs1.next()){
String username = rs.getString("name");
}
}
В основном я выборка city
от addres_table
сейчас я получаю name
из users
, проживающих в этом city
с User_table
.
То же самое, что я хочу сделать в спящем режиме, но я не могу это сделать.
Я достал city
от addres_table
, но теперь, как я могу получить name
от User_table
используя этот город.
Вот мой зимуют код
@SuppressWarnings({ "unchecked", "rawtypes" })
public List<Address> getProfessionById(long id) throws Exception {
session = sessionFactory.openSession();
Criteria cr = session.createCriteria(Address.class);
cr.add(Restrictions.eq("uid", id));
List results = cr.list();
tx = session.getTransaction();
session.beginTransaction();
tx.commit();
return results;
}
Пожалуйста, помогите мне, я хочу, чтобы извлечь имя из User_table используя этот город
Адрес класса
@Entity
@Table(name="user_profession")
@JsonIgnoreProperties({"hibernateLazyInitializer", "handler"})
public class Address implements Serializable {
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue
@Column(name="id")
private long id;
@Column(name="city")
private String city;
public long getId() {
return id;
}
public void setId(long id) {
this.id = id;
}
public String getCity() {
return city;
}
public void setCity(String city) {
this.city = city;
}
}
класс пользователя
@Entity
@Table(name="user_table")
@JsonIgnoreProperties({"hibernateLazyInitializer", "handler"})
public class User implements Serializable {
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue
@Column(name="id")
private long id;
@Column(name="full_name")
private String fullName;
public long getId() {
return id;
}
public void setId(long id) {
this.id = id;
}
public String getFullName() {
return fullName;
}
public void setFullName(String fullName) {
this.fullName = fullName;
}
}
Привет, это должно быть легко, но перед тем, как помочь, вы также можете обновить свои сопоставления? Как класс USER и Address, или его hbm-файл, если он есть. –
Hibernate сам создает инструкцию SQLselect, создавая соединения и возвращающую желаемый результат, как указано в вашей конфигурации xml. –
ниже - мой класс Address и класс пользователя –