-1

エンティティで正規表現パターンを使用する方法を教えてください。springMvc + Jpaでアプリケーションを実行しましたが、ここでの問題はUIのユーザー名とパスワードフィールドに空白が許可されており、空白でユーザーを作成および更新できることです。正規表現パターンの知識はありますが、Spring MVC アプリケーションでの使用方法がわかりにくいので、助けてください

前もって感謝します

4

1 に答える 1

0

Springsの公式ドキュメントを読んでみることをお勧めします。それらはJSR-303をサポートしており、検証仕様で特定のプロパティに注釈を付けることができます。

http://static.springsource.org/spring/docs/3.1.1.RELEASE/spring-framework-reference/htmlsingle/spring-framework-reference.html#validation

単純なものだけが必要な場合は、いつでも値をコントローラーに送信し、そこでパターンを確認して、合格しなかった場合はエラーをスローできます。

非常に単純で大雑把な解決策は次のようになります(春の経験が豊富な人なら、これを大幅に改善できると思います)。このページにフォームBeanが存在するとします。

jsp:

<form:form *some attributes*>
<ul class="errorMessages">
    <c:forEach items="${errorMessages}" var="msg">
        <li>${msg}</li>
    </c:forEach>
</ul>
<form:input path="myStringNotValidated" id="myStringNotValidated/>
<form:input path="myStringValidated" id="myStringValidated/>
<input type="submit" value="submit"/>
</form:form>

コントローラ:

List<String> errorMessages = new ArrayList<String>();
@RequestMapping(value="someURLYouPostedTo", method = RequestMethod.POST)
public ModelAndView save(@ModelAttribute myFormBean){
    if(!*check your regex here on myFormBean.getMyStringValidated()){
        errorMessages.add("Bad value on x");
        // Make sure error messages is available in the model map
        // Return to the same page
    }
}
于 2012-06-21T11:49:29.000 に答える