ユーザー追加ページ構築(nieValidateフォーム検証、ajax携帯番号非同期検証)
ユーザを追加
1>userinfo_を作成するadd.jsp、ユーザーページを追加します.
フォームに提出するコントロールに注意してください.nameは対応するクラスの属性と一致します.
2>UserInfoControllerにクリックボタンを追加してページに移動します.ページにセキュリティがありますので(web-inf下)
10>ただし、フォームに必要な項目が空であっても提出できます.
フォーム検証ツール:nice Validate
対応する漢化ファイルjsファイルとcssスタイルファイルを紹介します.
公式サイトで使い方を確認します
11>携帯電話番号の非同期認証ajax(加入者を追加すると、同じ携帯番号を記入した場合、直ちに携帯番号が占有されていることを提示する)
記入した携帯番号に基づいて調べます.
1)userinfo_add.jsp、携帯番号inputにIDをuser Phoneにあげます. 2)jsを追加する:(jquery appi)
$(this).val()は現在のテキストボックスの値を取得します.
blur:テキスト枠を移動するイベントに注目してください.
3)バックグラウンド作成受付方法UserInfoController
まず、syssoプリントテストを行います.
4)ここでは要求と応答から文字列を読み取るために そしてオブジェクトを回転 json形式になるので、springmvc_にします.back.xmlには以下のような構成があります.
5)UserInfoDAOは携帯電話番号による問い合わせ方法を編纂する.
6)該当する、UserInfoDAO.xmlプロファイルにsqlを登録する.
7)対応するサービス層とimpl層の追加方法 8)UserInfoControillerは戻り結果を処理し、情報を返す
9)userinfo_add.jsp:
1>userinfo_を作成するadd.jsp、ユーザーページを追加します.
フォームに提出するコントロールに注意してください.nameは対応するクラスの属性と一致します.
2>UserInfoControllerにクリックボタンを追加してページに移動します.ページにセキュリティがありますので(web-inf下)
@RequestMapping("user/loadadd.do")
public String loadadd(){
return "userinfo/userinfo_add";
}
3>userinfo_list.jspページはユーザー追加ボタンにあります. href="user/loadadd.do"
4>UserInfoDAO.java追加add方法 /**
*
* @param user
* @return
* int
*/
public int add(UserInfo user);
5>UserInfoDAO.xml sqlを追加して登録する. <insert id="add" parameterType="UserInfo">
insert into user_info(user_name,user_sex,user_phone,user_pw,user_type)
values(#{userName},#{userSex},#{userPhone},#{userPw},#{userType})
</insert>
6>IUserInfoService追加 /**
*
* @param user
*/
public void addUser(UserInfo user);
7>対応するUserInfoServiceImpl追加 @Autowired
private UserInfoDAO userdao;
public void addUser(UserInfo user){
int i = userdao.add(user);
System.out.println(i);
}
8>UserInfoControllerに追加(追加成功などのメッセージをmodelで返す必要があります.追加成功後にヒントページにジャンプします.) /**
*
* @param user
* @param model
* @return
*/
@RequestMapping("user/add.do")
public String add(UserInfo user,Model model){
//
String info = " ";
try {
userservice.addUser(user);
info=" !";
} catch (Exception e) {
e.printStackTrace();
}
//
model.addAttribute("info",info);
return "userinfo/userinfo_info";
}
9>ヒントページuserinfo_info.jsp <head>
<base href="<%=basePath%>">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-
8">
<title>Insert title here</title>
<script type="text/javascript">
alert('${info}');
window.location="<%=basePath%>user/list.do";
</script>
</head>
ヒント(エラー/成功)情報は、ユーザーリストページにジャンプします.10>ただし、フォームに必要な項目が空であっても提出できます.
フォーム検証ツール:nice Validate
対応する漢化ファイルjsファイルとcssスタイルファイルを紹介します.
公式サイトで使い方を確認します
11>携帯電話番号の非同期認証ajax(加入者を追加すると、同じ携帯番号を記入した場合、直ちに携帯番号が占有されていることを提示する)
記入した携帯番号に基づいて調べます.
1)userinfo_add.jsp、携帯番号inputにIDをuser Phoneにあげます. 2)jsを追加する:(jquery appi)
$(this).val()は現在のテキストボックスの値を取得します.
blur:テキスト枠を移動するイベントに注目してください.
<script type="text/javascript">
$(function(){
$("#userPhone").blur(function(){
//ajax
// , url
//
//
//
$.post('',
{userPhone:userPhone},function(){},"json");
});
});
</script>
3)バックグラウンド作成受付方法UserInfoController
/**
*
* @param user
* @return
*/
@RequestMapping("user/userajax.do")
public @ResponseBody UserInfo userAjax(UserInfo user){//
, @ResponseBody
System.out.println(user);
if(user!=null){
user.setUserName("w ");
}
return user;
}
@ResonseBody:文字列、配列、map、オブジェクトなどを直接jsonに変えることができます. 書式まず、syssoプリントテストを行います.
4)ここでは要求と応答から文字列を読み取るために そしてオブジェクトを回転 json形式になるので、springmvc_にします.back.xmlには以下のような構成があります.
<!-- / -->
<bean id="stringHttpMessage"
class="org.springframework.http.converter.StringHttpMessageConver
ter">
<property name="supportedMediaTypes">
<list>
<value>text/plain;charset=UTF-
8</value>
</list>
</property>
</bean>
<!-- JSON -->
<bean id="jsonConverter"
class="org.springframework.http.converter.json.MappingJacksonHttp
MessageConverter"></bean>
<bean
class="org.springframework.web.servlet.mvc.annotation.AnnotationM
ethodHandlerAdapter">
<property name="messageConverters">
<list>
<ref bean="stringHttpMessage" />
<ref bean="jsonConverter" />
</list>
</property>
</bean>
5)UserInfoDAOは携帯電話番号による問い合わせ方法を編纂する.
/**
*
* @param user
* @return
*/
public UserInfo getUserInfo(UserInfo user);
6)該当する、UserInfoDAO.xmlプロファイルにsqlを登録する.
<select id="getUserInfo" parameterType="UserInfo" resultMap="usermap">
select * from user_info
<where>
<if test="userId != null and userId != ''">
and user_id=#{userId}
</if>
<if test="userPhone != null and userPhone != ''">
and user_phone=#{userPhone}
</if>
</where>
</select>
7)対応するサービス層とimpl層の追加方法 8)UserInfoControillerは戻り結果を処理し、情報を返す
/**
*
* @param user
* @return
*/
@RequestMapping("user/userajax.do")
public @ResponseBody String userAjax(UserInfo user){// , @ResponseBody
// ajax
UserInfo puser = userservice.getUserInfo(user);
if (puser != null) {
return " , !";
}else{
return " ! ";
}
}
9)userinfo_add.jsp:
<span id="errorinfo" style="color: red; margin-left: 50px"></span>
<!-- ajax -->
<script type="text/javascript">
$(function(){
$("#userPhone").blur(function(){
//ajax
$.post('user/userajax.do',{userPhone:
$(this).val()},function(user){
$("#errorinfo").html(str);
},"json");
});
});
</script>