(1)错误信息的输出:
在html页用:
<span th:text="${message}" style="display:inline;color:red;"></span>
//style属性用来设置字体的颜色。
在controller页面用:
model.addAttribute(
"message"
,
"您输入的用户名或密码错误,请重新输入!"
);
(2)页面中有两个按钮时,可以使用一个form来传值,只要在controller里表示清楚即可,xxx来表示页面中按钮控件的name所传的名字。
@RequestMapping(value ="/register", method = RequestMethod.POST,params=xxx)
(3)验证用户登录注册的过程。
1、登录
html页
<h3>登录信息</h3>
<span th:text="${message}" style="display:inline;color:red;"></span>
<form action="denglu" th:object="${UserB}" method="post">
<p><label>用户ID:</label><input name="userid" type="text"/></p>
<p><label>密码:</label><input name="password" type="password"/></p>
<p><input type="submit" value="登录" /></p>
</form>
<form action="register1" method="post">
<p><input type="submit" value="注册" /></p>
</form>
controller
//2用户登录
@RequestMapping(value = "denglu", method = RequestMethod.POST)
public String login(UserB userB, Model model) {
UserB result = helloWorldService.searchyonghu(userB);
if(result != null) {
List<UserB> result1=helloWorldService.allyonghu(userB);
model.addAttribute("list",result1);
return "meeage";
} else {
model.addAttribute("message", "输入不正确");
return "denglu";
}
}
service
//2查询用户
public UserB searchyonghu(UserB aa){
UserB userb=new UserB();
userb.setUserid(aa.getUserid());
userb.setPassword(aa.getPassword());
UserB result=queryDao.executeForObject("User.select", userb, UserB.class);
return result;
}
SQL文
<select id="select"
parameterClass="cn.training.controller.UserB"
resultClass="cn.training.controller.UserB">
SELECT
userid,password
FROM
yonghu
WHERE
userid= #userid# AND password=#password#
</select>
2、注册
//2用户注册
@RequestMapping(value = "/register", method = RequestMethod.POST)
public String adduser(HttpServletRequest req,UserB UserB,Model model) {
String password = req.getParameter("password");
String repassword = req.getParameter("repassword");
if(password.equals(repassword)){
if(helloWorldService.adduser(UserB)!=0)
return "denglu";
else
return "register";
}
else
{
model.addAttribute("message", "密码与确认密码输入不正确");
return "register";
}
}
//2添加用户
public int adduser(UserB bb){
//frm=queryDao.executeForObject("User.selectUser",frm, UserBean.class);
return updateDao.execute("User.add",bb);
//frm.setUserID("test");
}
SQL文
<update id="add"
parameterClass="cn.training.controller.UserB">
INSERT INTO yonghu(userid,username,password)
VALUES(#userid#,#username#,#password#)
</update>
(4)在点击链接删除一个用户时,要获取用户的ID
1、显示所有用户页面
<h1>用户信息</h1>
<table>
<tr>
<td>userid</td>
<td>username</td>
<td>password</td>
</tr>
<tr th:each="yonghu,status:${list}" th:object="${UserB}">
<td ><a th:href="@{deleteyonghu1(userid=${yonghu.userid})}"><span th:text="${yonghu.userid}">12</span></a></td>
<td ><span th:text="${yonghu.username}">12</span></td>
<td ><span th:text="${yonghu.password}">12</span></td>
</tr>
</table>
2、controller页
//2删除跳转
@RequestMapping(value = "deleteyonghu1", method = RequestMethod.GET)
public String deleteyonghu1(UserB userB, Model model) {
UserB result=helloWorldService.selectid(userB);
model.addAttribute("UserB",result);
return "delete";
}
此时一定要活得要删除用户的ID号,不然跳转后将无法获得用户信息。
public UserB selectid(UserB aa){
UserB result=queryDao.executeForObject("User.selectid",aa, UserB.class);
}
要写获得ID的SQL文
<select id="selectid"
parameterClass="cn.training.controller.UserB"
resultClass="cn.training.controller.UserB">
SELECT
userid
FROM
yonghu
WHERE
userid= #userid#
</select>