当前位置: 首页 > news >正文

大学做网站是什么专业/郑州网站推广技术

大学做网站是什么专业,郑州网站推广技术,网站做水印有没有影响吗,建设网站功能定位基于微信小程序的生活日用品交易平台 的设计与实现 ✌全网粉丝20W,csdn特邀作者、博客专家、CSDN新星计划导师、java领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ 🍅文末获取项目下载方式🍅 一…

基于微信小程序的生活日用品交易平台 的设计与实现

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

🍅文末获取项目下载方式🍅


一、项目背景介绍:

随着计算机互联网技术的不断进步,也推动了计算机技术的进步,推动了社会的智能化,使科技与人们的日常需求紧密的联系到了一起,诞生人们追求更加便利的生活模式。计算机技术是社会前进的主力军,由计算机推动的技术和工程发展对社会有着极大的贡献。尤其是在经济层面上,开发与计算机有关的软件,吸引社会人员去关注这些技术,去使用这些产品,提升生活质量与效率,是新兴的经济增长点,有利于社会经济持续健康的发展。
近些年来新型的支付技术——手机支付,它打破了用户传统支付对于时空的限制,革新了对于支付的方式,在有互联网的地域,就可以通过二维码的方式去进行支付,哪怕相隔千里,也能实现交易。打破了限制交易的阻隔,因此,以微信支付为支付手段的微信小程序商城逐渐崭露头角,伴随着微信支付体系的不断完善,为微信小程序商城奠定了基础。

二、项目技术简介:

  1. JAVA:Java是一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,因此Java语言具有功能强大和简单易用两个特征。Java语言作为静态面向对象编程语言的代表,极好地实现了面向对象理论,允许程序员以优雅的思维方式进行复杂的编程。
  2. Spring:Spring框架是一个开放源代码的J2EE应用程序框架,由Rod Johnson发起,是针对bean的生命周期进行管理的轻量级容器(lightweight container)。 Spring解决了开发者在J2EE开发中遇到的许多常见的问题,提供了功能强大IOC、AOP及Web MVC等功能。Spring可以单独应用于构筑应用程序,也可以和Struts、Webwork、Tapestry等众多Web框架组合使用,并且可以与 Swing等桌面应用程序AP组合。因此, Spring不仅仅能应用于J2EE应用程序之中,也可以应用于桌面应用程序以及小应用程序之中。Spring框架主要由七部分组成,分别是 Spring Core、 Spring AOP、 Spring ORM、 Spring DAO、Spring Context、 Spring Web和 Spring Web MVC。
  3. Mybatis:MyBatis本是apache的一个开源项目iBatis,2010年这个项目由apache software foundation迁移到了google code,并且改名为MyBatis。2013年11月迁移到Github。
    iBATIS一词来源于“internet”和“abatis”的组合,是一个基于Java的持久层框架。iBATIS提供的持久层框架包括SQL Maps和Data Access Objects(DAOs)。
  4. smart:微信小程序,小程序的一种,英文名Wechat Mini Program,是一种不需要下载安装即可使用的应用,它实现了应用“触手可及”的梦想,用户扫一扫或搜一下即可打开应用。
    全面开放申请后,主体类型为企业、政府、媒体、其他组织或个人的开发者,均可申请注册小程序。微信小程序、微信订阅号、微信服务号、微信企业号是并行的体系。
    微信小程序是一种不用下载就能使用的应用,也是一项创新,经过将近两年的发展,已经构造了新的微信小程序开发环境和开发者生态。微信小程序也是这么多年来中国IT行业里一个真正能够影响到普通程序员的创新成果,已经有超过150万的开发者加入到了微信小程序的开发,与我们一起共同发力推动微信小程序的发展,微信小程序应用数量超过了一百万,覆盖200多个细分的行业,日活用户达到两个亿,微信小程序还在许多城市实现了支持地铁、公交服务。微信小程序发展带来更多的就业机会,2017年小程序带动就业104万人,社会效应不断提升。

三、系统功能模块介绍:

功能模块图

四、数据库设计:

1:地址
(address)

字段名类型默认值列注释
idbigint(20)NULL主键
addtimetimestampNULL创建时间
useridbigint(20)NULL用户id
addressvarchar(200)NULL地址
namevarchar(200)NULL收货人
phonevarchar(200)NULL电话
isdefaultvarchar(200)NULL是否默认地址[是/否]

2:购物车表
(cart)

字段名类型默认值列注释
idbigint(20)NULL主键
addtimetimestampNULL创建时间
tablenamevarchar(200)NULL商品表名
useridbigint(20)NULL用户id
goodidbigint(20)NULL商品id
goodnamevarchar(200)NULL商品名称
picturevarchar(200)NULL图片
buynumberint(11)NULL购买数量
pricefloatNULL单价
discountpricefloatNULL会员价

3:客服聊天表
(chat)

字段名类型默认值列注释
idbigint(20)NULL主键
addtimetimestampNULL创建时间
useridbigint(20)NULL用户id
adminidbigint(20)NULL管理员id
asklongtextNULL提问
replylongtextNULL回复
isreplyint(11)NULL是否回复

4:配置文件
(config)

字段名类型默认值列注释
idbigint(20)NULL主键
namevarchar(100)NULL配置参数名称
valuevarchar(100)NULL配置参数值

5:公告信息评论表
(discussgonggaoxinxi)

字段名类型默认值列注释
idbigint(20)NULL主键
addtimetimestampNULL创建时间
refidbigint(20)NULL关联表id
useridbigint(20)NULL用户id
nicknamevarchar(200)NULL用户名
contentlongtextNULL评论内容
replylongtextNULL回复内容

6:商品信息评论表
(discussshangpinxinxi)

字段名类型默认值列注释
idbigint(20)NULL主键
addtimetimestampNULL创建时间
refidbigint(20)NULL关联表id
useridbigint(20)NULL用户id
nicknamevarchar(200)NULL用户名
contentlongtextNULL评论内容
replylongtextNULL回复内容

7:公告信息
(gonggaoxinxi)

字段名类型默认值列注释
idbigint(20)NULL主键
addtimetimestampNULL创建时间
gonggaobiaotivarchar(200)NULL公告标题
gonggaoleixingvarchar(200)NULL公告类型
tupianvarchar(200)NULL图片
neironglongtextNULL内容
faburiqidateNULL发布日期

8:会员
(huiyuan)

字段名类型默认值列注释
idbigint(20)NULL主键
addtimetimestampNULL创建时间
yonghumingvarchar(200)NULL用户名
mimavarchar(200)NULL密码
xingmingvarchar(200)NULL姓名
xingbievarchar(200)NULL性别
touxiangvarchar(200)NULL头像
shoujivarchar(200)NULL手机
moneyfloatNULL余额

9:新闻资讯
(news)

字段名类型默认值列注释
idbigint(20)NULL主键
addtimetimestampNULL创建时间
titlevarchar(200)NULL标题
introductionlongtextNULL简介
picturevarchar(200)NULL图片
contentlongtextNULL内容

10:订单
(orders)

字段名类型默认值列注释
idbigint(20)NULL主键
addtimetimestampNULL创建时间
orderidvarchar(200)NULL订单编号
tablenamevarchar(200)NULL商品表名
useridbigint(20)NULL用户id
goodidbigint(20)NULL商品id
goodnamevarchar(200)NULL商品名称
picturevarchar(200)NULL商品图片
buynumberint(11)NULL购买数量
pricefloatNULL价格/积分
discountpricefloatNULL折扣价格
totalfloatNULL总价格/总积分
discounttotalfloatNULL折扣总价格
typeint(11)NULL支付类型
statusvarchar(200)NULL状态
addressvarchar(200)NULL地址

11:商品分类
(shangpinfenlei)

字段名类型默认值列注释
idbigint(20)NULL主键
addtimetimestampNULL创建时间
fenleivarchar(200)NULL分类

12:商品信息
(shangpinxinxi)

字段名类型默认值列注释
idbigint(20)NULL主键
addtimetimestampNULL创建时间
shangpinmingchengvarchar(200)NULL商品名称
fenleivarchar(200)NULL分类
biaoqianvarchar(200)NULL标签
tupianvarchar(200)NULL图片
guigevarchar(200)NULL规格
pinpaivarchar(200)NULL品牌
xiangqinglongtextNULL详情
clicktimedatetimeNULL最近点击时间
clicknumint(11)NULL点击次数
pricefloatNULL价格

13:收藏表
(storeup)

字段名类型默认值列注释
idbigint(20)NULL主键
addtimetimestampNULL创建时间
useridbigint(20)NULL用户id
refidbigint(20)NULL收藏id
tablenamevarchar(200)NULL表名
namevarchar(200)NULL收藏名称
picturevarchar(200)NULL收藏图片

14:token表
(token)

字段名类型默认值列注释
idbigint(20)NULL主键
useridbigint(20)NULL用户id
usernamevarchar(100)NULL用户名
tablenamevarchar(100)NULL表名
rolevarchar(100)NULL角色
tokenvarchar(200)NULL密码
addtimetimestampNULL新增时间
expiratedtimetimestampNULL过期时间

15:用户表
(users)

字段名类型默认值列注释
idbigint(20)NULL主键
usernamevarchar(100)NULL用户名
passwordvarchar(100)NULL密码
rolevarchar(100)NULL角色
addtimetimestampNULL新增时间

五、功能模块:

  1. 管理员功能设计:在后台管理中,登录管理员账号后,进入管理员界面,管理员界面包括功能列表,功能标题,功能内容,功能列表有订单列表和商品列表。
    订单列表是通过/order/paginate接口从数据库获取信息,并把获取到的订单号,商品名称,商品总数,价格,订单状态,下单时间展示在界面上,管理员还可以对用户已付款的订单进行发货操作,点击发货操作后订单状态就会发生改变。
    商品列表是通过/product/all接口从数据库中获取信息,把获取到的商品名称,价格,库存量,商品图片展示在界面上,点击新增可以添加商品,点击编辑商品修改商品的信息,以及删除商品等操作。

    管理员功能设计

  2. 用户的登录模块实现:该小程序系统使用的是微信身份认证体系。小程序为每一个登录的用户生成一个code码,编写的getToken接口把获取到的code码发送给微信服务器,微信服务器接收到code码后会响应一个openid,接口获取到openid后存入数据库中,并且生成一个Token令牌发送给小程序客户端上,这个openid就是用户身份的唯一标识,当用户再次访问小程序的时候,就会携带令牌发送到接口,服务器效验令牌,当验证通过后,就可以直接登录小程序了。

    用户的登录模块实现

  3. 商品详情模块实现:点击商品可进入商品信息推荐界面,详情界面包括商品头图,可以选择商品数量,商品的金额。加入购物车操作

    商品详情模块实现

  4. 购物车模块实现:选中的商品会添加到购物车中,在购物车界面可以对商品的数量可进行修改操作

    购物车模块实现

  5. 订单模块实现:订单界面可获取用户的详细地址信息,显示加入到购物车中的商品,以及购买的商品价格,对用户订单进行付款操作。

    订单模块实现

六、代码示例:

管理员功能设计
@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<CartEntity> wrapper = new EntityWrapper<CartEntity>();if(map.get("remindstart")!=null) {wrapper.ge(columnName, map.get("remindstart"));}if(map.get("remindend")!=null) {wrapper.le(columnName, map.get("remindend"));}if(!request.getSession().getAttribute("role").toString().equals("管理员")) {wrapper.eq("userid", (Long)request.getSession().getAttribute("userId"));}int count = cartService.selectCount(wrapper);return R.ok().put("count", count);}
用户的登录模块实现
@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<OrdersEntity> wrapper = new EntityWrapper<OrdersEntity>();if(map.get("remindstart")!=null) {wrapper.ge(columnName, map.get("remindstart"));}if(map.get("remindend")!=null) {wrapper.le(columnName, map.get("remindend"));}if(!request.getSession().getAttribute("role").toString().equals("管理员")) {wrapper.eq("userid", (Long)request.getSession().getAttribute("userId"));}int count = ordersService.selectCount(wrapper);return R.ok().put("count", count);}
商品详情模块实现
	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<CartEntity> wrapper = new EntityWrapper<CartEntity>();if(map.get("remindstart")!=null) {wrapper.ge(columnName, map.get("remindstart"));}if(map.get("remindend")!=null) {wrapper.le(columnName, map.get("remindend"));}if(!request.getSession().getAttribute("role").toString().equals("管理员")) {wrapper.eq("userid", (Long)request.getSession().getAttribute("userId"));}int count = cartService.selectCount(wrapper);return R.ok().put("count", count);}
购物车模块实现
购物车相关业务逻辑
/*** 查询*/@RequestMapping("/query")public R query(CartEntity cart){EntityWrapper< CartEntity> ew = new EntityWrapper< CartEntity>();ew.allEq(MPUtil.allEQMapPre( cart, "cart")); CartView cartView =  cartService.selectView(ew);return R.ok("查询购物车表成功").put("data", cartView);}/*** 后端详情*/@RequestMapping("/info/{id}")public R info(@PathVariable("id") String id){CartEntity cart = cartService.selectById(id);return R.ok().put("data", cart);}/*** 前端详情*/@RequestMapping("/detail/{id}")public R detail(@PathVariable("id") String id){CartEntity cart = cartService.selectById(id);return R.ok().put("data", cart);}/*** 后端保存*/@RequestMapping("/save")public R save(@RequestBody CartEntity cart, HttpServletRequest request){cart.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());//ValidatorUtils.validateEntity(cart);cart.setUserid((Long)request.getSession().getAttribute("userId"));cartService.insert(cart);return R.ok();}/*** 前端保存*/@RequestMapping("/add")public R add(@RequestBody CartEntity cart, HttpServletRequest request){cart.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());//ValidatorUtils.validateEntity(cart);cartService.insert(cart);return R.ok();}
订单模块实现
/*** 查询*/@RequestMapping("/query")public R query(OrdersEntity orders){EntityWrapper< OrdersEntity> ew = new EntityWrapper< OrdersEntity>();ew.allEq(MPUtil.allEQMapPre( orders, "orders")); OrdersView ordersView =  ordersService.selectView(ew);return R.ok("查询订单成功").put("data", ordersView);}/*** 后端详情*/@RequestMapping("/info/{id}")public R info(@PathVariable("id") String id){OrdersEntity orders = ordersService.selectById(id);return R.ok().put("data", orders);}/*** 前端详情*/@RequestMapping("/detail/{id}")public R detail(@PathVariable("id") String id){OrdersEntity orders = ordersService.selectById(id);return R.ok().put("data", orders);}

七、论文参考:

bbc806c46cf6a4732b76db5f11fcc8b

八、项目总结:

通过对现在社会生活日用品微信小程序的需求分析,运用JavaScript、SQL数据库、PhpStorm技术,使用微信开发者工具,火狐浏览器进行测试。从而制作出一个基于微信小程序的生活日用品交易平台,主要实现这个微信小程序的购物功能,提供给用户一个在线交易的平台,用户可以在该小程序中进行购买操作、修改地址、查看物流信息的操作,该小程序操作简单,结构清晰,界面新颖,满足了用户与商家的基本需求。

九、源码获取:

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

链接点击直达:下载链接

相关文章:

基于微信小程序的生活日用品交易平台 的设计与实现

基于微信小程序的生活日用品交易平台 的设计与实现 ✌全网粉丝20W,csdn特邀作者、博客专家、CSDN新星计划导师、java领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ &#x1f345;文末获取项目下载方式&#x1f345; 一…...

15:高级篇 - CTK 事件与监听

作者: 一去、二三里 个人微信号: iwaleon 微信公众号: 高效程序员 生命周期层事件 在 Plugin 生命周期的不同状态相互转换时,CTK Plugin Framework 会发出各种不同的事件,以供事先注册好的事件监听器处理,这些事件被称为“生命周期层事件”。CTK Plugin Framework 支持的…...

SpringBoot Notes

文章目录1 SpringBootWeb快速入门1.1Spring官网1.2 Web分析2. HTTP协议2.1 HTTP介绍34 SpringBootWeb请求响应5 响应6 分层解耦6.1 三层架构6.1.1 三层架构介绍6.1.2 基于三层架构的程序执行流程&#xff1a;6.1.3 代码拆分6.2 分层解耦6.2.1 内聚、耦合6.2.2 解耦思路6.3 IOC&…...

CoreDNS

目录 文章目录目录本节实战前言1、环境变量2、DNS1.DNS 解析过程2.根域名服务器3.顶级域名服务器4.权威性域名服务器5.dig 域名3、CoreDNS1.CoreDNS 扩展配置&#xff08;1&#xff09;开开启日志服务&#xff08;2&#xff09;特定域名使用自定义 DNS 服务器&#xff08;3&…...

码农饭碗不保——ChatGPT正在取代Coder

码农饭碗不保——ChatGPT正在取代Coder 最近被OpenAI的ChatGPT刷屏了。我猜你已经读了很多关于ChatGPT的文章&#xff0c;不需要再介绍了。假如碰巧您还不太了解ChatGPT是什么&#xff0c;可以先看一下这篇文章&#xff0c;然后再回来继续。 与ChatGPT对话很有趣&#xff0c;…...

PAT (Advanced Level) Practice 1004 Counting Leaves

1004 Counting Leaves题目翻译代码分数 30 作者 CHEN, Yue 单位 浙江大学 A family hierarchy is usually presented by a pedigree tree. Your job is to count those family members who have no child. Input Specification: Each input file contains one test case. Eac…...

基于Redis实现的分布式锁

基于Redis实现的分布式锁什么是分布式锁分布式锁主流的实现方案Redis分布式锁Redis分布式锁的Java代码体现优化一&#xff1a;使用UUID防止误删除优化二&#xff1a;LUA保证删除原子性什么是分布式锁 单体单机部署中可以为一个操作加上锁&#xff0c;这样其他操作就会等待锁释…...

2023年,还找算法岗工作吗?

点击下方卡片&#xff0c;关注“CVer”公众号AI/CV重磅干货&#xff0c;第一时间送达2023年春招&#xff08;补招&#xff09;已经大规模启动了&#xff01;距离2023年暑期实习不到2个月&#xff01;距离2024届校招提前批不到4个月&#xff01;距离2024届秋招正式批不到6个月&a…...

正点原子ARM裸机开发篇

裸机就是手动的操作硬件来实现驱动设备&#xff0c;后面会有驱动框架不需要这么麻烦 第八章 汇编 LED 灯实验 核心过程 通过汇编语言来控制硬件&#xff08;驱动程序&#xff09; 代码流程 1、使能 GPIO1 时钟 GPIO1 的时钟由 CCM_CCGR1 的 bit27 和 bit26 这两个位控制&…...

20222023华为OD机试 - 压缩报文还原(JS)

压缩报文还原 题目 为了提升数据传输的效率,会对传输的报文进行压缩处理。 输入一个压缩后的报文,请返回它解压后的原始报文。 压缩规则:n[str],表示方括号内部的 str 正好重复 n 次。 注意 n 为正整数(0 < n <= 100),str只包含小写英文字母,不考虑异常情况。 …...

SheetJS的部分操作

成文时间&#xff1a;2023年2月18日 使用版本&#xff1a;"xlsx": "^0.18.5" 碎碎念&#xff1a; 有错请指正。 这个库自说自话升级到0.19。旧版的文档我记得当时是直接写在github的README上。 我不太会使用github&#xff0c;现在我不知道去哪里可以找到…...

pytest总结

这里写目录标题一、pytest的命名规则二、界面化配置符合命名规则的方法前面会有运行标记三、pytest的用例结构三部分组成四、pytest的用例断言断言写法&#xff1a;五、pytest测试框架结构六、pytest参数化用例1、pytest参数化实现方式2、单参数&#xff1a;每一条测试数据都会…...

CNI 网络分析(九)Calico IPIP

文章目录环境流量分析Pod 间Node 到 PodPod 到 serviceNode 到 serviceNetworkPolicy理清和观测网络流量环境 可以看到&#xff0c;在宿主机上有到每个 pod IP 的路由指向 veth 设备 到对端节点网段的路由 指向 tunl0 下一跳 ens10 的 ip 有到本节点网段 第一个 ip 即 tunl0 的…...

分布式任务调度(XXL-JOB)

什么是分布式任务调度&#xff1f; 任务调度顾名思义&#xff0c;就是对任务的调度&#xff0c;它是指系统为了完成特定业务&#xff0c;基于给定时间点&#xff0c;给定时间间隔或者给定执行次数自动执行任务。通常任务调度的程序是集成在应用中的&#xff0c;比如&#xff1a…...

Django框架之模型视图--Session

Session 1 启用Session Django项目默认启用Session。 可以在settings.py文件中查看&#xff0c;如图所示 如需禁用session&#xff0c;将上图中的session中间件注释掉即可。 2 存储方式 在settings.py文件中&#xff0c;可以设置session数据的存储方式&#xff0c;可以保存…...

二极管的“几种”应用

不知大家平时有没有留意&#xff0c;二极管的应用范围是非常广的&#xff0c;下面我们来看看我想到几种应用&#xff0c;也可以加深对电路设计的认识&#xff1a; A&#xff0c;特性应用&#xff1a; 由于二极管的种类非常之多&#xff0c;这里这个大类简单罗列下&#xff1a…...

github上传本地文件详细过程

repository 也就是俗称的仓库 声明&#xff1a;后续操作基于win10系统 前提&#xff1a;有一个github账号、电脑安装了git(官方安装地址) 目的&#xff1a; 把图中pdf文件上传到github上的个人仓库中 效果&#xff1a; 温馨提示&#xff1a; git中复制: ctrl insert&#xf…...

常用聚类算法分析

1. 什么是聚类 1.1. 聚类的定义 聚类(Clustering)是按照某个特定标准(如距离)把一个数据集分割成不同的类或簇&#xff0c;使得同一个簇内的数据对象的相似性尽可能大&#xff0c;同时不在同一个簇中的数据对象的差异性也尽可能地大。也即聚类后同一类的数据尽可能聚集到一起…...

OSG三维渲染引擎编程学习之五十八:“第五章:OSG场景渲染” 之 “5.16 简单光源”

目录 第五章 OSG场景渲染 5.16 简单光源 5.16.1 场景中使用光源 5.16.2 简单光源示例 第五章 OSG场景渲染 OSG存在场景树和渲染树,“场景数”的构建在第三章“OSG场景组...

80211无线网络架构

无线网络架构物理组件BSS&#xff08;Basic Service Set&#xff09;基本服务集BSSID&#xff08;BSS Identification&#xff09;ssid&#xff08;Service Set Identification&#xff09;ESS&#xff08;Extended Service Set&#xff09;扩展服务集物理组件 无线网络包含四…...

基于springboot+vue的便利店库存管理系统

基于springbootvue的便利店库存管理系统 ✌全网粉丝20W,csdn特邀作者、博客专家、CSDN新星计划导师、java领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ &#x1f345;文末获取项目下载方式&#x1f345; 一、项目背景…...

3|物联网控制|计算机控制-刘川来胡乃平版|第1章:绪论|青岛科技大学课堂笔记|U1 ppt

目录绪论&#xff08;2学时&#xff09;常用仪表设备&#xff08;3学时&#xff09;计算机总线技术&#xff08;4学时&#xff09;过程通道与人机接口&#xff08;6学时&#xff09;数据处理与控制策略&#xff08;6学时&#xff09;网络与通讯技术&#xff08;3学时&#xff0…...

js打印本地pdf(使用HttpPrinter打印插件)

js打印本地pdf&#xff08;使用HttpPrinter打印插件&#xff09;第一步&#xff1a;启动HttpPrinter打印插件第二步&#xff1a;用浏览器打开示例文件\调用示例\websocket协议示例\html\打印pdf.html输入pdf地址 点击 “下载并打印pdf文件”按钮&#xff0c;就可以静默打印了。…...

华为OD机试 - 双十一(Python) | 机试题算法思路 【2023】

最近更新的博客 【新解法】华为OD机试 - 关联子串 | 备考思路,刷题要点,答疑,od Base 提供【新解法】华为OD机试 - 停车场最大距离 | 备考思路,刷题要点,答疑,od Base 提供【新解法】华为OD机试 - 任务调度 | 备考思路,刷题要点,答疑,od Base 提供【新解法】华为OD机试…...

2020年UML 秋季期末测试题

1.UML的全称是&#xff08;B &#xff09;。A.Unified Making LanguageB.Unified Modeling LanguageC.Unified Meodem languageD.Unify Modeling Language2.UML主要应用于&#xff08; C&#xff09;。A.基于螺旋模型的结构化开发方法B.基于数据的数据流开发方法C.基于对象的面…...

SpringCloud - Ribbon负载均衡

目录 负载均衡流程 负载均衡策略 Ribbon加载策略 负载均衡流程 Ribbon将http://userservice/user/1请求拦截下来&#xff0c;帮忙找到真实地址http://localhost:8081LoadBalancerInterceptor类对RestTemplate的请求进行拦截&#xff0c;然后从Eureka根据服务id获取服务列表&…...

Spring Boot + Redis 实现分布式锁

一、业务背景有些业务请求&#xff0c;属于耗时操作&#xff0c;需要加锁&#xff0c;防止后续的并发操作&#xff0c;同时对数据库的数据进行操作&#xff0c;需要避免对之前的业务造成影响。二、分析流程使用 Redis 作为分布式锁&#xff0c;将锁的状态放到 Redis 统一维护&a…...

CAD二次开发 插件初始化接口IExtensionApplication

前言&#xff1a;在实际项目开发中&#xff0c;我们总会遇到一些问题。比如说在CAD打开之前&#xff0c;修改注册表的内容&#xff0c;或者解决CAD在没有完全加载想要的dll情况下&#xff0c;功能运行报错的bug。因此&#xff0c;下面和大家介绍一下IExtensionApplication接口 …...

kafka-11-kafka的监控工具和常用配置参数

kafka官方文档 参考Kafka三款监控工具比较 1 查看kafka的版本 进入kafka所在目录&#xff0c;通过查看libs目录下的jar包。 2.11是scala的版本&#xff0c;2.0.0是kafka的版本。 测试环境 #systemctl start zookeeper #systemctl start kafkka 2 kafka的常用配置 Kafka使用…...

前端PWA渐进式加载技术

1.什么是PWA&#xff1f; 渐进式网络应用&#xff08;PWA&#xff09;是谷歌在2015年底提出的概念。基本上算是web应用程序&#xff0c;但在外观和感觉上与原生app类似。支持PWA的网站可以提供脱机工作、推送通知和设备硬件访问等功能。 2.PWA有那些优点&#xff1f; 更小更…...