界面分页

//bean.User
package com.zhongruan.bean;

import com.mchange.v2.c3p0.ComboPooledDataSource;

public class User {

public User() {
}

public User(int id, String username, String password) {
    this.id = id;
    this.username = username;
    this.password = password;
}

public User(String username, String password) {
    this.username = username;
    this.password = password;
}

private int id;
private String username;
private String password;

public int getId() {
    return id;
}

public void setId(int id) {
    this.id = id;
}

public String getUsername() {
    return username;
}

public void setUsername(String username) {
    this.username = username;
}

public String getPassword() {
    return password;
}

public void setPassword(String password) {
    this.password = password;
}

@Override
public String toString() {
    return "User{" +
            "id=" + id +
            ", username='" + username + '\'' +
            ", password='" + password + '\'' +
            '}';
}

}
bean.PageInfo
package com.zhongruan.bean;

import java.util.List;

public class PageInfo {
private List list;
private int totalPage;
private int size;
private int totalCount;
private int currentPage;

public List<T> getList() {
    return list;
}

public void setList(List<T> list) {
    this.list = list;
}

public int getTotalPage() {
    return totalPage;
}

public void setTotalPage(int totalPage) {
    this.totalPage = totalPage;
}

public int getSize() {
    return size;
}

public void setSize(int size) {
    this.size = size;
}

public int getTotalCount() {
    return totalCount;
}

public void setTotalCount(int totalCount) {
    this.totalCount = totalCount;
}

public int getCurrentPage() {
    return currentPage;
}

public void setCurrentPage(int currentPage) {
    this.currentPage = currentPage;
}

}

//UserController
package com.zhongruan.controller;

import com.zhongruan.bean.PageInfo;
import com.zhongruan.bean.User;
import com.zhongruan.service.IUserService;
import com.zhongruan.service.impl.UserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.servlet.ModelAndView;

import javax.servlet.http.HttpSession;
import java.util.List;

@Controller
@RequestMapping("/user")
public class UserController {

@Autowired
private IUserService userService;

@RequestMapping("/login.do")
public ModelAndView login(User user, HttpSession session){
    boolean flag = userService.login(user.getUsername(), user.getPassword());
    ModelAndView modelAndView=new ModelAndView();
    if(flag){
        session.setAttribute("user",user);
        modelAndView.setViewName("main");
    }else {
        modelAndView.setViewName("../failer");
    }
    return modelAndView;

}

@RequestMapping("/findAll.do")
public ModelAndView findAll(@RequestParam(defaultValue = "1") int currentPage){
    PageInfo<User> pageInfo = userService.findAll(currentPage);
    ModelAndView modelAndView = new ModelAndView();
    modelAndView.addObject("pageInfo",pageInfo);
    modelAndView.setViewName("user-list");
    return modelAndView;
}

@RequestMapping("/deleteById.do")
public String delete(int id){
    userService.deleteById(id);
    return "redirect:findAll.do";
}

@RequestMapping("/add.do")
public String add(User user){
    userService.add(user);
    return "redirect:findAll.do";
}

@RequestMapping("toUpdate.do")
public ModelAndView toUpdate(int id){
    User user = userService.selectUserById(id);
    ModelAndView modelAndView = new ModelAndView();
    modelAndView.setViewName("user-update");
    modelAndView.addObject("user",user);
    return modelAndView;
}

@RequestMapping("/Update.do")
public String Update(User user){
    userService.Update(user);
    return "redirect:findAll.do";
}

//UserDao
package com.zhongruan.dao;

import com.zhongruan.bean.User;

import java.util.List;

public interface UserDao {
User findUserByUserName(String username);

List<User> findAll(int start);

void deleteById(int id);

void add(User user);

User selectById(int id);

void Update(User user);

int getTotalCount(int tc);

int getTotalCount();

}

//LoginFilter
package com.zhongruan.service.impl;

import com.zhongruan.bean.PageInfo;
import com.zhongruan.bean.User;
import com.zhongruan.dao.UserDao;
import com.zhongruan.service.IUserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.List;

@Service
public class UserService implements IUserService {

@Autowired
private UserDao userDao;

@Override
public boolean login(String username, String password) {
    User user = userDao.findUserByUserName(username);
    if (user!=null && user.getPassword().equals(password)){
        return true;
    }
    return false;
}

@Override
public PageInfo<User> findAll(int currentPage){
    PageInfo<User> pageInfo = new PageInfo<>();
    pageInfo.setSize(5);

    int tc = userDao.getTotalCount();
    pageInfo.setTotalCount(tc);
    int tp=(int)Math.ceil(tc/5.0);
    pageInfo.setTotalPage(tp);
    if(currentPage<1){
        pageInfo.setCurrentPage(1);
    }else if(currentPage>tp){
        pageInfo.setCurrentPage(tp);
    }else {
        pageInfo.setCurrentPage(currentPage);
    }
    int start = (pageInfo.getCurrentPage()-1)*5;
    List<User> userList = userDao.findAll(start);
    pageInfo.setList(userList);
    return pageInfo;
}

@Override
public void deleteById(int id) {
    userDao.deleteById(id);
}

@Override
public void add(User user) {
    userDao.add(user);
}

@Override
public User selectUserById(int id) {
    return userDao.selectById(id);
}

@Override
public void Update(User user) { userDao.Update(user); }

}

//UserService
package com.zhongruan.service.impl;

import com.zhongruan.bean.PageInfo;
import com.zhongruan.bean.User;
import com.zhongruan.dao.UserDao;
import com.zhongruan.service.IUserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.List;

@Service
public class UserService implements IUserService {

@Autowired
private UserDao userDao;

@Override
public boolean login(String username, String password) {
    User user = userDao.findUserByUserName(username);
    if (user!=null && user.getPassword().equals(password)){
        return true;
    }
    return false;
}

@Override
public PageInfo<User> findAll(int currentPage){
    PageInfo<User> pageInfo = new PageInfo<>();
    pageInfo.setSize(5);

    int tc = userDao.getTotalCount();
    pageInfo.setTotalCount(tc);
    int tp=(int)Math.ceil(tc/5.0);
    pageInfo.setTotalPage(tp);
    if(currentPage<1){
        pageInfo.setCurrentPage(1);
    }else if(currentPage>tp){
        pageInfo.setCurrentPage(tp);
    }else {
        pageInfo.setCurrentPage(currentPage);
    }
    int start = (pageInfo.getCurrentPage()-1)*5;
    List<User> userList = userDao.findAll(start);
    pageInfo.setList(userList);
    return pageInfo;
}

@Override
public void deleteById(int id) {
    userDao.deleteById(id);
}

@Override
public void add(User user) {
    userDao.add(user);
}

@Override
public User selectUserById(int id) {
    return userDao.selectById(id);
}

@Override
public void Update(User user) { userDao.Update(user); }

//IUserService
package com.zhongruan.service;

import com.zhongruan.bean.PageInfo;
import com.zhongruan.bean.User;

import java.util.List;

public interface IUserService {
boolean login(String username,String password);

void deleteById(int id);

void add(User user);

User selectUserById(int id);

void Update(User user);

PageInfo<User> findAll(int currentPage);

}

//UserMapper.xml

<?xml version="1.0" encoding="UTF-8" ?> select * from tb_user where username=#{username}
<select id="findAll" resultType="user" parameterType="int">
    select * from tb_user limit #{start},5
</select>

<delete id="deleteById" parameterType="int">
    delete from tb_user where id = #{id}
</delete>

<insert id="add" parameterType="user">
    insert into tb_user (username,password) values (#{username},#{password})
</insert>

<select id="selectById" parameterType="int" resultType="user">
    select * from tb_user where id=#{id}
</select>

<update id="Update" parameterType="user">
    update tb_user set id=#{id}, username=#{username}, password=#{password} where id= #{id}
<select id="getTotalCount" resultType="int">
    select count(*) from tb_user
</select>

//aside
<%@ page language=“java” contentType=“text/html; charset=UTF-8”
pageEncoding=“UTF-8” isELIgnored=“false”%>

//user-list.jsp
<%@ page language=“java” contentType=“text/html; charset=UTF-8”
pageEncoding=“UTF-8” isELIgnored=“false”%>
<%@taglib uri=“http://java.sun.com/jsp/jstl/core” prefix=“c”%>

数据 - AdminLTE2定制版
<div class="wrapper">

	<!-- 页面头部 -->
	<jsp:include page="header.jsp"></jsp:include>
	<!-- 页面头部 /-->

	<!-- 导航侧栏 -->
	<jsp:include page="aside.jsp"></jsp:include>
	<!-- 导航侧栏 /-->

	<!-- 内容区域 -->
	<div class="content-wrapper">

		<!-- 内容头部 -->
		<section class="content-header">
		<h1>
			用户管理 <small>全部用户</small>
		</h1>
		<ol class="breadcrumb">
			<li><a href="#"><i
					class="fa fa-dashboard"></i> 首页</a></li>
			<li><a
				href="#">用户管理</a></li>

			<li class="active">全部用户</li>
		</ol>
		</section>
		<!-- 内容头部 /-->

			<!-- 正文区域 -->
			<section class="content"> <!-- .box-body -->
			<div class="box box-primary">
				<div class="box-header with-border">
					<h3 class="box-title">列表</h3>
				</div>

				<div class="box-body">

					<!-- 数据表格 -->
					<div class="table-box">

						<!--工具栏-->
						<div class="pull-left">
							<div class="form-group form-inline">
								<div class="btn-group">
									<button type="button" class="btn btn-default" title="新建"
											onclick="location.href='${pageContext.request.contextPath}/pages/user-add.jsp'" >
										<i class="fa fa-file-o"></i> 新建
									</button>
									
									<button type="button" class="btn btn-default" title="刷新">
										<i class="fa fa-refresh"></i> 刷新
									</button>
								</div>
							</div>
						</div>
						<form action="#"
							  method="post">
							<div class="col-md-4 data1">
								<input type="text" class="form-control" name="username"
									   placeholder="username" value="">
							</div>
							<button type="submit" class="btn bg-maroon">搜索</button>
						</form>
						<!--工具栏/-->

						<!--数据列表-->
						<table id="dataList"
							class="table table-bordered table-striped table-hover dataTable">
							<thead>
								<tr>
									<th class="" style="padding-right: 0px"><input
										id="selall" type="checkbox" class="icheckbox_square-blue">
									</th>
									<th class="sorting_asc">ID</th>
									<th class="sorting_desc">用户名</th>
									<th class="sorting_asc sorting_asc_disabled">密码</th>
									<th class="text-center">操作</th>
								</tr>
							</thead>
							<tbody>
							<c:forEach items="${pageInfo.list}" var="user">
								<tr>
									<td><input name="ids" type="checkbox"></td>
									<td>${user.id}</td>
									<td>${user.username}</td>
									<td>${user.password}</td>
									<td class="text-center">
										<a href="${pageContext.request.contextPath}/user/toUpdate.do?id=${user.id}" class="btn bg-olive btn-xs">更新</a>
										<a href="${pageContext.request.contextPath}/user/deleteById.do?id=${user.id}"class= "btn bg-olive btn-xs">删除</a>
										<a href="#" class="btn bg-olive btn-xs">添加角色</a>
									</td>
								</tr>
							</c:forEach>
							</tbody>

							<!--
                        <tfoot>
                        <tr>
                        <th>Rendering engine</th>
                        <th>Browser</th>
                        <th>Platform(s)</th>
                        <th>Engine version</th>
                        <th>CSS grade</th>
                        </tr>
                        </tfoot>-->
						</table>
						<!--数据列表/-->

					</div>
					<!-- 数据表格 /-->

				</div>
				<!-- /.box-body -->
				<div class="box-tools pull-right">
					<ul class="pagination">
						<li><a href="${pageContext.request.contextPath}/user/findAll.do" aria-label="Previous">首页</a></li>
						<li><a href="${pageContext.request.contextPath}/user/findAll.do?currentPage=${pageInfo.currentPage-1}">上一页</a></li>
						<c:forEach begin="1" end="${pageInfo.totalPage}" var="pageNum">
							<li><a href="${pageContext.request.contextPath}/user/findAll.do?currentPage=${pageNum}">${pageNum}</a></li>
						</c:forEach>
						<li><a href="${pageContext.request.contextPath}/user/findAll.do?currentPage=${pageInfo.currentPage +1}">下一页</a></li>
						<li><a href="${pageContext.request.contextPath}/user/findAll.do?currentPage=${pageInfo.totalPage}" aria-label="Next">尾页</a></li>
					</ul>
				</div>



			</div>
				<!-- /.box-footer-->


			</section>
			<!-- 正文区域 /-->

		</div>
		<!-- @@close -->
		<!-- 内容区域 /-->

		<!-- 底部导航 -->
		<footer class="main-footer">
		<div class="pull-right hidden-xs">
			<b>Version</b> 1.0.8
		</div>
		<strong>Copyright &copy; 2014-2017 <a
			href="http://www.itcast.cn">研究院研发部</a>.
		</strong> All rights reserved. </footer>
		<!-- 底部导航 /-->

	</div>

	<script src="../plugins/jQuery/jquery-2.2.3.min.js"></script>
	<script src="../plugins/jQueryUI/jquery-ui.min.js"></script>
	<script>
		$.widget.bridge('uibutton', $.ui.button);
	</script>
	<script src="../plugins/bootstrap/js/bootstrap.min.js"></script>
	<script src="../plugins/raphael/raphael-min.js"></script>
	<script src="../plugins/morris/morris.min.js"></script>
	<script src="../plugins/sparkline/jquery.sparkline.min.js"></script>
	<script src="../plugins/jvectormap/jquery-jvectormap-1.2.2.min.js"></script>
	<script src="../plugins/jvectormap/jquery-jvectormap-world-mill-en.js"></script>
	<script src="../plugins/knob/jquery.knob.js"></script>
	<script src="../plugins/daterangepicker/moment.min.js"></script>
	<script src="../plugins/daterangepicker/daterangepicker.js"></script>
	<script src="../plugins/daterangepicker/daterangepicker.zh-CN.js"></script>
	<script src="../plugins/datepicker/bootstrap-datepicker.js"></script>
	<script
		src="../plugins/datepicker/locales/bootstrap-datepicker.zh-CN.js"></script>
	<script
		src="../plugins/bootstrap-wysihtml5/bootstrap3-wysihtml5.all.min.js"></script>
	<script src="../plugins/slimScroll/jquery.slimscroll.min.js"></script>
	<script src="../plugins/fastclick/fastclick.js"></script>
	<script src="../plugins/iCheck/icheck.min.js"></script>
	<script src="../plugins/adminLTE/js/app.min.js"></script>
	<script src="../plugins/treeTable/jquery.treetable.js"></script>
	<script src="../plugins/select2/select2.full.min.js"></script>
	<script src="../plugins/colorpicker/bootstrap-colorpicker.min.js"></script>
	<script
		src="../plugins/bootstrap-wysihtml5/bootstrap-wysihtml5.zh-CN.js"></script>
	<script src="../plugins/bootstrap-markdown/js/bootstrap-markdown.js"></script>
	<script
		src="../plugins/bootstrap-markdown/locale/bootstrap-markdown.zh.js"></script>
	<script src="../plugins/bootstrap-markdown/js/markdown.js"></script>
	<script src="../plugins/bootstrap-markdown/js/to-markdown.js"></script>
	<script src="../plugins/ckeditor/ckeditor.js"></script>
	<script src="../plugins/input-mask/jquery.inputmask.js"></script>
	<script
		src="../plugins/input-mask/jquery.inputmask.date.extensions.js"></script>
	<script src="../plugins/input-mask/jquery.inputmask.extensions.js"></script>
	<script src="../plugins/datatables/jquery.dataTables.min.js"></script>
	<script src="../plugins/datatables/dataTables.bootstrap.min.js"></script>
	<script src="../plugins/chartjs/Chart.min.js"></script>
	<script src="../plugins/flot/jquery.flot.min.js"></script>
	<script src="../plugins/flot/jquery.flot.resize.min.js"></script>
	<script src="../plugins/flot/jquery.flot.pie.min.js"></script>
	<script src="../plugins/flot/jquery.flot.categories.min.js"></script>
	<script src="../plugins/ionslider/ion.rangeSlider.min.js"></script>
	<script src="../plugins/bootstrap-slider/bootstrap-slider.js"></script>
	<script>
		$(document).ready(function() {
			// 选择框
			$(".select2").select2();

			// WYSIHTML5编辑器
			$(".textarea").wysihtml5({
				locale : 'zh-CN'
			});
		});

		// 设置激活菜单
		function setSidebarActive(tagUri) {
			var liObj = $("#" + tagUri);
			if (liObj.length > 0) {
				liObj.parent().parent().addClass("active");
				liObj.addClass("active");
			}
		}

		$(document)
				.ready(
						function() {

							// 激活导航位置
							setSidebarActive("admin-datalist");

							// 列表按钮 
							$("#dataList td input[type='checkbox']")
									.iCheck(
											{
												checkboxClass : 'icheckbox_square-blue',
												increaseArea : '20%'
											});
							// 全选操作 
							$("#selall")
									.click(
											function() {
												var clicks = $(this).is(
														':checked');
												if (!clicks) {
													$(
															"#dataList td input[type='checkbox']")
															.iCheck(
																	"uncheck");
												} else {
													$(
															"#dataList td input[type='checkbox']")
															.iCheck("check");
												}
												$(this).data("clicks",
														!clicks);
											});
						});
	</script>

//web.xml

<?xml version="1.0" encoding="UTF-8"?>

contextConfigLocation classpath*:applicationContext.xml org.springframework.web.context.ContextLoaderListener org.springframework.web.context.request.RequestContextListener characterEncodingFilter org.springframework.web.filter.CharacterEncodingFilter encoding UTF-8 characterEncodingFilter /* dispatcherServlet org.springframework.web.servlet.DispatcherServlet contextConfigLocation classpath:spring-mvc.xml 1 dispatcherServlet *.do loginFilter com.zhongruan.filter.LoginFilter loginFilter *.do
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值