![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
ζ项目实战
张伟光
好玩的不是技术,好玩的是用技术玩转业务
展开
-
小菜鸟学习三层
【三层的学习给我能带来什么?】 当我学习三层之前,眼中的三层是前端界面是一层,然后里面的逻辑结构是一层,然后后面访问数据是一层,和原先自己做的机房对比,不再是敲vb时用到什么功能,敲什么功能,一个功能出了问题,然后很多受牵连,这就是我所提前了解的,之后就开始了学习三层,我很好奇。。。【三层真的是什么?】其实真的三层更好玩了,就相当于饭店这个模型。服务...原创 2017-02-23 11:01:18 · 505 阅读 · 43 评论 -
Java秒杀实战(十一) RabbitMQ四种常见应用模式
先把数据放到路由上。【Direct 模式】添加配置类package com.wings.seckill.config; import org.springframework.amqp.core.Queue;import org.springframework.context.annotation.Bean;import org.springframework.context....原创 2019-06-02 11:29:26 · 661 阅读 · 1 评论 -
Java秒杀实战(十) SpringBoot框架集成RabbitMQ
【安装RabbitMQ及其相关依赖】下载erlanghttps://www.erlang.org/downloads下载rabbitMQhttp://www.rabbitmq.com/download.html安装相关依赖yum install ncurses-develtar xf otp_src_21.0.tar.gzcd otp_src_21.0...原创 2019-06-02 10:29:23 · 357 阅读 · 1 评论 -
Java秒杀实战(九)页面优化技术(Redis缓存页面,url,对象)
【页面缓存】把页面的数据放到reids里面,然后从redis取出后直接返回html @RequestMapping(value = "/to_list", produces = "text/html") @ResponseBody public String toList(HttpServletRequest request, HttpServletResponse response...原创 2019-06-02 09:43:15 · 453 阅读 · 2 评论 -
Java秒杀实战(五) SpringBoot框架集成Redis
【Linux系统安装Redis】官网下载redis包,上传到linux服务器上。1.解压并移动目录tar -zxvf redis-4.0.10.tar.gz mv redis-4.0.10 /usr/local/redis cd /usr/local/redis/2.译并把编译后的可执行文件添加到启动目录make -j 4 make ins...原创 2019-05-29 21:44:23 · 274 阅读 · 2 评论 -
Java秒杀实战(四) SpringBoot框架集成Mybatis
如果linux系统没有安装mysql的话,推荐一篇博客来进行安装mysqlhttps://www.cnblogs.com/duanrantao/p/8988116.html1.maven添加mybatis依赖,druid依赖 <dependency> <groupId>org.mybatis.spring.boot</groupId> ...原创 2019-05-29 19:19:05 · 225 阅读 · 3 评论 -
Java秒杀实战(三) 系统结果集返回数据封装
Controller在开发过程,通常主要有两个作用:1.返回json结果;2.返回页面路径。在现在前后端分离的项目中,如果你是用的vue或者angular等,控制器只用返回json信息就行了。返回的信息我们定义一个数据结构 public class Result<T> { private int code; private String msg; private T d...原创 2019-05-29 17:16:16 · 485 阅读 · 2 评论 -
Java秒杀实战(二)IDEA实现SpringBoot框架搭建
【为什么出现SpringBoot?】 SpringBoot主要的目的是实现零配置,自动导入依赖,只需要自己配置数据库连接即可,很优秀的让框架搭建几乎实现了一键操作。【操作步骤】1.创建项目2.3.然后group这些可以自己命名,也可以用系统的,记得 Type选择Maven Project,写好之后点击 "Next"4.选中 左边 "Web"...原创 2019-05-29 16:50:21 · 366 阅读 · 2 评论 -
Java秒杀实战(一)项目环境介绍
【背景】 秒杀项目主要解决什么问题呢,大家应该很好奇,又例如双11晚上,大家都在等着秒杀商品,又有谁知道阿里内部对自己的淘宝做了多少步骤的处理,才能完成如此高并发的操作,来保证每个人畅通的完成项目的秒杀?有可能你们是同时进行的秒杀,为什么别人秒杀到了商品而你没有秒杀上?或者说你在排队等着秒杀的过程中,软件内部正在做什么处理呢?【框架技术】整个项目是基于spring...原创 2019-05-26 19:56:51 · 984 阅读 · 2 评论 -
【牛腩】-总结
牛腩敲完了,学习到的东西好多,思想上,技术上,收获都很大,先从技术方面谈谈吧。【技术】 1.看到了正规开发的全貌,借鉴到了机房合作的项目中,发现这样做从开始的需求分析,文档编写,到后面的代码编写,系统的发布,走流程的感觉,让你不是像原先那样乱撞了。2.C/S和B/S的开发都是需要后台的开发,后台的开发流程是一样的,按照牛老师说的,其实数据库设计再加上D层的s...原创 2017-08-16 08:53:30 · 349 阅读 · 27 评论 -
【牛腩】-css核心内容
【行内元素,块级元素】->HTML两种标签 块级元素 行内元素 位置 独占一行,占满父元素宽度 不会独占一行,相邻行内元素可以排在同一行 宽,高设置 可以设置,即使设置了也是独占一行 无效 ...原创 2017-08-13 07:40:32 · 284 阅读 · 23 评论 -
【牛腩】——sqlhelper层的优化旅程
为什么要用到sqlhelper类? sql+helper,应该就是数据库助手的意思吧,这里面的sql指的是数据库链接sqlconnection,sqlcommand,sqldatareader等等,你如果不引入sqlhelper你需要每次取数据库的数据的时候都要写一遍,如果把它封装了,你就只需要往里面出入一些参数入数据库链接字符串,sql参数等,就能访问数据库了,这相当于调数据库的...原创 2017-08-01 20:29:13 · 411 阅读 · 23 评论 -
机房重构为什么需要报表?
【为什么报表?】不知道各位有没有想过这个问题,dategridview控件也能实现数据库里面的信息,也能导出Excel表格,那为什么还要报表呢,百度百科上面这样解释的,报表 = 多样的格式 + 动态的数据,这就告诉了我们报表这个控件可以实现保存,翻页,等小功能,最重要的是可以自己设计界面需求,不用我们把数据导出来之后,或者查询之后再进行更改。还有一项必杀技,就是报表控件还自带打印的功能,这...原创 2017-05-24 15:44:23 · 638 阅读 · 44 评论 -
机房收费系统之代码库
机房收费系统敲完了,真的发现收获很多,了解了很多代码的功能,也发现了一些缩短代码的方法,1.select语句可以这样写:<span style="font-size:18px;"> selectcardno,studentno,date,time ,ischeck from student_info where</span>...原创 2016-08-21 11:02:09 · 844 阅读 · 19 评论 -
机房收费系统之系统分析
在经过数天看数据库的视频的煎熬后,终于可以开始机房收费系统了,虽然有十分迫切想要开始的心情,但开始之前又想起了大师傅曾经说过每开一个项目要进行总体的分析,在看了两天这个系统之后有了一些浅显的认识。机房收费系统三大问题:权限问题系统窗体问题数据库数据表问题这是自己还没开始做之前的一些简单的分析,相信会有很多的错误,等自己把机房敲完之...原创 2016-07-16 17:11:21 · 604 阅读 · 19 评论 -
Java秒杀实战(八)JMeter压测
下载链接http://jmeter.apache.org/download_jmeter.cgi添加线程组设置10个线程同时并发,下面的0表示多长时间启动起来这10个线程(0表示10个线程同时启动起来,1表示1秒钟10个线程先后启动起来),最下面的1表示循环多少次。设置http请求默认值添加待压测的http请求添加聚合报告监听器启动测试,下面是...原创 2019-05-31 21:42:02 · 429 阅读 · 1 评论 -
Java秒杀实战(七)分布式session
1.首先通过uuid生成唯一标识的token信息String token = UUIDUtil.uuid();2.然后把token信息连带着user用户信息放到缓存服务器中redisService.set(MiaoshaUserKey.token, token, user);3.再new出来一个cookie对象,往里面填充值,设置信息。Cookie cookie = ne...原创 2019-05-30 21:33:04 · 346 阅读 · 2 评论 -
Java秒杀实战(六)系统异常拦截
运行的过程中,已知的异常信息,通过定义一个GlobleException类即全局异常类,再按一定的格式来抛出异常。package com.imooc.miaosha.exception;import com.imooc.miaosha.result.CodeMsg;/** * Created by 张伟光 on 2019/5/16. */public class GlobleE...原创 2019-05-30 20:47:13 · 283 阅读 · 1 评论 -
Java秒杀实战(十二) 优化秒杀业务流程
优化后的秒杀业务流程【总结】 秒杀实现的优化思路,能缓存就去redis缓存起来,然后放到队列中,让队列去处理。原创 2019-06-02 15:32:52 · 1055 阅读 · 1 评论