Java程序员周末时间搞锭银行信息管理系统毕业设计(java+springboot+mybatis+mysql+vue+elementui)等实现

 博主介绍公司项目主程、全网粉丝10W+,csdn特邀作者、博客专家、CSDN新星计划导师、java领域优质创作者,CSDN博客之星TOP100、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业设计

公众号:java李杨勇 简历模板、学习资料、面试题库等都给你💪

🍅文末获取源码联系🍅

🍅CSDN官方推荐10W+JAVA技术人文章发布打卡社区🍅

前言介绍:

         在社会快速发展的影响下,银行继续发展,大大增加了存取款和贷款的数量、多样性、质量等等的要求,使小型银行的管理和运营比过去十年更加困难。依照这一现实为基础,设计一个快捷而又方便的小型银行管理系统是一项十分重要并且有价值的事情。对于传统的在银行管理制模型来说,银行管理系统具有许多不可比拟的优势,首先是快速更新订单信息,其次是大量信息的管理,最后是高度安全,以及使用简单等特性,这使得小型银行管理系统的管理和运营非常方便。现代社会的网络和信息技术不断提高,人们的生活水平达到一个新的水平。发展小型银行管理系统正是我们所需要的。这篇文章研究了相关管理系统的开发和实现,从需求分析、总体设计到具体实现,最终完成了整个银行管理系统,从而方便了用户和提高了银行的管理水平。

系统设计:

主要实现

首页、个人中心、通知公告管理、用户管理、员工管理、网点信息管理、账户信息管理、账户存款管理、账户取款管理、账户转账管理、在线咨询管理、销户信息管理、贷款产品管理、贷款信息管理、还款信息管理、离职申请管理、系统管理等功能,其具有简单的接口,方便的应用,强大的互动,完全基于互联网的特点。 

整个系统是由多个功能模块组合而成的,要将所有的功能模块都一一列举出来,然后进行逐个的功能设计,使得每一个模块都有相对应的功能设计,然后进行系统整体的设计。

系统结构图

主要用到以下技术:

Eclipse

本系统使用的是Eclipse, Eclipse是一个集成开发环境,可以用于Java或者移动应用等方面的程序开发。它有许多强大功能如:编译、调试、test和发布等。同时支持一些其他语言如:HTML脚本,SQL,SPRING BOOT,CSS样式,Spring,Hibernate,Javascript等。

 MySQL

MMySQL数据库是较为出名的关系形数据库,它使用大量的二维表来进行存储数据而不是把数据封装存储早同一个“仓库”中,十分有利于提高速度和数据应用的灵活性。

中小企业网站开发商的首选数据库一般也是MySQL。SQL语言是它的标准语言。由于该数据库在体积、速度和运营成本方面的优势,特别是开放源代码的技术特点,因此深受开发者的喜爱。

Spring Boot框架

Spring框架是Java平台上的一种开源应用框架,提供具有控制反转特性的容器。尽管Spring框架自身对编程模型没有限制,但其在Java应用中的频繁使用让它备受青睐,以至于后来让它作为EJB(EnterpriseJavaBeans)模型的补充,甚至是替补。Spring框架为开发提供了一系列的解决方案,比如利用控制反转的核心特性,并通过依赖注入实现控制反转来实现管理对象生命周期容器化,利用面向切面编程进行声明式的事务管理,整合多种持久化技术管理数据访问,提供大量优秀的Web框架方便开发等等。Spring框架具有控制反转(IOC)特性,IOC旨在方便项目维护和测试,它提供了一种通过Java的反射机制对Java对象进行统一的配置和管理的方法。Spring框架利用容器管理对象的生命周期,容器可以通过扫描XML文件或类上特定Java注解来配置对象,开发者可以通过依赖查找或依赖注入来获得对象。Spring框架具有面向切面编程(AOP)框架,SpringAOP框架基于代理模式,同时运行时可配置;AOP框架主要针对模块之间的交叉关注点进行模块化。Spring框架的AOP框架仅提供基本的AOP特性,虽无法与AspectJ框架相比,但通过与AspectJ的集成,也可以满足基本需求。Spring框架下的事务管理、远程访问等功能均可以通过使用SpringAOP技术实现。Spring的事务管理框架为Java平台带来了一种抽象机制,使本地和全局事务以及嵌套事务能够与保存点一起工作,并且几乎可以在Java平台的任何环境中工作。

功能截图:

 登录模块:

用户前台管理:

系统首页:在系统首页可以查看首页、网点信息、贷款产品、银行资讯、个人中心、后台管理等内容进行详细操作

网点信息:在网点信息页面中可以查看网点名称、网点介绍、网点图片、电话、地址等内容进行评论或收藏操作

贷款产品:在贷款产品页面中可以查看产品编号、产品名称、图片、标签、额度范围、月利率、贷款期限、发布日期、产品介绍等内容进行申请贷款、评论或收藏操作

个人中心: 在个人中心页面通过填写用户名、密码、姓名、图片、性别、联系电话、身份证等内容,进行信息更新操作,还可以根据需要对我的收藏进行详细操作

用户后台管理:

管理员登录进入小型银行管理系统可以查看首页、个人中心、通知公告管理、用户管理、员工管理、网点信息管理、账户信息管理、账户存款管理、账户取款管理、账户转账管理、在线咨询管理、销户信息管理、贷款产品管理、贷款信息管理、还款信息管理、离职申请管理、系统管理等功能进行详细操作

通知公告管理:在通知公告管理页面中可以查看索引、公告标题、图片、发布日期等内容,进行详情,修改或删除等操作

用户信息管理:在网点信息管理页面中可以对索引、网点名称、图片、网点介绍、电话、地址等内容,进行详情、修改、查看评论或删除等操作

员工信息管理

员工档案管理

网点信息管理

用户存款管理:在账户信息管理页面中可以对索引、用户名、姓名、联系电话、身份证、卡号、密码、金额、开卡日期等内容进行详情、存款、取款、转账、修改或删除等操作

用户取款管理

用户转账管理:在账户转账管理页面中可以对索引、用户名、姓名、联系电话、身份证、卡号、金额、对方卡号、开户名、转账说明、转账日期、员工工号、员工姓名等内容,进行详情、修改或删除等操作

贷款产品管理:在贷款产品管理页面中可以对索引、产品编号、产品名称、封面图、标签、额度范围、月利率、贷款期限、发布日期等内容,进行详情、修改、查看评论或删除等操作

还款信息管理:在还款信息管理页面中可以对索引、产品编号、产品名称、金额、备注、还款日期、用户名、姓名、联系电话、身份证、审核回复、审核状态、审核等内容,进行详情、修改或删除等操作

员工离职管理

系统设置管理: 

代码实现:


/*** 用户* 后端接口* @author * @email * @date 2022-04-08 18:18:08*/
@RestController
@RequestMapping("/yonghu")
public class YonghuController {@Autowiredprivate YonghuService yonghuService;@Autowiredprivate TokenService tokenService;/*** 登录*/@IgnoreAuth@RequestMapping(value = "/login")public R login(String username, String password, String captcha, HttpServletRequest request) {YonghuEntity user = yonghuService.selectOne(new EntityWrapper<YonghuEntity>().eq("yonghuming", username));if(user==null || !user.getMima().equals(password)) {return R.error("账号或密码不正确");}String token = tokenService.generateToken(user.getId(), username,"yonghu",  "用户" );return R.ok().put("token", token);}/*** 注册*/@IgnoreAuth@RequestMapping("/register")public R register(@RequestBody YonghuEntity yonghu){//ValidatorUtils.validateEntity(yonghu);YonghuEntity user = yonghuService.selectOne(new EntityWrapper<YonghuEntity>().eq("yonghuming", yonghu.getYonghuming()));if(user!=null) {return R.error("注册用户已存在");}Long uId = new Date().getTime();yonghu.setId(uId);yonghuService.insert(yonghu);return R.ok();}/*** 退出*/@RequestMapping("/logout")public R logout(HttpServletRequest request) {request.getSession().invalidate();return R.ok("退出成功");}/*** 获取用户的session用户信息*/@RequestMapping("/session")public R getCurrUser(HttpServletRequest request){Long id = (Long)request.getSession().getAttribute("userId");YonghuEntity user = yonghuService.selectById(id);return R.ok().put("data", user);}/*** 密码重置*/@IgnoreAuth@RequestMapping(value = "/resetPass")public R resetPass(String username, HttpServletRequest request){YonghuEntity user = yonghuService.selectOne(new EntityWrapper<YonghuEntity>().eq("yonghuming", username));if(user==null) {return R.error("账号不存在");}user.setMima("123456");yonghuService.updateById(user);return R.ok("密码已重置为:123456");}/*** 后端列表*/@RequestMapping("/page")public R page(@RequestParam Map<String, Object> params,YonghuEntity yonghu,HttpServletRequest request){EntityWrapper<YonghuEntity> ew = new EntityWrapper<YonghuEntity>();PageUtils page = yonghuService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, yonghu), params), params));return R.ok().put("data", page);}/*** 前端列表*/@RequestMapping("/list")public R list(@RequestParam Map<String, Object> params,YonghuEntity yonghu, HttpServletRequest request){EntityWrapper<YonghuEntity> ew = new EntityWrapper<YonghuEntity>();PageUtils page = yonghuService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, yonghu), params), params));return R.ok().put("data", page);}/*** 列表*/@RequestMapping("/lists")public R list( YonghuEntity yonghu){EntityWrapper<YonghuEntity> ew = new EntityWrapper<YonghuEntity>();ew.allEq(MPUtil.allEQMapPre( yonghu, "yonghu")); return R.ok().put("data", yonghuService.selectListView(ew));}/*** 查询*/@RequestMapping("/query")public R query(YonghuEntity yonghu){EntityWrapper< YonghuEntity> ew = new EntityWrapper< YonghuEntity>();ew.allEq(MPUtil.allEQMapPre( yonghu, "yonghu")); YonghuView yonghuView =  yonghuService.selectView(ew);return R.ok("查询用户成功").put("data", yonghuView);}/*** 后端详情*/@RequestMapping("/info/{id}")public R info(@PathVariable("id") Long id){YonghuEntity yonghu = yonghuService.selectById(id);return R.ok().put("data", yonghu);}/*** 前端详情*/@RequestMapping("/detail/{id}")public R detail(@PathVariable("id") Long id){YonghuEntity yonghu = yonghuService.selectById(id);return R.ok().put("data", yonghu);}/*** 后端保存*/@RequestMapping("/save")public R save(@RequestBody YonghuEntity yonghu, HttpServletRequest request){yonghu.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());//ValidatorUtils.validateEntity(yonghu);YonghuEntity user = yonghuService.selectOne(new EntityWrapper<YonghuEntity>().eq("yonghuming", yonghu.getYonghuming()));if(user!=null) {return R.error("用户已存在");}yonghu.setId(new Date().getTime());yonghuService.insert(yonghu);return R.ok();}/*** 前端保存*/@RequestMapping("/add")public R add(@RequestBody YonghuEntity yonghu, HttpServletRequest request){yonghu.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());//ValidatorUtils.validateEntity(yonghu);YonghuEntity user = yonghuService.selectOne(new EntityWrapper<YonghuEntity>().eq("yonghuming", yonghu.getYonghuming()));if(user!=null) {return R.error("用户已存在");}yonghu.setId(new Date().getTime());yonghuService.insert(yonghu);return R.ok();}/*** 修改*/@RequestMapping("/update")public R update(@RequestBody YonghuEntity yonghu, HttpServletRequest request){//ValidatorUtils.validateEntity(yonghu);yonghuService.updateById(yonghu);//全部更新return R.ok();}/*** 删除*/@RequestMapping("/delete")public R delete(@RequestBody Long[] ids){yonghuService.deleteBatchIds(Arrays.asList(ids));return R.ok();}/*** 提醒接口*/@RequestMapping("/remind/{columnName}/{type}")public R remindCount(@PathVariable("columnName") String columnName, HttpServletRequest request, @PathVariable("type") String type,@RequestParam Map<String, Object> map) {map.put("column", columnName);map.put("type", type);if(type.equals("2")) {SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");Calendar c = Calendar.getInstance();Date remindStartDate = null;Date remindEndDate = null;if(map.get("remindstart")!=null) {Integer remindStart = Integer.parseInt(map.get("remindstart").toString());c.setTime(new Date()); c.add(Calendar.DAY_OF_MONTH,remindStart);remindStartDate = c.getTime();map.put("remindstart", sdf.format(remindStartDate));}if(map.get("remindend")!=null) {Integer remindEnd = Integer.parseInt(map.get("remindend").toString());c.setTime(new Date());c.add(Calendar.DAY_OF_MONTH,remindEnd);remindEndDate = c.getTime();map.put("remindend", sdf.format(remindEndDate));}}Wrapper<YonghuEntity> wrapper = new EntityWrapper<YonghuEntity>();if(map.get("remindstart")!=null) {wrapper.ge(columnName, map.get("remindstart"));}if(map.get("remindend")!=null) {wrapper.le(columnName, map.get("remindend"));}int count = yonghuService.selectCount(wrapper);return R.ok().put("count", count);}}

/*** 销户信息* 后端接口* @author * @email * @date 2022-04-08 18:18:08*/
@RestController
@RequestMapping("/xiaohuxinxi")
public class XiaohuxinxiController {@Autowiredprivate XiaohuxinxiService xiaohuxinxiService;/*** 后端列表*/@RequestMapping("/page")public R page(@RequestParam Map<String, Object> params,XiaohuxinxiEntity xiaohuxinxi,HttpServletRequest request){String tableName = request.getSession().getAttribute("tableName").toString();if(tableName.equals("yonghu")) {xiaohuxinxi.setYonghuming((String)request.getSession().getAttribute("username"));}EntityWrapper<XiaohuxinxiEntity> ew = new EntityWrapper<XiaohuxinxiEntity>();PageUtils page = xiaohuxinxiService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, xiaohuxinxi), params), params));return R.ok().put("data", page);}/*** 前端列表*/@RequestMapping("/list")public R list(@RequestParam Map<String, Object> params,XiaohuxinxiEntity xiaohuxinxi, HttpServletRequest request){EntityWrapper<XiaohuxinxiEntity> ew = new EntityWrapper<XiaohuxinxiEntity>();PageUtils page = xiaohuxinxiService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, xiaohuxinxi), params), params));return R.ok().put("data", page);}/*** 列表*/@RequestMapping("/lists")public R list( XiaohuxinxiEntity xiaohuxinxi){EntityWrapper<XiaohuxinxiEntity> ew = new EntityWrapper<XiaohuxinxiEntity>();ew.allEq(MPUtil.allEQMapPre( xiaohuxinxi, "xiaohuxinxi")); return R.ok().put("data", xiaohuxinxiService.selectListView(ew));}/*** 查询*/@RequestMapping("/query")public R query(XiaohuxinxiEntity xiaohuxinxi){EntityWrapper< XiaohuxinxiEntity> ew = new EntityWrapper< XiaohuxinxiEntity>();ew.allEq(MPUtil.allEQMapPre( xiaohuxinxi, "xiaohuxinxi")); XiaohuxinxiView xiaohuxinxiView =  xiaohuxinxiService.selectView(ew);return R.ok("查询销户信息成功").put("data", xiaohuxinxiView);}/*** 后端详情*/@RequestMapping("/info/{id}")public R info(@PathVariable("id") Long id){XiaohuxinxiEntity xiaohuxinxi = xiaohuxinxiService.selectById(id);return R.ok().put("data", xiaohuxinxi);}/*** 前端详情*/@RequestMapping("/detail/{id}")public R detail(@PathVariable("id") Long id){XiaohuxinxiEntity xiaohuxinxi = xiaohuxinxiService.selectById(id);return R.ok().put("data", xiaohuxinxi);}/*** 后端保存*/@RequestMapping("/save")public R save(@RequestBody XiaohuxinxiEntity xiaohuxinxi, HttpServletRequest request){xiaohuxinxi.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());//ValidatorUtils.validateEntity(xiaohuxinxi);xiaohuxinxiService.insert(xiaohuxinxi);return R.ok();}/*** 前端保存*/@RequestMapping("/add")public R add(@RequestBody XiaohuxinxiEntity xiaohuxinxi, HttpServletRequest request){xiaohuxinxi.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());//ValidatorUtils.validateEntity(xiaohuxinxi);xiaohuxinxiService.insert(xiaohuxinxi);return R.ok();}/*** 修改*/@RequestMapping("/update")public R update(@RequestBody XiaohuxinxiEntity xiaohuxinxi, HttpServletRequest request){//ValidatorUtils.validateEntity(xiaohuxinxi);xiaohuxinxiService.updateById(xiaohuxinxi);//全部更新return R.ok();}/*** 删除*/@RequestMapping("/delete")public R delete(@RequestBody Long[] ids){xiaohuxinxiService.deleteBatchIds(Arrays.asList(ids));return R.ok();}/*** 提醒接口*/@RequestMapping("/remind/{columnName}/{type}")public R remindCount(@PathVariable("columnName") String columnName, HttpServletRequest request, @PathVariable("type") String type,@RequestParam Map<String, Object> map) {map.put("column", columnName);map.put("type", type);if(type.equals("2")) {SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");Calendar c = Calendar.getInstance();Date remindStartDate = null;Date remindEndDate = null;if(map.get("remindstart")!=null) {Integer remindStart = Integer.parseInt(map.get("remindstart").toString());c.setTime(new Date()); c.add(Calendar.DAY_OF_MONTH,remindStart);remindStartDate = c.getTime();map.put("remindstart", sdf.format(remindStartDate));}if(map.get("remindend")!=null) {Integer remindEnd = Integer.parseInt(map.get("remindend").toString());c.setTime(new Date());c.add(Calendar.DAY_OF_MONTH,remindEnd);remindEndDate = c.getTime();map.put("remindend", sdf.format(remindEndDate));}}Wrapper<XiaohuxinxiEntity> wrapper = new EntityWrapper<XiaohuxinxiEntity>();if(map.get("remindstart")!=null) {wrapper.ge(columnName, map.get("remindstart"));}if(map.get("remindend")!=null) {wrapper.le(columnName, map.get("remindend"));}String tableName = request.getSession().getAttribute("tableName").toString();if(tableName.equals("yonghu")) {wrapper.eq("yonghuming", (String)request.getSession().getAttribute("username"));}int count = xiaohuxinxiService.selectCount(wrapper);return R.ok().put("count", count);}}

论文参考:

源码获取:

大家点赞、收藏、关注、评论啦 、查看👇🏻👇🏻👇🏻微信公众号获取联系方式👇🏻👇🏻👇🏻

打卡 文章 更新 257/  365天

 精彩专栏推荐订阅下方专栏👇🏻👇🏻👇🏻👇🏻

Java项目精品实战案例《100套》

web前端期末大作业网页实战《100套》

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/561746.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

基于Java+SpringBoot+vue+elementui的校园文具商城系统详细设计和实现

博主介绍&#xff1a;✌公司项目主程、全网粉丝10W,csdn特邀作者、博客专家、CSDN新星计划导师、java领域优质创作者,CSDN博客之星TOP100、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业设计✌ 公众号&#xff1a;java李阳勇 简历模板、学习资料、面试题…

又一门国产数据库语言诞生了,比SQL还好用

一、数据库语言的目标 1.1 数据库是做什么的 数据库这个软件&#xff0c;名字中有个“库”字&#xff0c;会让人觉得它主要是为了存储的。其实不然&#xff0c;数据库实现的重要功能有两条&#xff1a;计算、事务&#xff01;也就是我们常说的OLAP和OLTP&#xff0c;数据库的…

VUE:安装npm install报错Module build failed: Error: ENOENT: no such file or directory, scandir

报错信息如下&#xff1a; Module build failed: Error: ENOENT: no such file or directory, scandir D:\renren-fast-vue\node_modules\node-sass\vendorat Object.fs.readdirSync (fs.js:904:18)at Object.getInstalledBinaries (D:\renren-fast-vue\node_modules\node-sass…

如何让JOIN跑得更快?

JOIN 一直是数据库性能优化的老大难问题&#xff0c;本来挺快的查询&#xff0c;一旦涉及了几个 JOIN&#xff0c;性能就会陡降。而且&#xff0c;参与 JOIN 的表越大越多&#xff0c;性能就越难提上来。 其实&#xff0c;让 JOIN 跑得快的关键是要对 JOIN 分类&#xff0c;分…

Web前端期末大作业--中国港珠澳大桥网页设计(HTML+CSS+JavaScript)实现

博主介绍&#xff1a;✌公司项目主程、全网粉丝20W,csdn特邀作者、博客专家、CSDN新星计划导师、java领域优质创作者,CSDN博客之星TOP100、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业设计✌ 目录 前言介绍 项目简介 设计布局 功能截图 首页 项目简…

Web前端期末大作业--响应式少儿舞蹈网页设计(HTML+CSS+JavaScript)实现

博主介绍&#xff1a;✌公司项目主程、全网粉丝20W,csdn特邀作者、博客专家、CSDN新星计划导师、java领域优质创作者,CSDN博客之星Top50、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业设计✌ 公众号&#xff1a;java李阳勇 简历模板、学习资料、面试题库…

享誉全球的 Java 经典著作《Java核心技术》Java 17

Java 诞生 27 年来&#xff0c;这本享誉全球的 Java 经典著作《Core Java》一路伴随着 Java 的成长&#xff0c;得到了百万 Java 开发者的青睐&#xff0c;几乎出现在每个“学Java要看什么书”类似的书单里&#xff0c;影响了几代技术人。 27年间&#xff0c;每当 Java 有新的…

【云原生】Spring Cloud微服务学习路线汇总

Spring Cloud是什么&#xff1f; 简单来说Spring Cloud是一系列框架的组成集合。主要利用的我们现在主流应用的Spring Boot框架开发便利性、巧妙地简化了分布式系统基础设施的开发&#xff0c;如服务发现注册、配置中心、消息总线、负载均衡、断路器、数据监控等&#xff0c;都…

Oracle12C配置监听IP地址

根据自己的安装路径修改2个地方listener.ora和tnsnames.ora 我的路径在&#xff1a;E:\app\Administrator\product\12.2.0\dbhome_1\network\admin listener.ora文件 # listener.ora Network Configuration File: E:\app\Administrator\product\12.2.0\dbhome_1\NETWORK\ADMI…

强大的SQL计算利器-SPL

现代应用开发中&#xff0c;通常只用SQL实现简单的数据存取动作&#xff0c;而主要的计算过程和业务逻辑直接在应用程序中实现&#xff0c;主要原因在于&#xff1a; 过于复杂的SQL很难调试、编写、阅读、修改。SQL有方言特征&#xff0c;大量使用SQL后&#xff0c;会导致程序…

【毕业季·进击的技术er】大学生计算机毕业设计应该这样写

活动地址&#xff1a;毕业季进击的技术erhttps://marketing.csdn.net/p/f4a818f6455f3a9a7a20c89f60ad35f7 目录 扉页 摘要 目录 一 绪论 二、相关技术环境介绍 三、系统需求分析 四、系统架构设计 五、系统实现 六、系统测试 致谢 参考文献 以一个过来学长的角度来看…

【云原生】SpringCloud是什么?

SpringCloud是一个提供一些服务框架的服务治理平台。它包括&#xff1a;服务注册和发现、配置中心、消息中心、负载平衡、数据监控等。封装了微服务基础架构框架Netflix的多个开源组件&#xff0c;并与云平台和Spring boot框架集成。 SpringCloud也为开发人员提供了一个快速构…

Http请求:Google调用本地摄像头权限开启

项目场景&#xff1a; 最近在做一个考试培训系统&#xff01;里面用到了监控摄像需要调用本地摄像头 解决方案&#xff1a; 打开谷歌浏览器&#xff0c;输入chrome://flags/回车&#xff1a; 在输入框输入unsafely-treat-insecure-origin-as-secure 选择enable 点击relaunch重…

快收藏!最适合计算机大学生的Java毕业设计项目--高校食堂点餐系统

博主介绍&#xff1a;✌全网粉丝20W,csdn特邀作者、博客专家、CSDN新星计划导师、java领域优质创作者,CSDN博客之星TOP100、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业设计✌ &#x1f345;文末获取联系&#x1f345; 精彩专栏推荐&#x1f447;&#…

MySql根据字段名查询重复记录并删除!只保留一条

最近在处理业务数据的时候&#xff01;在几W条记录里存在着些相同的记录,如何用SQL语句,删除掉重复的呢? 可以用以下方法进行处理 其实很简单&#xff01;就是查找表中多余的重复记录&#xff0c;重复记录是根据单个字段来查询、然后删除其他重复的记录即可 查询重复记录 SEL…

基于Java+Spring+mybatis+vue+element实现酒店管理系统

博主介绍&#xff1a;✌全网粉丝20W,csdn特邀作者、博客专家、CSDN新星计划导师、java领域优质创作者,CSDN博客之星TOP100、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业设计✌ &#x1f345;文末获取联系&#x1f345; 精彩专栏推荐&#x1f447;&#…

无语!Jenkins 也宣布弃用 Java 8

继Java 之父 James Gosling 先前称&#xff0c;开发者应尽快弃用 JDK 8&#xff0c;可以选择 JDK 17 LTS&#xff0c;因为后者在各个方面都带来了巨大的改进。 开源 Devops 工具 Jenkins 宣布&#xff1a;从 6 月 28 日发布的 Jenkins 2.357 和即将发布的 9 月 LTS 版本开始&am…

(2022最新)Java毕业设计参考题目-题目新颖(值得收藏)

前言介绍 博主介绍&#xff1a;✌全网粉丝20W,csdn特邀作者、博客专家、CSDN新星计划导师、java领域优质创作者,博客之星TOP100、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业设计项目实战✌ &#x1f345;文末获取联系&#x1f345; 大四的同学马上要开…

Java实现二维码的生成和解析

最近因个人需求需要对根据内容生成二维码和进行解析&#xff01;记录一下&#xff01;二维码其实就是一种编码技术&#xff0c;只是这种编码技术是用在图片上了&#xff0c;将给定的一些文字&#xff0c;数字转换为一张经过特定编码的图片。这里利用的是 google 公司的 zxing使…

MYSQL求2个参数之间的正确率百分比

根据相应条件统计需要的count 查询总count数(totalCount) 计算百分比&#xff1a;count / totalCount * 100 表设计&#xff1a; CREATE TABLE topic_exercise (id bigint(11) NOT NULL,topic_id bigint(11) NOT NULL COMMENT 试题id,user_id bigint(11) NOT NULL COMMENT 用户…