传智品优购
由于品优购项目内容很多,这里只简单的介绍知识内容和做项目过程中遇到的问题,以及解决方案。品优购中涉及的具体技术,我在其他地方有详细的整理。限于文章篇幅不能全部写出。
目录
一、品牌管理
二、规格及模板管理
三、安全框架与商家入驻审核
四、商品录入
五、广告管理与缓存解决方案
六、搜索解决方案-Solr
七、网页静态化解决方案-Freemarker
八、消息中间件解决方案JMS
九、SpringBoot框架与短信解决方案
十、单点登录解决方案-CAS
十一、购物车解决方案
十二、跨域解决方案与提交订单
十三、微信扫码支付
十四、秒杀解决方案
十五、品优购系统业务分析
十六、品优购总结
一、品牌管理
1.1 概要
学习angularJs,双向数据绑定,MVC模式,依赖注入,模块化
1.2 代码注意事项
正确写法:ng-click(search(paginationConf.currentPage,paginationConf.itemsPerPage)),指令中不能出现$scope域对象
二、规格及模板管理
2.1 概要
学习MVC分层思想,将angularJs的代码分别按controller和service抽取。
了解angularJs继承。
代码生成器
2.2 代码注意事项
单词第一次一定要写对。(ng-app写成了np-app,浏览器也不报错)
string = string +xxx ; 可以写成 string += xxx;
json字符串转json格式:var json = JSON.parse(jsonString);
2.3 遇到的问题
2.3.1 Angular $injector:unpr Unknown provider 问题原因:依赖没有定义。解决方案: .html文件中引入service.js依赖,<script src="../js/service/brandService.js"></script>
2.3.2 query function not defined for Select2 undefined error,<input select2 select2-model="entity.brandIds" config="brandList" multiple placeholder="关联品牌(多选)" class="form-control"/>
解决方案: 给brandList在controller.js中初始化,$scope.brandList={data:[]}
2.3.3 ng-init="findBrandList();findSpecificationList()" 解决方案 :用分号
三、安全框架与商家入驻审核
3.1 概要
遇到问题先请缓存测试一下,在判断是前台问题还是后台问题。
Spring_security 入门
angular指令ng-if
BCrypt加密算法
3.2 代码注意事项
有的时候是单词拼写错误导致的bug,直接删掉重写就行了,比找快。
前端表单提交:定义form表单:<form id="loginform" action="/login" method="post">表单里添加a标签提交:<a οnclick="document:loginform.submit()">登录</a>
四、商品录入
4.1 概要
4.1.1电商概念SPU与SKU
SPU = Standard Product Unit(标准产品单位)。iphone7就是一个SPU,与商家,与颜色、款式、套餐都无关。
SKU=stock keeping unit(库存量单位)。纺织品中一个SKU通常表示:规格、颜色、款式。
4.1.2富文本编辑器介绍。常用的富文本编辑器:
KindEditor http://kindeditor.net/
UEditor http://ueditor.baidu.com/website/
CKEditor http://ckeditor.com/
4.1.3 分布式文件服务器FastDFS
FastDFS 架构包括 Tracker server 和 Storage server。客户端请求 Tracker server 进行文件上传、下载,通过 Tracker server 调度最终由 Storage server 完成文件上传和下载。
Tracker server作用是负载均衡和调度,通过Tracker server在文件上传时可以根据一些策略找到Storage server提供文件上传服务。可以将tracker称为追踪服务器或调度服务器。
Storage server 作用是文件存储,客户端上传的文件最终存储在 Storage 服务器上,Storageserver 没有实现自己的文件系统而是利用操作系统 的文件系统来管理文件。可以将storage称为存储服务器。
4.1.4: angular的watch指令,angular的深度监控
4.1.5:angular的ng-options指令 slect标签的值的显示
4.1.6: angular的ng-true-value=””,ng-false-value=””的使用
4.1.7: js的深度循环嵌套。
4.1.8: angular的ng-checked=”fun(...)”的使用
4.2 代码注意事项
4.2.1加载properties文件里的值(文件需要加载) @Value("${FILE_SERVER_URL}")
4.2.2 js改了代码最好清一下浏览器缓存。
4.2.3 js:
JSON.parse();//将字符串转换成js对象
Java :JSPON.parse(); //将将字符串转换成js对象
JSON.parseObject() //可以将字符串转换成多个对象Map,List<Map>等
JSON.parseArray()
4.2.4 js深度克隆:var newRow = JSON.parse(JSON.stringify(oldRow)),先将对象序列化,在转换成js对象即完成深克隆。newRow 与oldRow没有关系
4.2.5:深度克隆,js循环(三层循环就能完成业务需求)
实现思路:实现思路:
先对选中的checkbox进行数据封装 : var x=[{name:”屏幕尺寸”,value=”4.0,4.5”},...,{}]
每次点击规格的checkbox时,下面的步骤依次进行。
1我们先定义一个初始的不带规格名称的集合A,只有一条记录。
2先循环此集合A
3创建一个新的集合 var newList=[]
4在循环集合x[j],
5用一个变量保存A[i]的值 var oldValue=A[i]
6在循环x的value值,
7对原来的数据oldValue进行深度克隆给newValue,在对newValue添加新的规格属性spec:{”屏幕尺寸”:”4.0”,...}
8最后将newValue添加到新的集合中
3-8步可以抽取成一个方法。
4.2.6:简述商品录入与修改
五、广告管理与缓存解决方案
5.1 概要
SpringDataRedis入门
连接池自动管理,提供了一个高度封装的“RedisTemplate”类
针对jedis客户端中大量api进行了归类封装,将同一类型操作封装为operation接口
5.2 代码注意事项
三元运算符 <li class="{{$index==0?'active':''}}" ng-repeat=”...”></li>
六、搜索解决方案-Solr
6.1 概要
Solr一些概念:中文分词器(*),配置域(数据库的字段),复制域,动态域。
SpringDataSolr:为了方便Solr的开发所研制的一个框架,其底层是对SolrJ(官方API)的封装。
@Field : 实体与索引字段的绑定
高亮显示 HighlightQuery HighlightOptions
分组显示 GroupOptions
过滤查询 FilterQuery
排序 new Sort(Sort.Direction.ASC, "item_"+sortField);
6.2 代码注意事项
6.2.1:字符串去空格:keywords.replace(" ","")
6.2.2:indexOf() 方法可返回某个指定的字符串值在字符串中首次出现的位置aaa.indexOf(bbb)>=0
6.2.3 Long[] --> List :Arrays.asList(goodsIds)
6.2.4:查找接口的实现类:IDEA风格ctrl+alt+B
七、网页静态化解决方案-Freemarker
7.1 概要
7.1.1 网页静态化技术和缓存技术的共同点都是为了减轻数据库的访问压力,但是具体的应用场景不同,缓存比较适合小规模的数据,而网页静态化比较适合大规模且相对变化不太频繁的数据。
7.1.2 模板文件中四种元素
1、文本,直接输出的部分
2、注释,即<#--...-->格式不会输出
3、插值(Interpolation):即${..}部分,将使用数据模型中的部分替代输出
4、FTL指令:FreeMarker指令,和HTML标记类似,名字前加#予以区分,不会输出。
asign 指令:<#asign ...> 定义一个变量
include指令:<#include "xxx.ftl">
<#if success=true><#else></#if>
<#list alist as a></#list>索引,使用循环变量+_index就可以得到。
- 内建函数
集合总共多少元素:${goodsList?size}
JSON转为对象格式:<#assign data=test?eval />
日期:${myDate?date}${myDate?time}${myDate?datetime}
日期格式化: ${today?string("yyyy年MM月")}
数字转字符串:${number?c}
判断变量是否存在 :<#if aaa??>
缺失时变量默认值”!”:${bbb!’此变量默认值’}
6 逻辑运算符 && || !
7 比较运算符: > < = >= <= != (=和!=可以用于字符串,数值和日期来比较是否相等,但=和!=两边必须是相同类型的值)
7.2 代码注意事项
7.2.1 js循环对象,得到的是key,for(var key in map)
7.3 遇到的问题
7.3.1 com.alibaba.dubbo.rpc.RpcException(找不到服务),问题原因:impl类的@Service注解没加。
7.3.2 freemarker里插值作为方法参数时 :"${item.title!''}",需要用””
7.3.3 angular添加对象属性:$scope.XXX[name]=value;
7.3.4 遇到复杂的逻辑先写出思路,在开始写代码
八、消息中间件解决方案JMS
8.1 概要
8.1.1 消息中间件利用高效可靠的消息传递机制进行平台无关的数据交流,并基于数据通信来进行分布式系统的集成。通过提供消息传递和消息排队模型,它可以在分布式环境下扩展进程间的通信。
8.1.2 常见的消息中间件产品:activeMQ,RabbitMQ,ZeroMQ,Kafka
8.1.3 JMS(Java Messaging Service)是Java平台上有关面向消息中间件的技术规范,它便于消息系统中的Java应用程序进行消息交换,并且通过提供标准的产生、发送、接收消息的接口简化企业应用的开发。
8.1.4: JMS 定义了五种不同的消息正文格式: TextMessage--一个字符串对象,MapMessage--一套名称-值对,ObjectMessage--一个序列化的 Java 对象, BytesMessage--一个字节的数据流,StreamMessage -- Java 原始值的数据流
8.1.5:消息中间件消息传递类型:
1: 点对点
2: 发布/订阅
8.1.6:官方网站下载:http://activemq.apache.org/
8.2 遇到的问题
8.2.1 spring整合JMS(与品优购无关)消费者一直在编译中,问题现象:运行完消费者,电脑就不能运行生产者了,发布订阅无法测试, 问题原因:自己电脑idea的问题,无法解决。
8.3 代码注意事项
8.3.1 消息类型的转化:
List->String final String jsonString = JSON.toJSONString(itemList);
发送消息: session.createTextMessage(jsonString);
接收消息: TextMessage msg = (TextMessage)message;
String text = msg.getText();
List<xxx> list = JSON.parseArray(text,XXX.class);
Long[]->Object Long[] ids = ...;
session.createObjectMessage(ids);
ObjectMessage msg = (ObjectMessage)message;
Long[] ids = (Long[])Msg.getObject();
Long[]->List: List list = Arrays.asList(ids);
Long ->String Long id=...;
session.createTextMessage(id+””);
TextMessage msg = (TextMessage)message;
String text = msg.getText();
Long id = Long.parseLong(text);
九、SpringBoot框架与短信解决方案
9.1 概要
9.1.1 Spring Boot 具有如下特性:
(1)为基于 Spring 的开发提供更快的入门体验
(2)开箱即用,没有代码生成,也无需 XML 配置。同时也可以修改默认值来满足特定的需求。
(3)提供了一些大型项目中常见的非功能性特性,如嵌入式服务器、安全、指标,健康检测、外部配置等。
(4)Spring Boot 并不是不对 Spring 功能上的增强,而是提供了一种快速使用 Spring 的方式。
9.2 遇到的问题
9.2.1如何导入module项目。找到项目的pom文件,添加即可
9.3 代码注意事项
1 springBoot启动类注解:@SpringBootApplication
2 启动语句:SpringApplication.run(Application.class,args);
3 springBoot整合activeMq:@JmsListener(destination = "sms")
4 activeMq发送MapMessage:
MapMessage mapMessage = session.createMapMessage();
mapMessage.setString("mobile", phone);//手机号 ...
return mapMessage;
十、单点登录解决方案-CAS
10.1 概要
10.1.1:单点登录
单点登录(Single Sign On),简称为 SSO,是目前比较流行的企业业务整合的解决方案之一。SSO的定义是在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统。
10.1.2: SSO单点登录访问流程主要有以下步骤:
1. 访问服务:SSO客户端发送请求访问应用系统提供的服务资源。
2. 定向认证:SSO客户端会重定向用户请求到SSO服务器。
3. 用户认证:用户身份认证。
4. 发放票据:SSO服务器会产生一个随机的Service Ticket。
5. 验证票据:SSO服务器验证票据Service Ticket的合法性,验证通过后,允许客户端访问服务。
6. 传输用户信息:SSO服务器验证票据通过后,传输用户认证结果信息给客户端。
10.2 代码注意事项
获取用户名(Springsecurity整合cas):
String name = SecurityContextHolder.getContext().getAuthentication().getName();
十一、购物车解决方案
11.1 概要
11.1.1 : 未登录用cookie存购物车,登录之后用redis存购物车,如果cookie中有值,将cookie中的购物车添加到redis,清除cookie,redis存入购物车。
11.1.2 : 购物车对象:商家id,商家名,购物明细list。
11.1.3 : 总件数和总金额在前台计算
11.1.4 :添加商品:
1根据商品id取出商家id sellerId
2根据sellerId 判断购物车中是否存在该商家商品
3如果不存在 ,新建购物车,保存值,直接将该商品存入购物车list。
4如果存在,判断购物车是否存在该商品
5如果存不存在该商品,直接添加商品明细。如果存在,商品累加
6如果该商品的数量为0,移出该商品明细
7如果该商家的商品list的size为0,移出该商家cart
11.2 代码注意事项
11.2.1:jsonString --> List<XX> : JSON.parseArray(jsonString,XX.class);
11.2.2: springSecurity不拦截2种方式:
<http pattern="/css/**" security="none"></http> 不走springSecurity
<intercept-url pattern="/cart/*.do" access="IS_AUTHENTICATED_ANONYMOUSLY"/>
默认对象:anonymousUser
11.2.3 BigDecimal运算:
Add(加),subtract(减),negate(取反),multiply(乘),
divide(除法取余参数:四舍五入:BigDecimal.ROUND_HALF_UP,除数不能为0),
doubleValue:将bigdecimal转为double类型
11.2.4 Long与long的区别:
long是基本数据类型,能直接比较大小(=),Long是long的封装类,不能直接使用(=),需要转化为long: new Long(“1..5”).longValue()。
十二、跨域解决方案与提交订单
12.1 概要
12.1.1 : 只要协议、域名、端口有任何一个不同,都被当作是不同的域。
@CrossOrigin(origins="http://localhost:9105",allowCredentials="true") (跨域的方法上添加,第二个参数默认true 可以省略)
12.1.2 : twitter的snowflake(推特雪花)算法,功能比UUID强大
12.2 遇到的问题
12.2.1 : 项目无法clear,有程序没有关闭,可以关机重启,在clear
12.2.2 : dobbox服务不能调用,原因分析看看是不是配置文件漏写了,Service注解,web.xml的spring配置
十三、微信扫码支付
13.1 概要
13.1.1:二维码又称QR Code,QR全称Quick Response,是一个近几年来移动设备上超流行的一种编码方式,它比传统的Bar Code条形码能存更多的信息,也能表示更多的数据类型,黑色为1,白色为0
13.1.2:二维码优势
信息容量大, 可以容纳多达1850个大写字母或2710个数字或500多个汉字
应用范围广, 支持文字,声音,图片,指纹等等...
容错能力强, 即使图片出现部分破损也能使用
成本低, 容易制作
13.1.3 下面的代码即可生成一张二维码
<html>
<head>
<title>二维码入门小demo</title>
</head>
<body>
<img id="qrious">
<script src="qrious.min.js"></script>
<script>var qr = new QRious({element:document.getElementById('qrious'),size:250, level:'H', value:'http://www.itcast.cn'});
</script>
</body>
</html>
13.1.4 在线微信支付开发文档:https://pay.weixin.qq.com/wiki/doc/api/index.html
13.1.5 微信支付参数:
appid:微信公众账号或开放平台APP的唯一标识
mch_id:商户号 (配置文件中的partner)
partnerkey:商户密钥
sign:数字签名, 根据微信官方提供的密钥和一套算法生成的一个加密信息, 就是为了保证交易的安全性
13.1.6 :我们主要会用到微信支付SDK的以下功能
获取随机字符串: WXPayUtil.generateNonceStr()
MAP转换为XML字符串(自动添加签名):
WXPayUtil.generateSignedXml(param, partnerkey)
XML字符串转换为MAP: WXPayUtil.xmlToMap(result)
13.1.7: 封装的HttpClient工具类使用的步骤
HttpClient client=new HttpClient(请求的url地址);
client.setHttps(true);//是否是https协议
client.setXmlParam(xmlParam);//发送的xml数据
client.post();//执行post请求
String result = client.getContent(); //获取结果
13.1.8: 微信支付简单总结:
创建order订单,创建支付日志,将支付日志放入缓存,跳转到支付页面
从缓存提取支付日志,提取订单号和总价,调用微信支付接口:统一查询,并创建支付二维码
在调用微信支付接口:查询订单,需要循环调用,设置超时时间,超时需重新生成二维码
若支付成功,需要更改数据库订单和支付日志信息,并销毁支付日志缓存
13.2 遇到的问题
long->String : idWorker.nextId()+"";
String ->Long : Long.parseLong(orderId)
List<String> -> String:
list.toString().replace("[", "").replace("]", "").replace(" ","")
String ->String[]: string.split(",");
十四、秒杀解决方案
14.1 概要
14.1.1:秒杀商品通常有两种限制:库存限制、时间限制
14.1.2:秒杀技术实现核心思想是运用缓存减少数据库瞬间的访问压力!读取商品详细信息时运用缓存,当用户点击抢购时减少缓存中的库存数量,当库存数为0时或活动期结束时,同步到数据库。 产生的秒杀预订单也不会立刻写到数据库中,而是先写到缓存,当用户付款成功后再写入数据库。
14.1.3: 需求
商家提交秒杀商品申请,录入秒杀商品数据,主要包括:商品标题、原价、秒杀价、商品图片、介绍等信息
运营商审核秒杀申请
秒杀频道首页列出秒杀商品(进行中的)点击秒杀商品图片跳转到秒杀商品详细页。
商品详细页显示秒杀商品信息,点击立即抢购实现秒杀下单,下单时扣减库存。当库存为0或不在活动期范围内时无法秒杀。
秒杀下单成功,直接跳转到支付页面(微信扫码),支付成功,跳转到成功页,填写收货地址、电话、收件人等信息,完成订单。
当用户秒杀下单5分钟内未支付,取消预订单,调用微信支付的关闭订单接口,恢复库存。
14.2 代码注意事项
RedisTemplate获取List集合: redisTemplate.boundHashOps("seckillGoods").values();
十五、品优购系统业务分析
15.1 概要
15.1.1: 什么是MavenProfile
在我们平常的java开发中,会经常使用到很多配制文件(xxx.properties,xxx.xml),而当我们在本地开发(dev),测试环境测试(test),线上生产使用(product)时,需要不停的去修改这些配制文件,次数一多,相当麻烦。现在,利用maven的filter和profile功能,我们可实现在编译阶段简单的指定一个参数就能切换配制,提高效率,还不容易出错.
15.1.2: 什么是MongoDB
MongoDB 的官方网站地址是:http://www.mongodb.org/
MongoDB 是一个跨平台的,面向文档的数据库,它介于关系数据库和非关系数据库之间,是非关系数据库当中功能最丰富,最像关系数据库的产品。
具体特点总结如下:
面向集合存储,易于存储对象类型的数据
模式自由
支持动态查询
支持完全索引,包含内部对象
支持复制和故障恢复
使用高效的二进制数据存储,包括大型对象(如视频等)
自动处理碎片,以支持云计算层次的扩展性
支持 Python,PHP,Ruby,Java,C,C#,Javascript,Perl 及 C++语言的驱动程序,社区中也提供了对 Erlang 及.NET 等平台的驱动程序
文件存储格式为 BSON(一种 JSON 的扩展)
15.1.3: 品优购-其它业务功能分析
1用户中心(WEB)
用户在首页登陆系统后会进入到用户中心首页。
订单中心
功能需求:
实现对订单的查询功能
未付款订单的付款功能
未付款订单的取消功能
已付款提醒订单发货功能
确认收货
退货
用户评价
物流信息跟踪
秒杀订单中心
同上。
我的收藏
购物车中有将我的购物车商品移到我的收藏功能,在用户中心中可以查看我收藏的商品
对于这样的用户收藏数据,我们可以使用mongoDB来实现。
我的收藏列表
删除收藏
我的足迹
查看足迹列表
删除我的足迹
个人信息设置
个人信息
地址信息
密码重置
绑定手机
2商家后台-订单管理(WEB)
订单管理
订单查询
订单发货
订单退货
秒杀订单管理
秒杀中订单查询(查询redis )
已完成秒杀订单查询(查询数据库)
秒杀订单发货
秒杀订单退货查询
运营商后台-订单管理(WEB)
订单管理
根据商家、订单号、用户ID等信息查询订单列表
秒杀订单管理
查询秒杀中订单
查询已付款订单
3评价系统
针对评论这样数据量大并且价值不高的数据,我们通常采用MongoDB来实现存储。
评价系统-数据访问层
评价数据访问层-操作mongoDB
评价系统-服务层
评价服务层
web工程调用评价系统
在商品详细页显示该商品的所有评论信息(CORS跨域)
用户中心web工程引用评价服务 可以对已收货的订单追加评价。
商家后台web工程引用评价服务 可以查看订单的评价
运营商后台web工程引用评价服务 可以查看订单的评价
任务服务pinyougou-task-service 引用评价服务和搜索服务,统计每个商品的评价更新到solr索引库中。
4商家首页
构建商家首页工程,引用搜索服务,显示该商家的商品列表
5资金结算
用户购买商品是直接付款给平台的,而发货的是商家,那商家如何获得货款呢?这就需要运营商定期将货款转账给商家。
佣金与佣金比例
说到平台与商家之间的资金结算,我们必须要提一下佣金。佣金就是运营商以销售额为基础抽取的销售提成。 商品类型不同,设定相应的佣金比例也不同。例如食品类佣金比例为0.5% ,那么商家每产生100元的销售额就需要支付给运营商平台相应比例的佣金。
十六、品优购总结
电商项目体量还是十分庞大而且复杂的,往往单个逻辑理解起来并不难,但是很多个逻辑结合在一起理解起来就不是很容易了,需要及时的用文档来保存,方便后期维护。
品优购是由dubbox框架搭建的,里面有很多分布式的解决方案:微服务springboot,中间件mq,单点登录cas,页面静态化freemarker,全文搜索solr,图片服务器fastDfs,缓存技术,安全框架spring-security,微信支付接口使用,购物车解决方案以及跨域访问等等。
分析时应该先确定大的方向,然后确定一个主逻辑思路,然后在主要逻辑里添加其他逻辑,还要考虑异常情况。我想说的是分析问题要全面,严谨。要做到一丝不漏。
品优购只完成了电商项目的核心功能,由于时间关系并不能全部做完,但是我也从中学到了很多知识。先这样把。
如若内容造成侵权/违法违规/事实不符,请联系编程学习网邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
相关文章
- 实现html和word的相互转换(带图片)
项目后端使用了springboot,maven,前端使用了ckeditor富文本编辑器。目前从html转换的word为doc格式,而图片处理支持的是docx格式,所以需要手动把doc另存为docx,然后才可以进行图片替换。 2021年了,我回来填…...
2024/4/21 7:11:01 - Day06_04_Spring Boot教程之开发Web应用
SpringBoot中开发Web应用 本教程利用Spring boot实现Web开发. 一. Web开发方式简介 Spring boot提供了一套完整的web开发流程,从前端到后台,再到数据库,定时任务,消息队列等都可以支持.一般利用Spring框架开发一个Web应用有两种方式: 1. 前后端分离 这种方式前端开发和后端…...
2024/4/20 0:24:02 - 大连好的大连朗域何照华做双眼皮修复怎么样
...
2024/4/20 18:54:39 - mybatis动态创建表
转自:https://www.cnblogs.com/Joanna-Yan/p/9187538.html 项目中业务需求的不同,有时候我们需要动态操作数据表(如:动态建表、操作表字段等)。常见的我们会把日志、设备实时位置信息等存入数据表,并且以一定时间段生成一个表来存储,log_201806、log_201807等。在这里我…...
2024/4/20 18:54:38 - 全切双眼皮后吃羊肉
...
2024/4/20 18:54:37 - 广州割双眼皮问壹加壹
...
2024/4/21 7:11:00 - 走进AngularJs(八) ng的路由机制
今天心情不错~,公司请了个中医来给按摩拔罐刮痧,一套下来那个爽啊~,趁着精力充沛了解了下Angular的路由机制,在此分享出来与大家共同学习。 在谈路由机制前有必要先提一下现在比较流行的单页面应用,就是所谓的single p…...
2024/4/21 7:10:58 - 李昌双眼皮如何
...
2024/4/21 7:10:57 - angular.js的路由和模板在asp.net mvc 中的使用
我们知道angular.js是基于mvc 的一款优秀js框架,它也有一套自己的路由机制,和asp.net mvc 路由不太一样。asp.net mvc 的路由是通过不同的URL到不同的controller然后交给controller去呈现视图。但是在angular.js则是需要提前指定一个module(ng-app)&…...
2024/4/21 7:10:58 - angular 2 - 005 路由实现机制
angular2的路由是不是很神奇, url发生了变化却没有看到有任何请求发出? 1. hash模式 url类似 http://localhost:4200/#/task-list,跳转到路由页面再刷新还是会停留在当前路由。这个是我们熟知的路由实现方式, angular1.x用的是这种方式. 开启方法: app.module.ts中…...
2024/4/21 7:10:57 - AngularJS路由使用案例
AngularJS路由使用案例: <!DOCTYPE html> <html><head><meta charset"UTF-8"><title>AngularJS路由使用案例</title><script type"text/javascript" src"../js/angular.min.js"></scr…...
2024/4/25 16:09:30 - 双眼皮术后无神
...
2024/4/20 17:17:43 - angularjs 路由机制
前言 AngularJS路由主要有内置的ngRoute和一个基于ngRoute开发的第三方路由模块ui-router,内置的ngRoute有时满足开发需求,使用ui-router可以解决很多原生ngRoute的不足。 AngularJS的路由实际上是一种纯前端的解决方案,它的本质是࿱…...
2024/4/21 7:10:53 - 孙英 埋线 埋线八点定位蛋白线双眼皮是不是永久的
...
2024/4/21 7:10:51 - 双眼皮无创
...
2024/4/21 7:10:50 - 眼皮肿利于形成双眼皮吗
...
2024/4/21 7:10:49 - 关闭NG-Bootstrap carousel 的箭头按钮和指示器
可以在CSS样式表中隐去NG-Bootstrap carousel箭头按钮和指示点,对应的CSS HTML代码如下. 1. 具体设置 .carousel-control-prev .carousel-control-prev .carousel-control-prev 显示为 none; 2. 笔者前端开发语言使用angular 2&…...
2024/4/21 7:10:49 - 平行双眼皮显老
...
2024/4/21 7:10:49 - BootStrap3.X--Carousel轮播不自动播放问题
先看一下Carousel的正确写法(代码,这里使用的是Bootstrap 3.2版本):<div id"carousel-ad" class"carousel slide" data-ride"carousel"><ol class"carousel-indicators"><…...
2024/4/21 7:10:46 - angular 最大字数限制
js可以通过onkeyup onkeydown判断当前节点字数。 angular可以通过监听的方式: $scope.input {//初始化,避免ng-model绑定取不到值MaxBT:,MaxNM:}$scope.$watch(input.MaxBT, function(newValue, oldValue) {if ($scope.input.MaxBT.length>15){alert…...
2024/4/21 7:10:46
最新文章
- 利用tree-sitter提取代码文件中的函数和注释
利用tree-sitter提取代码文件中的函数和注释 1. 需求2. 工具3. 实现 1. 需求 提取.c或.cpp文件中的带有注释的函数,作为训练数据喂给大语言模型。要求是能够批量处理,提取函数前带有注释的函数和注释,并将函数中的注释同样提取出来作为辅助训…...
2024/4/26 5:09:30 - 梯度消失和梯度爆炸的一些处理方法
在这里是记录一下梯度消失或梯度爆炸的一些处理技巧。全当学习总结了如有错误还请留言,在此感激不尽。 权重和梯度的更新公式如下: w w − η ⋅ ∇ w w w - \eta \cdot \nabla w ww−η⋅∇w 个人通俗的理解梯度消失就是网络模型在反向求导的时候出…...
2024/3/20 10:50:27 - c++类的继承方式
在 C 中,类的继承方式有三种:公有继承(public inheritance)、保护继承(protected inheritance)和私有继承(private inheritance)。这些继承方式决定了派生类对基类成员的访问权限。 …...
2024/4/23 6:23:28 - 设计模式:组合模式
定义 组合模式(Composite Pattern)是一种结构型设计模式,它允许你将对象组合成树形结构来表示“部分-整体”的层次结构。组合模式使得客户端可以统一对待单个对象和组合对象。 应用场景 组合模式适用于以下场景: 表达对象的部分-整体层次结构:当你想要表示对象的部分-整…...
2024/4/24 18:15:52 - 【外汇早评】美通胀数据走低,美元调整
原标题:【外汇早评】美通胀数据走低,美元调整昨日美国方面公布了新一期的核心PCE物价指数数据,同比增长1.6%,低于前值和预期值的1.7%,距离美联储的通胀目标2%继续走低,通胀压力较低,且此前美国一季度GDP初值中的消费部分下滑明显,因此市场对美联储后续更可能降息的政策…...
2024/4/25 11:51:20 - 【原油贵金属周评】原油多头拥挤,价格调整
原标题:【原油贵金属周评】原油多头拥挤,价格调整本周国际劳动节,我们喜迎四天假期,但是整个金融市场确实流动性充沛,大事频发,各个商品波动剧烈。美国方面,在本周四凌晨公布5月份的利率决议和新闻发布会,维持联邦基金利率在2.25%-2.50%不变,符合市场预期。同时美联储…...
2024/4/25 18:39:24 - 【外汇周评】靓丽非农不及疲软通胀影响
原标题:【外汇周评】靓丽非农不及疲软通胀影响在刚结束的周五,美国方面公布了新一期的非农就业数据,大幅好于前值和预期,新增就业重新回到20万以上。具体数据: 美国4月非农就业人口变动 26.3万人,预期 19万人,前值 19.6万人。 美国4月失业率 3.6%,预期 3.8%,前值 3…...
2024/4/25 18:38:39 - 【原油贵金属早评】库存继续增加,油价收跌
原标题:【原油贵金属早评】库存继续增加,油价收跌周三清晨公布美国当周API原油库存数据,上周原油库存增加281万桶至4.692亿桶,增幅超过预期的74.4万桶。且有消息人士称,沙特阿美据悉将于6月向亚洲炼油厂额外出售更多原油,印度炼油商预计将每日获得至多20万桶的额外原油供…...
2024/4/25 18:39:23 - 【外汇早评】日本央行会议纪要不改日元强势
原标题:【外汇早评】日本央行会议纪要不改日元强势近两日日元大幅走强与近期市场风险情绪上升,避险资金回流日元有关,也与前一段时间的美日贸易谈判给日本缓冲期,日本方面对汇率问题也避免继续贬值有关。虽然今日早间日本央行公布的利率会议纪要仍然是支持宽松政策,但这符…...
2024/4/25 18:39:22 - 【原油贵金属早评】欧佩克稳定市场,填补伊朗问题的影响
原标题:【原油贵金属早评】欧佩克稳定市场,填补伊朗问题的影响近日伊朗局势升温,导致市场担忧影响原油供给,油价试图反弹。此时OPEC表态稳定市场。据消息人士透露,沙特6月石油出口料将低于700万桶/日,沙特已经收到石油消费国提出的6月份扩大出口的“适度要求”,沙特将满…...
2024/4/25 18:39:22 - 【外汇早评】美欲与伊朗重谈协议
原标题:【外汇早评】美欲与伊朗重谈协议美国对伊朗的制裁遭到伊朗的抗议,昨日伊朗方面提出将部分退出伊核协议。而此行为又遭到欧洲方面对伊朗的谴责和警告,伊朗外长昨日回应称,欧洲国家履行它们的义务,伊核协议就能保证存续。据传闻伊朗的导弹已经对准了以色列和美国的航…...
2024/4/25 18:39:20 - 【原油贵金属早评】波动率飙升,市场情绪动荡
原标题:【原油贵金属早评】波动率飙升,市场情绪动荡因中美贸易谈判不安情绪影响,金融市场各资产品种出现明显的波动。随着美国与中方开启第十一轮谈判之际,美国按照既定计划向中国2000亿商品征收25%的关税,市场情绪有所平复,已经开始接受这一事实。虽然波动率-恐慌指数VI…...
2024/4/25 16:48:44 - 【原油贵金属周评】伊朗局势升温,黄金多头跃跃欲试
原标题:【原油贵金属周评】伊朗局势升温,黄金多头跃跃欲试美国和伊朗的局势继续升温,市场风险情绪上升,避险黄金有向上突破阻力的迹象。原油方面稍显平稳,近期美国和OPEC加大供给及市场需求回落的影响,伊朗局势并未推升油价走强。近期中美贸易谈判摩擦再度升级,美国对中…...
2024/4/25 13:39:44 - 【原油贵金属早评】市场情绪继续恶化,黄金上破
原标题:【原油贵金属早评】市场情绪继续恶化,黄金上破周初中国针对于美国加征关税的进行的反制措施引发市场情绪的大幅波动,人民币汇率出现大幅的贬值动能,金融市场受到非常明显的冲击。尤其是波动率起来之后,对于股市的表现尤其不安。隔夜美国股市出现明显的下行走势,这…...
2024/4/25 18:39:16 - 【外汇早评】美伊僵持,风险情绪继续升温
原标题:【外汇早评】美伊僵持,风险情绪继续升温昨日沙特两艘油轮再次发生爆炸事件,导致波斯湾局势进一步恶化,市场担忧美伊可能会出现摩擦生火,避险品种获得支撑,黄金和日元大幅走强。美指受中美贸易问题影响而在低位震荡。继5月12日,四艘商船在阿联酋领海附近的阿曼湾、…...
2024/4/25 18:39:16 - 【原油贵金属早评】贸易冲突导致需求低迷,油价弱势
原标题:【原油贵金属早评】贸易冲突导致需求低迷,油价弱势近日虽然伊朗局势升温,中东地区几起油船被袭击事件影响,但油价并未走高,而是出于调整结构中。由于市场预期局势失控的可能性较低,而中美贸易问题导致的全球经济衰退风险更大,需求会持续低迷,因此油价调整压力较…...
2024/4/25 0:00:17 - 氧生福地 玩美北湖(上)——为时光守候两千年
原标题:氧生福地 玩美北湖(上)——为时光守候两千年一次说走就走的旅行,只有一张高铁票的距离~ 所以,湖南郴州,我来了~ 从广州南站出发,一个半小时就到达郴州西站了。在动车上,同时改票的南风兄和我居然被分到了一个车厢,所以一路非常愉快地聊了过来。 挺好,最起…...
2024/4/25 4:19:21 - 氧生福地 玩美北湖(中)——永春梯田里的美与鲜
原标题:氧生福地 玩美北湖(中)——永春梯田里的美与鲜一觉醒来,因为大家太爱“美”照,在柳毅山庄去寻找龙女而错过了早餐时间。近十点,向导坏坏还是带着饥肠辘辘的我们去吃郴州最富有盛名的“鱼头粉”。说这是“十二分推荐”,到郴州必吃的美食之一。 哇塞!那个味美香甜…...
2024/4/25 18:39:14 - 氧生福地 玩美北湖(下)——奔跑吧骚年!
原标题:氧生福地 玩美北湖(下)——奔跑吧骚年!让我们红尘做伴 活得潇潇洒洒 策马奔腾共享人世繁华 对酒当歌唱出心中喜悦 轰轰烈烈把握青春年华 让我们红尘做伴 活得潇潇洒洒 策马奔腾共享人世繁华 对酒当歌唱出心中喜悦 轰轰烈烈把握青春年华 啊……啊……啊 两…...
2024/4/25 18:39:12 - 扒开伪装医用面膜,翻六倍价格宰客,小姐姐注意了!
原标题:扒开伪装医用面膜,翻六倍价格宰客,小姐姐注意了!扒开伪装医用面膜,翻六倍价格宰客!当行业里的某一品项火爆了,就会有很多商家蹭热度,装逼忽悠,最近火爆朋友圈的医用面膜,被沾上了污点,到底怎么回事呢? “比普通面膜安全、效果好!痘痘、痘印、敏感肌都能用…...
2024/4/25 2:10:52 - 「发现」铁皮石斛仙草之神奇功效用于医用面膜
原标题:「发现」铁皮石斛仙草之神奇功效用于医用面膜丽彦妆铁皮石斛医用面膜|石斛多糖无菌修护补水贴19大优势: 1、铁皮石斛:自唐宋以来,一直被列为皇室贡品,铁皮石斛生于海拔1600米的悬崖峭壁之上,繁殖力差,产量极低,所以古代仅供皇室、贵族享用 2、铁皮石斛自古民间…...
2024/4/25 18:39:00 - 丽彦妆\医用面膜\冷敷贴轻奢医学护肤引导者
原标题:丽彦妆\医用面膜\冷敷贴轻奢医学护肤引导者【公司简介】 广州华彬企业隶属香港华彬集团有限公司,专注美业21年,其旗下品牌: 「圣茵美」私密荷尔蒙抗衰,产后修复 「圣仪轩」私密荷尔蒙抗衰,产后修复 「花茵莳」私密荷尔蒙抗衰,产后修复 「丽彦妆」专注医学护…...
2024/4/25 13:19:01 - 广州械字号面膜生产厂家OEM/ODM4项须知!
原标题:广州械字号面膜生产厂家OEM/ODM4项须知!广州械字号面膜生产厂家OEM/ODM流程及注意事项解读: 械字号医用面膜,其实在我国并没有严格的定义,通常我们说的医美面膜指的应该是一种「医用敷料」,也就是说,医用面膜其实算作「医疗器械」的一种,又称「医用冷敷贴」。 …...
2024/4/25 18:38:58 - 械字号医用眼膜缓解用眼过度到底有无作用?
原标题:械字号医用眼膜缓解用眼过度到底有无作用?医用眼膜/械字号眼膜/医用冷敷眼贴 凝胶层为亲水高分子材料,含70%以上的水分。体表皮肤温度传导到本产品的凝胶层,热量被凝胶内水分子吸收,通过水分的蒸发带走大量的热量,可迅速地降低体表皮肤局部温度,减轻局部皮肤的灼…...
2024/4/25 18:38:57 - 配置失败还原请勿关闭计算机,电脑开机屏幕上面显示,配置失败还原更改 请勿关闭计算机 开不了机 这个问题怎么办...
解析如下:1、长按电脑电源键直至关机,然后再按一次电源健重启电脑,按F8健进入安全模式2、安全模式下进入Windows系统桌面后,按住“winR”打开运行窗口,输入“services.msc”打开服务设置3、在服务界面,选中…...
2022/11/19 21:17:18 - 错误使用 reshape要执行 RESHAPE,请勿更改元素数目。
%读入6幅图像(每一幅图像的大小是564*564) f1 imread(WashingtonDC_Band1_564.tif); subplot(3,2,1),imshow(f1); f2 imread(WashingtonDC_Band2_564.tif); subplot(3,2,2),imshow(f2); f3 imread(WashingtonDC_Band3_564.tif); subplot(3,2,3),imsho…...
2022/11/19 21:17:16 - 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机...
win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”问题的解决方法在win7系统关机时如果有升级系统的或者其他需要会直接进入一个 等待界面,在等待界面中我们需要等待操作结束才能关机,虽然这比较麻烦,但是对系统进行配置和升级…...
2022/11/19 21:17:15 - 台式电脑显示配置100%请勿关闭计算机,“准备配置windows 请勿关闭计算机”的解决方法...
有不少用户在重装Win7系统或更新系统后会遇到“准备配置windows,请勿关闭计算机”的提示,要过很久才能进入系统,有的用户甚至几个小时也无法进入,下面就教大家这个问题的解决方法。第一种方法:我们首先在左下角的“开始…...
2022/11/19 21:17:14 - win7 正在配置 请勿关闭计算机,怎么办Win7开机显示正在配置Windows Update请勿关机...
置信有很多用户都跟小编一样遇到过这样的问题,电脑时发现开机屏幕显现“正在配置Windows Update,请勿关机”(如下图所示),而且还需求等大约5分钟才干进入系统。这是怎样回事呢?一切都是正常操作的,为什么开时机呈现“正…...
2022/11/19 21:17:13 - 准备配置windows 请勿关闭计算机 蓝屏,Win7开机总是出现提示“配置Windows请勿关机”...
Win7系统开机启动时总是出现“配置Windows请勿关机”的提示,没过几秒后电脑自动重启,每次开机都这样无法进入系统,此时碰到这种现象的用户就可以使用以下5种方法解决问题。方法一:开机按下F8,在出现的Windows高级启动选…...
2022/11/19 21:17:12 - 准备windows请勿关闭计算机要多久,windows10系统提示正在准备windows请勿关闭计算机怎么办...
有不少windows10系统用户反映说碰到这样一个情况,就是电脑提示正在准备windows请勿关闭计算机,碰到这样的问题该怎么解决呢,现在小编就给大家分享一下windows10系统提示正在准备windows请勿关闭计算机的具体第一种方法:1、2、依次…...
2022/11/19 21:17:11 - 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”的解决方法...
今天和大家分享一下win7系统重装了Win7旗舰版系统后,每次关机的时候桌面上都会显示一个“配置Windows Update的界面,提示请勿关闭计算机”,每次停留好几分钟才能正常关机,导致什么情况引起的呢?出现配置Windows Update…...
2022/11/19 21:17:10 - 电脑桌面一直是清理请关闭计算机,windows7一直卡在清理 请勿关闭计算机-win7清理请勿关机,win7配置更新35%不动...
只能是等着,别无他法。说是卡着如果你看硬盘灯应该在读写。如果从 Win 10 无法正常回滚,只能是考虑备份数据后重装系统了。解决来方案一:管理员运行cmd:net stop WuAuServcd %windir%ren SoftwareDistribution SDoldnet start WuA…...
2022/11/19 21:17:09 - 计算机配置更新不起,电脑提示“配置Windows Update请勿关闭计算机”怎么办?
原标题:电脑提示“配置Windows Update请勿关闭计算机”怎么办?win7系统中在开机与关闭的时候总是显示“配置windows update请勿关闭计算机”相信有不少朋友都曾遇到过一次两次还能忍但经常遇到就叫人感到心烦了遇到这种问题怎么办呢?一般的方…...
2022/11/19 21:17:08 - 计算机正在配置无法关机,关机提示 windows7 正在配置windows 请勿关闭计算机 ,然后等了一晚上也没有关掉。现在电脑无法正常关机...
关机提示 windows7 正在配置windows 请勿关闭计算机 ,然后等了一晚上也没有关掉。现在电脑无法正常关机以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!关机提示 windows7 正在配…...
2022/11/19 21:17:05 - 钉钉提示请勿通过开发者调试模式_钉钉请勿通过开发者调试模式是真的吗好不好用...
钉钉请勿通过开发者调试模式是真的吗好不好用 更新时间:2020-04-20 22:24:19 浏览次数:729次 区域: 南阳 > 卧龙 列举网提醒您:为保障您的权益,请不要提前支付任何费用! 虚拟位置外设器!!轨迹模拟&虚拟位置外设神器 专业用于:钉钉,外勤365,红圈通,企业微信和…...
2022/11/19 21:17:05 - 配置失败还原请勿关闭计算机怎么办,win7系统出现“配置windows update失败 还原更改 请勿关闭计算机”,长时间没反应,无法进入系统的解决方案...
前几天班里有位学生电脑(windows 7系统)出问题了,具体表现是开机时一直停留在“配置windows update失败 还原更改 请勿关闭计算机”这个界面,长时间没反应,无法进入系统。这个问题原来帮其他同学也解决过,网上搜了不少资料&#x…...
2022/11/19 21:17:04 - 一个电脑无法关闭计算机你应该怎么办,电脑显示“清理请勿关闭计算机”怎么办?...
本文为你提供了3个有效解决电脑显示“清理请勿关闭计算机”问题的方法,并在最后教给你1种保护系统安全的好方法,一起来看看!电脑出现“清理请勿关闭计算机”在Windows 7(SP1)和Windows Server 2008 R2 SP1中,添加了1个新功能在“磁…...
2022/11/19 21:17:03 - 请勿关闭计算机还原更改要多久,电脑显示:配置windows更新失败,正在还原更改,请勿关闭计算机怎么办...
许多用户在长期不使用电脑的时候,开启电脑发现电脑显示:配置windows更新失败,正在还原更改,请勿关闭计算机。。.这要怎么办呢?下面小编就带着大家一起看看吧!如果能够正常进入系统,建议您暂时移…...
2022/11/19 21:17:02 - 还原更改请勿关闭计算机 要多久,配置windows update失败 还原更改 请勿关闭计算机,电脑开机后一直显示以...
配置windows update失败 还原更改 请勿关闭计算机,电脑开机后一直显示以以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!配置windows update失败 还原更改 请勿关闭计算机&#x…...
2022/11/19 21:17:01 - 电脑配置中请勿关闭计算机怎么办,准备配置windows请勿关闭计算机一直显示怎么办【图解】...
不知道大家有没有遇到过这样的一个问题,就是我们的win7系统在关机的时候,总是喜欢显示“准备配置windows,请勿关机”这样的一个页面,没有什么大碍,但是如果一直等着的话就要两个小时甚至更久都关不了机,非常…...
2022/11/19 21:17:00 - 正在准备配置请勿关闭计算机,正在准备配置windows请勿关闭计算机时间长了解决教程...
当电脑出现正在准备配置windows请勿关闭计算机时,一般是您正对windows进行升级,但是这个要是长时间没有反应,我们不能再傻等下去了。可能是电脑出了别的问题了,来看看教程的说法。正在准备配置windows请勿关闭计算机时间长了方法一…...
2022/11/19 21:16:59 - 配置失败还原请勿关闭计算机,配置Windows Update失败,还原更改请勿关闭计算机...
我们使用电脑的过程中有时会遇到这种情况,当我们打开电脑之后,发现一直停留在一个界面:“配置Windows Update失败,还原更改请勿关闭计算机”,等了许久还是无法进入系统。如果我们遇到此类问题应该如何解决呢࿰…...
2022/11/19 21:16:58 - 如何在iPhone上关闭“请勿打扰”
Apple’s “Do Not Disturb While Driving” is a potentially lifesaving iPhone feature, but it doesn’t always turn on automatically at the appropriate time. For example, you might be a passenger in a moving car, but your iPhone may think you’re the one dri…...
2022/11/19 21:16:57