功能:卡管理,卡消费,卡充值,图书借阅,消费,记录,注销等等功能。
jdk1.8 + tomcat8.5 + mysql + eclispe(intellij idea,eclispe,myeclispe,sts都支持)
jsp + rvlet + html+ css + javascript + jquery + ajax 等等
用户管理操作控制层:
/** * 用户管理操作 */@controller@requestmapping("/ur")public class urcontroller { @autowired private urrvice urrvice; /** * 用户添加页面 * @return */ @getmapping("/add") public string create() { return "ur/add"; } /** * 用户添加操作 * @param ur * @return */ @postmapping("/add") @responbody public map<string, object> add(@requestbody ur ur) { if(stringutils.impty(ur.geturname())){ return map关于生气的成语control.getinstance().error("请填写用户名").getmap(); } if(stringutils.impty(ur.getname())){ return mapcontrol.getinstance().error("请填写名称").getmap(); } if(stringutils.impty(ur.geturpwd())){ return mapcontrol.getinstance().error("请填写密码").getmap(); } int result = urrvice.create(ur); if (result <= 0) { return mapcontrol.getinstance().error().getmap(); } return mapcontrol.getinstance().success().getmap(); } /** * 根据id删除 * @param id * @return */ @postmapping("/delete/{id}") @responbody public map<string, object> delete(@pathvariable("id") integer id) { int result = urrvice.delete(id); if (result <= 0) { return mapcontrol.getinstance().error().getmap(); } return mapcontrol.getinstance().success().getmap(); } //批量删除 @postmapping("/delete") @responbody public map<string, object> delete(string ids) { int result = urrvice.delete(ids); if (result <= 0) { return mapcontrol.getinstance().error().getmap(); } return mapcontrol.getinstance().success().getmap(); } /** * 编辑用户信息操作 * @param ur * @return */ @postmapping("/edit") @responbody public map<string, object> edit(@requestbody ur ur) { if(stringutils.impty(ur.geturname())){ return mapcontrol.getinstance().error("请填写用户名").getmap(); } if(stringutils.impty(ur.getname())){ return mapcontrol.getinstance().error("请填写名称").getmap(); } if(stringutils.impty(ur.geturpwd())){ return mapcontrol.getinstance().error("请填写密码").getmap(); } int result = urrvice.update(ur); if (result <= 0) { return mapcontrol.getinstance().error().getmap(); } return mapcontrol.getinstance().success().getmap(); } /** * 根据id查询,跳转修改页面 * @param id * @param modelmap * @return */ @getmapping("/edit/{id}") public string edit(@pathvariable("id") integer id, modelmap modelmap) { ur ur = urrvice.detail(id); modelmap.addattribute("ur", ur); return "ur/edit"; } //查询所有 @postmapping("/query") @responbody public map<string, object> query(@requestbody ur ur) { list<ur> list = urrvice.query(ur); integer count = urrvice.count(ur); return mapcontrol.getinstance().success().page(list, count).getmap(); } //跳转列表页面 @getmapping("/list") public string list() { return "ur/list"; } }
登录控制层:
@controllerpublic class logincontroller { @autowired private urrvice urrvice; @autowired private teacherrvice teacherrvice; @autowired private studentrvice studentrvice; //跳转登录页面 @getmapping("/login") public string login() { return "login"; } //登录操作 @postmapping("/login") @responbody public map<string, object> login(string urname, string password, string captcha, string type, httpssion ssion) { //判断用户名、密码、用户类型、验证码是否为空 if (stringutils.impty(urname) || stringutils.impty(password) || stringutils.impty(captcha) || stringutils.impty(type)) { return mapcontrol.getinstance().error("用户名或密码不能为空").getmap(); } //获取系统生成的验证码 string _captcha = (string) ssion.getattribute("captcha"); //先判断验证码是否正确 if (!(captcha.tolowerca()).equals(_captcha.tolowerca())) { //验证码错误 return mapcontrol.getinstance().error("验证码错误").getmap(); } //判断用户类型 if ("1".equals(type)) { //管理员验证登录 ur ur = urrvice.login(urname, md5utils.getmd5(password)); //对密码进行加密处理,因为数据库中存储的是加密后的密码 if (ur != null) { ssion.tattribute("ur", ur); ssion.tattribute("type", 1); return mapcontrol.getinstance().success().add("data", ur).getmap(); } el { return mapcontrol.getinstance().error("用户名或密码错误").getmap(); } } if ("2".equals(type)) { //老师验证登录 teacher teacher = teacherrvice.login(urname, md5utils.getmd5(password)); if (teacher != null) { ssion.tattribute("ur", teacher); ssion.tattribute("type", "2"); return mapcontrol.getinstance().success().add("data", teacher).getmap(); } el { return mapcontrol.getinstance().error("用户名或密码错误").getmap(); } } if ("3".equals(type)) { //学生验证登录 student student = studentrvice.login(urname, md5utils.getmd5(password)); if (student != null) { ssion.tattribute("ur", student); ssion.ta12月有什么考试ttribute("type", "3"); return mapcontrol.getinstance().success().add("data", student).getmap(); 个人学习经历怎么写 } el { return mapcontrol.getinstance().error("用户名或密码错误").getmap(); } } 执法规范化建设 return mapcontrol.getinstance().getmap(); } }
生成验证码:
@controller@requestmapping("/captcha")public class captchacontroller { private char[] codequence = {'a', '1', 'b', 'c', '2', 'd', '3', 'e', '4', 'f', '5', 'g', '6', 'h', '7', 'i', '8', 'j', 'k', '9', 'l', '1', 'm', '2', 'n', 'p', '3', 'q', '4', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z'}; @requestmapping("/code") public void getcode(httprvletrespon respon, httpssion ssion) throws ioexception { int width = 80; int height = 37; random random = new random(); //设置respon头信息 //禁止缓存 respon.theader("pragma", "no-cache"); respon.theader("cache-control", "no-cache"); respon.tdateheader("expires", 0); //生成缓冲区image类 bufferedimage image = new bufferedimage(width, height, 1); //产生image类的graphics用于绘制操作 graphics g = image.getgraphics(); //graphics类的样式 g.tcolor(this.getcolor(200, 250)); g.tfont(new font("times new roman", 0, 28)); g.fillrect(0, 0, width, height); //绘制干扰线 for (int i = 0; i < 40; i++) { g.tcolor(this.getcolor(130, 200)); int x = random.nextint(width); int y = random.nextint(height); int x1 = random.nextint(12); int y1 = random.nextint(12); g.drawline(x, y, x + x1, y + y1); } //绘制字符 string strcode = ""; for (int i = 0; i < 4; i++) { string rand = string.valueof(codequence[random.nextint(codequence.length)]); strcode = strcode + rand; g.tcolor(new color(20 + random.nextint(110), 20 + random.nextint(110), 20 + random.nextint(110))); g.drawstring(rand, 13 * i + 6, 28); } //将字符保存到ssion中用于前端的验证 ssion.tattribute("captcha", strcode.tolowerca()); g.dispo(); imageio.write(image, "jpeg", respon.getoutputstream()); respon.getoutputstream().flush(); } public color getcolor(int fc, int bc) { random random = new random(); if (fc > 255) fc = 255; if (bc > 255) bc = 255; int r = fc + random.nextint(bc - fc); int g = fc + random.nextint(bc - fc); int b = fc + random.nextint(bc - fc); return new color(r, g, b); } }
到此这篇关于java毕业设计实战之校园一卡通系统的实现的文章就介绍到这了,更多相关java 校园一卡通系统内容请搜索www.887551.com以前的文章或继续浏览下面的相关文章希望大家以后多多支家破人亡的意思持www.887551.com!
本文发布于:2023-04-04 19:05:04,感谢您对本站的认可!
本文链接:https://www.wtabcd.cn/fanwen/zuowen/a7505ecf5955ad75fec2c387fe219562.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文word下载地址:Java毕业设计实战之校园一卡通系统的实现.doc
本文 PDF 下载地址:Java毕业设计实战之校园一卡通系统的实现.pdf
留言与评论(共有 0 条评论) |