![](https://img-blog.csdnimg.cn/20190918140158853.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
苍穹外卖项目
文章平均质量分 83
本专栏主要记录苍穹外卖项目制作的过程
我要200
这个作者很懒,什么都没留下…
展开
-
Apache POI及导出运营数据
Apache POI 是一个处理Miscrosoft Office各种文件格式的开源项目。简单来说就是,我们可以使用 POI 在 Java 程序中对Miscrosoft Office各种文件进行读写操作。原创 2024-05-12 13:54:46 · 247 阅读 · 0 评论 -
Apache ECharts
*** 动态查询营业额* @return*/<where></where></select>原创 2024-05-11 19:34:31 · 775 阅读 · 0 评论 -
WebSocket 来单提醒和客户催单功能
WebSocket 是基于 TCP 的一种新的。它实现了浏览器与服务器通信——浏览器和服务器只需要完成一次握手,两者之间就可以创建持久性的连接, 并进行双向数据传输。原创 2024-05-09 17:10:49 · 1187 阅读 · 1 评论 -
Spring Task及订单状态定时处理
Spring Task 是Spring框架提供的任务调度工具,可以按照约定的时间某个代码逻辑。原创 2024-05-08 21:30:45 · 323 阅读 · 0 评论 -
用户下单操作
用户下单业务说明: 在电商系统中,用户是通过下单的方式通知商家,用户已经购买了商品,需要商家进行备货和发货。原创 2024-05-08 20:01:40 · 925 阅读 · 0 评论 -
购物车操作
我们仔细观察这张图,当我们点开购物车的时候,我们需要知道这个套餐或者这个菜品的名称和图片,我们可以在加入数据的时候,将这些数据加入,这样就可以避免我们既要查找购物车这张表,然后又要取数据库中查询对应的名称和图片,提高效率,不过这也是一种空间换时间的做法,所以,可以总结,碰到用户或者是员工这种带有身份信息的情况的时候,可以采用LocalThread的方法来获取id。结合之前写过的一些crud的操作,我发现我在新增员工的操作中也用了类似的方法。这个道理很简单,我们不能把我们的商品添加到别人的购物车里去,原创 2024-05-07 16:42:35 · 292 阅读 · 1 评论 -
缓存菜品操作
用户端小程序展示的菜品数据都是通过查询数据库获得,如果用户端访问量比较大,数据库访问压力随之增大。原创 2024-05-06 16:43:07 · 1016 阅读 · 2 评论 -
微信小程序
Api(tags = "用户模块接口")@Slf4j@Autowired@Autowired/*** 微信用户登录* @return*/@ApiOperation("用户登录接口")log.info("用户端登录:{}",userLoginDTO.getCode());//获取登录的用户//生成jwt令牌//封装这个UserLoginVO对象.build();原创 2024-05-02 22:06:09 · 715 阅读 · 0 评论 -
HttpClient
HttpClient 是Apache Jakarta Common 下的子项目,可以用来提供高效的、最新的、功能丰富的支持 HTTP 协议的工具包,并且它支持 HTTP 协议最新的版本和建议。原创 2024-05-02 15:01:21 · 403 阅读 · 0 评论 -
菜品的增删改查操作
第三方Bean:如果要管理的bean对象来自于第三方(不是自定义的),是无法用 @Component 及衍生注解声明bean的,就需要用到 @Bean注解,这就衍生出了第三方Bean。比如你从pom文件中引入的对象,你不能直接在这个对象上面加@Component,让IOC容器管理这个对象。原创 2024-04-30 17:09:38 · 611 阅读 · 0 评论 -
公共字段自动填充
因为这里的功能是在update和insert两个操作上,填充公共的字段,所以,可以考虑使用before这种通知类型。这一个填充公共字段虽然不是业务里的操作,不过涉及到的知识点很多:特别是SpringAOP和Java的反射。原创 2024-04-24 17:10:25 · 994 阅读 · 0 评论 -
员工的增删改查操作
例如,你可以将一个复杂的对象或者一个集合存储在ThreadLocal中,每个线程都可以独立地访问和修改自己的副本,而不会影响其他线程的副本。每个ThreadLocal对象都可以维护一个独立的变量副本,每个线程都可以访问和修改自己的这个副本,而不会影响其他线程的变量副本。校验这个JWT令牌的时候,我们可以设置一下这个ThreadLocal的值,就是这个变量副本,然后我们在save()方法中再取出来就好了。这个是GPT的原话,虽然他说每个请求不一定对应一个线程,不过我们在这个项目中,可以先这么理解。原创 2024-04-22 16:13:51 · 641 阅读 · 1 评论 -
Swagger和Knife4j 接口文档
使用Swagger你只需要按照它的规范去定义接口及接口相关的信息,就可以做到生成接口文档,以及在线接口调试页面。官网:https://swagger.io/原创 2024-04-21 16:13:35 · 421 阅读 · 1 评论 -
Nginx
这个负载均衡和上面反向代理差不多,唯一的不同点就是这个proxy_pass后面的webservers,根据负载均衡的定义,我们很好理解,nginx就是将这个请求分发给了webservers里面的多个后端服务器。nginx有一个缓存的功能,只要我们访问的是同样的接口地址,如果我们还想访问,那这个时候我们就无需再去访问后端,我们可以直接把结果返回给前端,提高速度。的web服务器,处理高并发能力是十分强大的,能经受高负 载的考验,有报告表明能支持高达 50,000 个并发连接数。要想访问,只能通过nginx。原创 2024-04-21 14:11:26 · 501 阅读 · 1 评论 -
IDEA使用Git(创建本地和创建远程仓库)
这一步倒挺坑的,我们的文件路径是git包中的cmd下的git.exe,一开始搞错了,一直提示找不到版本。然后还有一个,我们可以在window自带的凭证管理器中设置凭证,登录的时候,直接获取凭证就好。创建完之后,因为我们是第一次和远程仓库传输数据,所以我们需要关联一下。2:在idea中创建本地git仓库。这里我已经关联好了,然后推送。下载完直接傻瓜式安装即可。原创 2024-04-21 10:56:56 · 212 阅读 · 1 评论