分模块开发
1.建立空的Maven包作为父包
2.Bean(空)
3.Dao(空)
4.Service(空)
5.Controller(web)-选择Maven—webApp
登陆
1.建立数据库
2.bean层写实体类
3.dao层写接口和资源文件,mapper
<!--登陆-->
<select id="doLogin" parameterType="java.lang.String" resultType="com.whut.bean.User">
select *from tb_user where username=#{username}
</select>
4.service’层实现
5.web层的实现和资源文件和webapp文件
@Controller
@RequestMapping("user")
public class UserController {
@Autowired
private UserService userService;
@RequestMapping("/doLogin.do")
//应用于服务器的缓存 session
public String doLogin(String username, String password, HttpSession session) {
User user = userService.doLogin(username);
if (user != null) {
if (user.getPassword().equals(password)) {
System.out.println("登陆成功");
session.setAttribute("user",user);
return "main";
} else {
System.out.println("密码错误,重新输入");
session.setAttribute("message","密码有误,重新输入");
return "../login";
}
} else {
System.out.println("用户不存在");
session.setAttribute("message","用户不存在,请重新输入");
return "../login";
}
}
}
资源文件:
webapp:
index.jsp:
<jsp:forward page="/login.jsp"></jsp:forward>
login.jsp:
<form action="${pageContext.request.contextPath}/user/doLogin.do" method="post">
<div class="form-group has-feedback">
<input type="text" name="username" class="form-control"
placeholder="用户名"> <span
class="glyphicon glyphicon-envelope form-control-feedback">
</span>
</div><p style="color: red">${message}</p>
<div class="form-group has-feedback">
<input type="password" name="password" class="form-control"
placeholder="密码"> <span
class="glyphicon glyphicon-lock form-control-feedback"></span>
</div>
<div class="row">
<div class="col-xs-8">
<div class="checkbox icheck">
<label><input type="checkbox"> 记住 下次自动登录</label>
</div>
</div>
<!-- /.col -->
<div class="col-xs-4">
<button type="submit" class="btn btn-primary btn-block btn-flat">登录</button>
</div>
<!-- /.col -->
</div>
</form>
效果图:
分页
servicec层:
@Override
public List<User> findAllUser(int page,int size)
{
//分页
PageHelper.startPage(page,size);
return userDao.findAllUser();
}
user_list.jsp:
<div class="box-tools pull-right">
<ul class="pagination">
<li><a href="${pageContext.request.contextPath}/user/findAllUser.do?page=1&size=5" aria-label="Previous">首页</a></li>
<li><a href="${pageContext.request.contextPath}/user/findAllUser.do?page=${pageInfo.pageNum-1}&size=5">上一页</a></li>
<c:forEach begin="1" end="${pageInfo.pages}" var="pageNum">
<li><a href="${pageContext.request.contextPath}/user/findAllUser.do?page=${pageNum}&size=5">${pageNum}</a></li>
</c:forEach>
<li><a href="${pageContext.request.contextPath}/user/findAllUser.do?page=${pageInfo.pageNum+1}&size=5">下一页</a></li>
<li><a href="${pageContext.request.contextPath}/user/findAllUser.do?page=${pageInfo.pages}&size=5" aria-label="Next">尾页</a></li>
</ul>
</div>
实现: