1

私はSpring Rooを使い始めています。これまでのところ、CRUD ベースのアプリケーションの適切な Java オプションのように思えます。

オンラインの SpringRoo チュートリアルの 1 つをベースとして、基本的な Web アプリを作成しました。

基本的な足場をセットアップしましたが、1 対多の関係を持つオブジェクトがアプリケーションにそのようにリストされているようです。

List all Exam Modules

Difficulty   Category   Exam Id         
Easy         Software   Design  2013-02-28 15:01:29.0 2013-02-28 15:01:29.0 Test Software Exam

Exam Id は、次のような Exam エンティティへの参照です。

import org.springframework.roo.addon.dbre.RooDbManaged;
import org.springframework.roo.addon.javabean.RooJavaBean;
import org.springframework.roo.addon.jpa.activerecord.RooJpaActiveRecord;
import org.springframework.roo.addon.tostring.RooToString;

@RooJavaBean
@RooJpaActiveRecord(versionField = "", table = "exam")
@RooDbManaged(automaticallyDelete = true)
public class Exam {

    @Override
    public String toString() {
        return id + ": " + desc;
    }
}

以前は、toString は @RooToString を使用して構成されていました

これは Web アプリには反映されていないため、そこに表示されている文字列は toString メソッドを呼び出していない可能性があります。

jspx の私のコードは次のとおりです。

        <table:column id="c_com_mypackage_examino_domain_ExamModule_examId" property="examId" z="iz7M0ohWIJEbf7nEYqPLkvKKtcE="/>

この試験エンティティを取得して、家族向けの素敵な文字列を印刷する方法について何か考えはありますか?

4

1 に答える 1

0

ApplicationConversionServiceFactoryBean.java(または.aj)を調べます。の線に沿って方法があります

public Converter<Exam, String> getExamToStringConverter() 

また

public Converter<ExamPK, String> getExamToStringConverter() 

表示したいフィールドのみが含まれるように変更します。

または、Exam.javaにBeanスタイルのメソッドを追加して、必要な文字列を返し、それをプロパティとして呼び出すこともできます。これは、必要な文字列を返すgetMyExamId()という名前のメソッドを作成したことを前提としています。zを「ユーザー管理」に変更する必要があることに注意してください

        <table:column id="c_com_mypackage_examino_domain_ExamModule_examId" property="myExamId" z="user-managed="/>
于 2013-03-01T13:34:23.683 に答える