- 浏览: 13489 次
- 性别:
- 来自: 青岛
最新评论
文章列表
《spin销售巨人》笔记3——做大生意要学会提问
- 博客分类:
- 销售学习
与客户接触需要提问。问题分为以下几种
1背景问题
用于了解客户背景,现状,客户收入,客户公司雇员人数
正确的方式
每一个背景问题都有针对性和目的性,不要问太多背景问题。因为客户没有时间和耐心回答你的问题
2难点问题
问题要针对难点,困难,不满,每一个问题引诱客户说出隐含需求
如
设备是否满意,现状有什么缺陷,机器负荷是否过大
问难点问题看似比背景问题似乎对于成交更有效。但是多问难点问题在小生意中有效,对于大生意中似乎没有什么关系
3暗示问题
之前说过,放大客户的小问题和不满,不断放大一直到客户的隐含需求,让客户意识到这个问题的严重性,并需要改变。这就要用到暗示问题。
之前说过不等式
客户 ...
大生意的销售重点有4个过程
初步接触——调查研究——证实能力——承认接受
重点在第二阶段,调查研究
调查研究的目的是发掘客户需求
怎样开发需求
把客户的一个小问题变成客户的一个愿望,一种需求,一个行动的企图。
从很小的缺点开始——清晰的问题、困难和不满——变成客户的愿望和行动的企图
1隐含需求对于生意的作用
隐含需求对于小生意来说,越多的隐含需求,对于成功作用越大
2对于大生意
数量多少没有什么作用
原因
解决问题的迫切程度>解决问题的成本,那么买,否则不买。而小生意,往往解决问题成本低,所以,越多的隐藏需求放大了问题的迫切程度。使得不等式的左边变大,更容易成交。
2明确的 ...
结束语的应用
开篇用了大量篇幅用于介绍结束语,以及结束语在生意中的作用。
什么时结束语
结束语是一个阶段性销售过程的结束。是销售人员趁热打铁的最后一击。
常用的销售语,“活动最后一天了,明天就恢复原价了”。“你打算要几双鞋”等等,常见选择性的或者是最后通牒式的。这些我们在商场买东西的时候,售货员经常跟我们说。and we buy it
(buy除了买的意思,还有吃这一套的意思)
结束语和销售技巧在小生意中很管用。
在大生意中不管用。理由:
1大生意往往比较谨慎。
2大生意的采购员精通各种销售技巧,不吃这一套。
3大生意牵扯广,往往不是采购员能决定的。经常需要拜访更高级领导或者见更多人更广泛的 ...
装饰模式可以动态的为类的方法更换(增强)功能。
假如有一个方法dress(),怎样可以改变其中的逻辑增加功能呢。
常见答案如下
继承,使用子类集成父类,然后override 方法dress()编写自己的逻辑
子类中的方法
@Override
public voi ...
前几天面试了某500强企业,要求用Java写一个访问数据库并插入一条数据的功能。
好久都没有这么原生态的使用java了,当场作答的不是很周详,到家之后重新回顾一下。
首先数据库新建一个表吧,用户表User,包含id,username,password3个字段,其中id是自增1的。建表语句在此
CREATE TABLE `shopping`.`new_table` (
`id` INT NOT NULL AUTO_INCREMENT,
`username` VARCHAR(45) NULL,
`password` VARCHAR(45) NULL,
PRIMARY K ...
书接上回
上回降到LEO把before和after重构,改为使用around。
日本人提高了防范,LEO不确定需要从哪个方法入手,需要一些通配符来侵入方法。
这里我们就谈谈AOP语法中表达式
@Pointcut("execution(public void com.spring.service.Person.haveSleep())")
这是之前例子的表达式。我们来详细讲解一下
这是指定了一个具体的方法,这个很好理解。
1、假设Person类中haveSleep()方法有一个重载方法
public void haveSleep(date starttime ,date end ...
书接上回
上回说道LEO盗梦,宿主抛出了Exception,LEO早有应对,逃脱了。
LEO审视自己的类,发现所有的盗梦行为中,都需要在睡梦之前做准备@before,梦醒之后逃脱@after。那么是不是可以把这两个方法合一呢。
这里我们用到@Around,这个代码貌似应该这么写
伪代码
before应该做的事情
宿主的业务
after应该做的事情
我们知道在编织waving的时候,我们用了@before和@after来表示方法在宿主运行之前还是之后。使用Spring是没有显式调用的,也就是说我们不能直接调用业务方法。这里我们用到的是ProceedingJoinPoint。
这里稍微 ...
书接上回
话说LEO在日本人打盹的时候盗取密码。电影中,梦境里日本人摸了地毯发现材质不对,知道被盗梦了,就开始与LEO团队扭打起来。发现了异常LEO需要尽快逃跑。这样需要LEO可以对日本人haveNap方法抛出异常进行监听并处理。
Spring提供了这种方式,@AfterThrowing用于监听宿主的异常,并处理异常。
1、Person代码修改如下
package com.spring.service;
import org.springframework.stereotype.Component;
@Component
public class Person {
...
书接上回
上一个例子展示的只是在日本人的做梦的外围做一点事情,并没有窃取到日本人的机密。这里LEO要窃取日本人的密码
1、修改Person类
package com.spring.service;
import org.springframework.stereotype.Component;
@Component
public class Person {
public int haveNap()
{
System.out.println(this.getClass().getName());
System.out.println(" ...
现在我们开始聊聊AOP
各位应该有看过盗梦空间。
影片开始的时候,莱昂纳多(简称LEO)要盗取日本人斋藤(简称日本人)的信息。
在这里,日本人睡觉的流程和LEO的流程是相互独立的,LEO是需要无声无息(没有发生显式调用)的侵入到日本人的睡觉流程中。
1、使用AOP还需要导入更多的包,这里我们总共需要6个包
aspectjweaver aspectjrt spring spring-aspects common-annotations commons-logging cglib-nodep
见图
2、新建类Person,包com.spring.service
代码如下
package ...
Spring使用的两个核心,注入和AOP,前面常见和基本的注入情况已经介绍完了。注入相对比较好理解,就没有专门开辟一讲来说注入的概念。现在我们专门谈谈AOP AOP的意思是面向切面的编程。
试想这样一种场景。有一个功能,逻辑上不属于任何一个功能模块。但经常会在不同的模块中被用到。而这个功能在逻辑上并不属于一个上层功能,也就是说用继承来复用这个功能是不合逻辑的。(比如记录日志和权限审查,为了方便我们简称为日志功能吧) 这些功能与业务逻辑不想管,如果使用代码调用的方式,复用性、可读性不好。 AOP是把逻辑业务和日志功能分割开,然后用编织的方法再关联起来,在代码中没有显式的调用,这样功能逻辑的可读性和 ...
对于自动装配的认识,经历了几个步骤
1手工配置xml
2在xml中配置bean,bean之间的注入关系用autowire
3不在xml中写autowire,写在annotation中
4干脆xml中一个bean也不写,bean和注入关系都挪到annotation中指定。
书接上回
使用注释进行autowire
上一讲用的注释的autowire,xml里面配置bean。
还是有一些麻烦,如果能不用配置bean,让spring自动扫描工程中(确切的说是给定包的位置)的类,然后把类自动实例化成bean,然后再根据类型或者名字的规则装配起来就更好了。
也就是说我们要达到这个效果,在上一讲的基础上,把x ...
之前讲了xml中的autowire,是在被注入的bean上写autowire=“byName”当然还可以byType,default等等。
当然autowire这句话可以放到annotation中,这样的好处是
1、xml中的bean特别的整洁,每一行写一个bean,没有bean之间相互注入的关系,没有autowire的补丁。
2、由于整洁,可以只让程序员只关注bean,而把关系放到annotation中,这样更有条理。bean负责生成类的实例,注入由annotation负责
需要用到上一个例子
使用xml的autowire
现在修改springbean.xml为下面这个样子
...
书接上回
上一篇在此
上一篇的方式是通过bean中的id制定,然后把属性的对象注入进去的。这里我们采用xml中写autowire的方式注入
上一篇代码不变
修改xml文件如下
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instanc ...
上一讲介绍了如何使用xml注入值类型,这里我们要注入的是对象。
这里我们需要用到2个类,分别是UserDao和UserService,UserDao是直接与数据库打交道的类,而UserService是面向业务给业务提供调取方法的类。
UserService是需要调取UserDao用于实现自己的业务逻辑的。
继续使用上一个例子的代码
1、新建UserDao类,包com.spring.dao
这里我们并没有真正的操作数据库,打印一行文字来代替
package com.spring.dao;
public class UserDao {
public void add()
...