暂时未有相关云产品技术能力~
暂无个人介绍
深入解析SpringBoot的请求响应机制
深入 Maven:构建杰出的软件项目的完美工具
基于SpringBoot+Redis的前后端分离外卖项目-苍穹外卖(五)
从零开始学习 Java:简单易懂的入门指南之线程同步(三十五)
从零开始学习 Java:简单易懂的入门指南之IO缓冲流、转换流(三十二)
掌握 JavaScript:从初学者到高级开发者的完整指南(三)
从零开始学习 Java:简单易懂的入门指南之多线程(三十四)
从零开始学习 Java:简单易懂的入门指南之Map集合(二十三)
基于springboot+Redis的前后端分离项目之分布式锁(四)-【黑马点评】
从零开始学习 Java:简单易懂的入门指南之查找算法及排序算法(二十)
从零开始学习 Java:简单易懂的入门指南之JDK8时间相关类(十八)
从零开始学习 Java:简单易懂的入门指南之时间类(十七)
从零开始学习 Java:简单易懂的入门指南之正则表达式(十五)
从零开始学习 Java:简单易懂的入门指南之Objects、BigInteger、BigDecimal(十四)
从零开始学习 Java:简单易懂的入门指南之Runtime、Object(十三)
从零开始学习 Java:简单易懂的入门指南之MAth、System(十二)
从零开始学习 Java:简单易懂的入门指南之抽象类&接口&内部类(十一)
从零开始学习 Java:简单易懂的入门指南之面向对象(九)
从零开始学习 Java:简单易懂的入门指南之API、String类(八)
方法的概念:方法(method)是程序中最小的执行单元注意:方法必须先创建才可以使用,该过程成为方法定义,方法创建后并不是直接可以运行的,需要手动使用后,才执行,该过程成为方法调用
数组指的是一种容器,可以同来存储同种数据类型的多个值。 但是数组容器在存储数据的时候,需要结合隐式转换考虑。比如:定义了一个int类型的数组。那么boolean。double类型的数据是不能存到这个数组中的, 但是byte类型,short类型,int类型的数据是可以存到这个数组里面的。
流程控制语句,在一个程序执行的过程中,各条语句的执行顺序对程序的结果是有直接影响的。所以,我们必须清楚每条语句的执行流程。而且,很多时候要通过控制语句的执行顺序来实现我们想要的功能。
运算符 就是对常量或者变量进行操作的符号。比如: + - * /。 表达式就是用运算符把常量或者变量连接起来的,符合Java语法的式子就是表达式。 比如:a + b 这个整体就是表达式。而其中+是算术运算符的一种,所以这个表达式也称之为算术表达式。
介绍Java基础语法. 例如注释是对代码的解释和说明文字;如果我们要对代码进行解释,那么就可以使用注释。当注释的内容比较少,一行就写完了,可以用单行注释。如果注释的内容比较多,需要写在多行,那么可以使用多行注释。
本文简单介绍Java基础语法,什么是cmd?就是在windows操作系统中,利用命令行的方式去操作计算机。我们可以利用cmd命令去操作计算机,比如:打开文件,打开文件夹,创建文件夹等。
附近的商户、用户签到、UV统计 (一)附近的商户 1.附近商户-GEO数据结构的基本用法 2.附近商户-导入店铺数据到GEO 3.附近商户-实现附近商户功能 (二)用户签到 1.用户签到-BitMap功能演示 2.用户签到-实现签到功能 3.用户签到-签到统计 4.额外加餐-关于使用bitmap来解决缓存穿透的方案 (三)UV统计 1.UV统计-HyperLogLog 2.UV统计-测试百万数据的统计
好友关注&Feed流 (一)好友关注-关注和取消关注 (二)好友关注-共同关注 (三) 好友关注-Feed流实现方案 (四)好友关注-推送到粉丝收件箱 (五)好友关注-实现分页查询收邮箱
探店笔记类似点评网站的评价,往往是图文结合。对应的表有两个:tb_blog:探店笔记表,包含笔记中的标题、文字、图片等,tb_blog_comments:其他用户对探店笔记的评价
在这里笔者想给大家分享一下课程内没有的思路,看看有没有小伙伴这么想,比如,我们可以不可以使用异步编排来做,或者说我开启N多线程,N多个线程,一个线程执行查询优惠卷,一个执行判断扣减库存,一个去创建订单等等,然后再统一做返回,这种做法和课程中有哪种好呢?答案是课程中的好,因为如果你采用我刚说的方式,如果访问的人很多,那么线程池中的线程可能一下子就被消耗完了,而且你使用上述方案,最大的特点在于,你觉得时效性会非常重要,但是你想想是吗?并不是,比如我只要确定他能做这件事,然后我后边慢慢做就可以了,我并不需要他一口气做完这件事,所以我们应当采用的是课程中,类似消息队列的方式来完成我们的需求。
基于setnx实现的分布式锁存在下面的问题: 重入问题:重入问题是指 获得锁的线程可以再次进入到相同的锁的代码块中,可重入锁的意义在于防止死锁,比如HashTable这样的代码中,他的方法都是使用synchronized修饰的,假如他在一个方法内,调用另一个方法,那么此时如果是不可重入的,不就死锁了吗?所以可重入锁他的主要意义是防止死锁,我们的synchronized和Lock锁都是可重入的。
当用户抢购时,就会生成订单并保存到tb_voucher_order这张表中,而订单表如果使用数据库自增ID就存在一些问题:id的规律性太明显,受单表数据量的限制。场景分析:如果我们的id具有太明显的规则,用户或者说商业对手很容易猜测出来我们的一些敏感信息,比如商城在一天时间内,卖出了多少单,这明显不合适。场景分析二:随着我们商城规模越来越大,mysql的单表的容量不宜超过500W,数据量过大之后,我们要进行拆库拆表,但拆分表了之后,他们从逻辑上讲他们是同一张表,所以他们的id是不能一样的, 于是乎我们需要保证id的唯一性。
缓存(Cache),就是数据交换的缓冲区,俗称的缓存就是缓冲区内的数据,一般从数据库中获取,存储于本地代码。由于其被Static修饰,所以随着类的加载而被加载到内存之中,作为本地缓存,由于其又被final修饰,所以其引用(例3:map)和对象(例3:new HashMap())之间的关系是固定的,不能改变,因此不用担心赋值(=)导致缓存失效;
以当前热门的外卖点餐为业务基础,业务真实、实用、广泛。基于流行的Spring Boot、mybatis plus等技术框架进行开发。 第一天: 设计产品原型。 新建数据库,导入sql文件。
第二天: 1.登录操作 在EmployeeController类,编写登录代码。 完善登录操作。 3.debug进行调试。 4.编写退出操作代码。
第三天 新增员工需求分析 在employeeController类编写新增员工的代码。 在新增员工中,如果新增相同的员工信息,代码会报错,因此新建一个全局报错类来,捕获错误,在common包下新建一个GlobalExceptionHandler类。
公共字段自动填充 Mybatis Plus公共字段自动填充,也就是在插入或者更新的时候为指定字段赋予指定的值,使用它的好处就是可以统一对这些字段进行处理,避免了重复代码。 实现步骤: 1、在实体类的属性上加入@TableField注解,指定自动填充的策略 2、按照框架要求编写元数据对象处理器,在此类中统一为公共字段赋值,此类需要实现MetaObjectHandler接口
排错指南 1.排错思路1 看控制台,从上往下看输出 重点看 Caused by 后面出现的问题
文件上传与下载 文件上传也称为upload,是指将本地图片、视频、音频等文件上传到服务器上,可以供其他用户浏览或下载的过程。文件上传在项目中应用非常广泛,我们经常发微博、发微信朋友圈都用到了文件上传功能。 文件上传时,对页面的form表单有如下要求: method=“post” 采用post方式提交数据 enctype=“multipart/form-data” 采用multipart格式上传文件 type=“file” 使用input的file控件上传
新增菜品 1.实体类DishFlavor 菜品信息分页查询 菜品分页查询时前端页面和服务端的交互过程: 1、页面(backend/page/food/list.html)发送ajax请求,将分页查询参数(page、pageSize.name)提交到服务端,获取分页数据 2、页面发送请求,请求服务端进行图片下载,用于页面图片展示 开发菜品信息分页查询功能,其实就是在服务端编写代码去处理前端页面发送的这2次请求即可。
新增套餐 在开发业务功能前,先将需要用到的类和接口基本结构创建好: 实体类SetmealDish
1.手机验证码登录 在开发代码之前,需要梳理一下登录时前端页面和服务端的交互过程: 1、在登录页面(front/page/login.html)输入手机号,点击【获取验证码】按钮,页面发送ajax请求,在服务端调用短信服务API给指定手机号发送验证码短信 2、在登录页面输入验证码,点击【登录】按钮,发送ajax请求,在服务端处理登录请求 开发手机验证码登录功能,其实就是在服务端编写代码去处理前端页面发送的这2次请求即可。
1.Git概述 Git简介 Git是一个分布式版本控制工具,通常用来对软件开发过程中的源代码文件进行管理。通过Git仓库来存储和管理这些文件,Git仓库分为两种: 本地仓库:开发人员自己电脑上的Git 仓库 远程仓库:远程服务器上的Git仓库
1.菜品的停售合起售 在dishController中编写该方法 2.菜品的批量起售和停售 在dishController中编写该方法
1.Linux简介 2.Linux安装 安装方式介绍
数据库 数据库:DataBase ( DB),是存储和管理数据的仓库。 数据库管理系统:DataBase Management System (DBMS),操纵和管理数据库的大型软件。 SQL: Structured Query Language,操作关系型数据库的编程语言,定义了一套操作关系型数据库统一标准。
HTTP协议 1.HTTP-概述 2.HTTP-请求协议 HTTP请求数据格式
2.JWT令牌 全称:JSON Web Token (https:/ljwt.io/) 定义了一种简洁的、自包含的格式,用于在通信双方以json数据格式安全的传输信息。由于数字签名的存在,这些信息是可靠的。 组成: 第一部分:Header(头),记录令牌类型、签名算法等。例如: {“alg”:“HS256” ,“type” :“JWT”} 第二部分: Payload(有效载荷),携带一些自定义信息、默认信息等。例如:{“id”.“1” ,“username”:“Tom”} 第三部分: Signature(签名),防止Token被篡改、确保安全性。将header、 payload,并加入指定秘钥
简介 MyBatis-Plus(简称MP )是一个MyBatis的增强工具,在MyBatis的基础上只做增强不做改变,为简化开发、提高效率而生。
(一)快速上手SpringBoot SpringBoot入门程序开发 SpringBoot是由pivotal团队提供的全新框架,其设计目的是用来简化Spring应用的初始搭建以及开发过程。
(一)快速上手SpringBoot SpringBoot入门程序开发 SpringBoot是由pivotal团队提供的全新框架,其设计目的是用来简化Spring应用的初始搭建以及开发过程。