前言
该系统是在Java SE -1.7+ Tomcat 8.0+MySQL 5.5 的环境下 搭建的。该系统实现了银行客户管理的基本功能。其中使用了Hibernate 4.1.4 版本的持久化层框架。
网页整体截图:
功能
各功能如上述截图所示;以下只展示需要特别说明的部分:
该功能会在你点击的时候实时的生成备份文件,保存到目录下,并提供下载,可以看到,我这系统以前的备份和当前的备份都在。关于数据库恢复还有点问题,备份的文件没有问题,可如果通过Java以Runtime.getRuntime().exec(command);
去执行会有问题,还待解决。
其余的功能都已实现了。列如以下的基本信息查询:
分页代码也通过Hibernate实现:
//数据获取时,设置开始获取的位置和获取记录最大的数量
session.createQuery(hql).setFirstResult(page.getIndex()).setMaxResults(page.getPageSize()).list()
//实例化Page对象用来向JSP页面传递 request.setAttribute("page", page);在jsp页面获取即可
//Page对象如下:
package cn.joker.bean;import java.util.List;public class Page {private int pageNum; //访问页private int total; //总页数private int pageSize = 6; //每页大小private int index; //数据库所获取第一个记录的位置private int startPage; //页面显示起始页private int endPage;private int betweenPages = 6; //总共显示页数 暂时只处理了为偶数的情况private List<?> list=null; //存放数据的list集合public int getIndex() {return index;}public void setIndex(int index) {this.index = index;}public int getBetweenPages() {return betweenPages;}public void setBetweenPages(int betweenPages) {this.betweenPages = betweenPages;}public int getPageNum() {return pageNum;}public int getTotal() {return total;}public int getPageSize() {return pageSize;}public int getStartPage() {return startPage;}public int getEndPage() {return endPage;}public List<?> getList() {return list;}public void setPageNum(int pageNum) {if(pageNum<=0)this.pageNum = 1;if(pageNum >= total)this.pageNum = total;this.index = (pageNum-1) * pageSize;this.pageNum = pageNum;}//处理开始页 和结束页的逻辑public void setTotal(int total) {//计算分成多少页int x = total%pageSize; //做判断用int y ; //分页if(x>0)y=total/pageSize +1;elsey = total/pageSize;if(y<=betweenPages){this.startPage = 1;this.endPage = y;}else if(pageNum - (betweenPages/2-1)>=1 && (pageNum + betweenPages/2)<=y){this.startPage = pageNum - (betweenPages/2-1);this.endPage = pageNum + betweenPages/2;}else if(pageNum - (betweenPages/2-1)<1 ){this.startPage = 1;this.endPage = pageNum + betweenPages/2;}else if((pageNum + betweenPages/2)>y){this.startPage = pageNum - (betweenPages/2-1);this.endPage = y;}this.total = total;}public void setPageSize(int pageSize) {this.pageSize = pageSize;}public void setStartPage(int startPage) {this.startPage = startPage;}public void setEndPage(int endPage) {this.endPage = endPage;}public void setList(List<?> list) {this.list = list;}
}
其余的代码也就不一一说了,有需要代码的可以从文章末给出的地址下载。
补充:鉴于有很多朋友需要源码,我也担心我后面没时间,不能够及时的把源码发给需要的朋友,所以就上传到了资源里,下载需要五个积分,如果积分不够的朋友,可以通过github下载 【加油】 下载地址,github下载地址
2020-03-02
后续补充:由于很多初学的朋友,对于这种项目很难上手,故将项目改为了 maven 管理的,并使用 Intellij ,可通过上述的 github 地址获得最新代码,CSDN 资源中的包,先不做修改。
如果你觉得我的文章对你有所帮助的话,欢迎关注我的公众号。赞!
认认真真学习,做思想的产出者,而不是文字的搬运工。错误之处,还望指出!