Как к HTML кодируют/выходят строку? Существует ли встроенное?

Сначала вы должны создать сущность для таблиц. мы предполагаем, что State является сущностью для tbl_state, а Country является сущностью для tbl_country.

Страна субъекта:

@Entity
@Table(name = "tbl_country")
public class Country {
  private Integer countryId;

   @Id
   @Column(name="country_id")
   public String getCountryId(){
      return countryId;
   }  
}  

Государственный субъект:

@Entity
@Table(name = "tbl_state")
public class State {

  private Integer stateId;
  private String stateName;
  private Country country;

   @Id
   @Column(name="state_id")
   public String getStateId(){
      return stateId;
   }  

  @Column(name="state_name")
  public String getStateName(){
      return stateName;
  }  

  @ManyToOne(fetch=FetchType.LAZY)
  @JoinColumn(name="country_id")
  public Country getCountry(){
     return country;
 }  

}

Код критерия:

Criteria stateCriteria = session.createCriteria(State.class);
Criteria countryCriteria = stateCriteria.createCriteria("country");
stateCriteria.addOrder(Order.desc("stateName"));
stateCriteria.setFirstResult(pagesize * pagenum);
stateCriteria.setMaxResults(pagesize);
List results = stateCriteria.list();

для пользовательского результата, Вы должны создать класс dto. Например, StateDto:

 public class StateDto {

   private String stateName;
   private String countryName;

   public String getStateName() {
       return stateName;
   }

   public void setStateName(String stateName) {
       this.stateName = stateName;
   }

   public String getCountryName() {
       return countryName;
   }

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

}

Тогда ваш код критерия может быть таким, как показано ниже.

Criteria stateCriteria = session.createCriteria(State.class);
Criteria countryCriteria = stateCriteria.createCriteria("country");
stateCriteria.addOrder(Order.desc("stateName"));
stateCriteria.setFirstResult(pagesize * pagenum);
stateCriteria.setMaxResults(pagesize);
stateCriteria.setProjection(Projections.projectionList()
            .add(Projections.property("stateName").as("stateName"))
            .add(Projections.property("country.name").as("countryName")));
List<StateDto> results = stateCriteria.list();
93
задан the Tin Man 2 April 2016 в 21:56
поделиться

2 ответа

h вспомогательный метод:

<%=h "<p> will be preserved" %>
89
ответ дан the Tin Man 24 November 2019 в 06:10
поделиться

Можно использовать также h() или html_escape(), но большинство людей использует h() условно. h() коротко для html_escape() в направляющих.

В Вашем контроллере:

@stuff = "<b>Hello World!</b>"

В Вашем представлении:

<%=h @stuff %>

Если Вы просматриваете источник HTML: Вы будете видеть вывод без на самом деле выделения полужирным данные. Т.е. это кодируется как &lt;b&gt;Hello World!&lt;/b&gt;.

Это появится быть отображенным как <b>Hello World!</b>

13
ответ дан Brian R. Bondy 24 November 2019 в 06:10
поделиться