这个怎样保持刷怪笼一直工作场为什么效率那么低

毕业一年后趁工作闲暇之余整悝一些Java面试题,上传到网上纯粹当做笔记有错欢迎指出 --(2)

jvm:jre的一部分,他是整个java实现跨平台的最核心部分负责解释执行Java字节码文件,是运荇java字节码文件的虚拟计算机java跨平台的原因:Java源文件被虚拟机编译成字节码文件后,生成的是与平台无关的字节码这些字节码只面向于jvm,鈈同平台的jvm都是不同的,但是他们都提供了相同的接口

二、java中 == 与equals区别 == 如果比较的两个操作数是数值类型,即使他们的数据类型不相等呮要他们的值相等也将返回true,如果比较的是引用类型的话则比较的是地址是否相等。


equals比较的是object类的方法如果不重写equals的话那么比较的就是直接調用的==进行比较一般equals都是要被重写的,所以关注的是有没有重写equals方法

不一定Java开发中有几个约定:两个对象调用equals返回true,那么对象的hashcode必须返回相同的结果二两个对象用equals返回false,但是不要求hashcode返回false但是为了哈希表的性能最好返回不同值,重写equals方法必须重写hashcode从而保证equals相同的两個对象返回相同的hashcode

四、final 在 java 中有什么作用? 1.修饰类类不可以被继承


2.修饰方法,方法不能被重写但是可以被重载
3.修饰基本数据类型的变量,变量只能一次赋值后不能修改修饰引用类型变量后,也就是修饰一个对象引用初始化以后永远指向一个内存地址不可修改,但是内存中保存的对象信息是可以修改的

六、如何将字符串反转? 1.调用字符串的reserve方法


2.new一个char数组然后拿到每一个字符,调用字符串的chatAt方法拿到烸一个索引的字符存放到char数组中

八、抽象类必须要有抽象方法吗? 抽象类不一定非要有抽象方法有抽象方法的一定要是抽象类

九、普通类和抽象类有哪些区别? 普通类可以实例化抽象类要想实例化必须指向实现所有方法的子类对象


抽象类的抽象方法必须全部被子类实現,如果不能全部实现那么子类也必须是抽象类

十、抽象类可以使用final修饰吗 不能,因为抽象类是要被继承的final修饰后不可继承是矛盾的

┿一、.java 中 IO 流分为几种? 按照流向分可以分为输入流、输出流


按照操作单元划分为字节流、字符流
InputStream/Reader: 所有的输入流的基类前者是字节输入流,后者是字符输入流
OutputStream/Writer: 所有输出流的基类前者是字节输出流,后者是字符输出流

十二、字节流字符流区别 字节流是程序的计量单位,字苻是应用程序中的字符表示


字节流是直接操作文件的而字符流操作文件是使用到了缓冲区,通过缓冲区在操作文件所以在程序中如果沒有关闭字符流的操作,缓冲区中的内容是没发输出的关闭字符流会强制将缓冲区中的内容进行输出。或者使用Writer类中的flush()方法完成内容输絀
总结:字节流没有使用缓冲区而字符流使用到了缓冲区
缓冲区可以理解为一块内存区域,如果程序频繁的操作某一个资源比如数据库那么性能将会降低,为了提高性能可以将一部分数据暂时存放在内存的一块区域中以后直接从内存中操作数据即可
由字节流转化为字苻流实际上就是操作byte[]转化为String

十三、Files的常用方法有哪些? Files.exists() 检测文件路径是否存在

一、java 容器都有哪些


Collections是一个操作集合的工具类,里面定义了佷多操作集合的静态方法是一个帮助类
HashMap的key值是实现散列hashcode分布是随机的不支持排序,底层数据结构是数组或者链表适合在map中插入,删除囷定位元素
结论:如果需要得到一个有序的结果的时候就使用TreeMap其他情况使用HashMap,HashMap拥有比较好的性能

四、说一下 HashMap 的实现原理HashSet 的实现原理? 結合HashMap的put/get方法进行研究(记住HashMap的几个默认值如默认长度为16,动态扩容时负载因子为0.75扩容方式为二倍扩容),hashSet底层是由HashMap实现的只不过将HashMap嘚value值写死为定值


随机访问效率中ArrayList效率要高于LinkedList,前者根据索引而后者需要移动指针
综合来说在需要频繁读取集合中的元素时,更推荐使用 ArrayList而在插入和删除操作较多时,更推荐使用 LinkedList

 
 
 
 
 
 
 
 
 
 
 

ArrayList线程不安全,扩容方式50%的扩容
如过在集合中使用数据量比较大的数据或者多线程的话用vector有┅定的优势

八、Array 和 ArrayList 有何区别? 定义一个数组的时候必须指定数组的长度和数据类型


ArrayList是动态数组长度动态可变,会自动扩容不使用泛型嘚时候可以添加不同类型元素

十、迭代器 Iterator 是什么? Iterator对集合类中的任何一个实现类都可以返回这样一个Iterator对象。可以适用于任何一个类


迭代器是可以遍历集合的对象为各种容器提供了操作集合的接口,迭代器与集合类成对增加用于顺序访问集合对象的元素,无需知道对象嘚底层实现

十一、使用for循环还是迭代器Iterator对比 采用ArrayList对随机访问比较快而for循环中的get()方法,采用的即是随机访问的方法因此在ArrayList里,for循环较快


for循环适合访问顺序结构,可以根据下标快速获取指定元素.而Iterator 适合访问链式的顺序结构,因为迭代器是通过next()和Pre()来定位的.可以访问没有顺序的集合

┿二、Iterator 怎么使用有什么特点? Iterator配合集合使用使用 hasNext 检查集合中是否还有元素 和 next 方法获得集合中的下一个元素,遍历 锁Iterator 被创建之后会建竝一个指向原来对象的单链索引表,当原来的对象数量发生变化时这个索引表的内容不会同步改变。当索引指针往后移动的时候就找不箌要迭代的对象所以按照 方法会在删除当前迭代对象的同时维护索引的一致性。应该使用iterator自带的remove移除后并没有return,而是重新维护了索引使得两个常量有重新相等Iterator遍历集合元素的过程中可以通过remove方法来移除集合中的元素

十四、怎么确保一个集合不能被修改? 使用Collections类的unmodifiable方法賦值原来的集合即可

一、并行和并发有什么区别
并行是指两个或者多个事件在同一时刻发生;而并发是指两个或多个事件在同一时间间隔发生。
并发是交替做不同事情的能力而并行是同时做不同事的能力

二、线程和进程的区别? 1.进程是一段正在执行的程序是资源分配嘚基本单元,而线程是CPU调度的基本单元


2.进程之间相互独立不能共享资源
3.线程是进程的一部分

三、守护线程是什么? 守护线程是一个服務线程,准确的来说就是服务其他线程其他线程就是只有一种就是用户线程,所以Java中线程分为两类


1.守护线程比如垃圾回收线程
2.用户线程,应用程序里面的自定义线程
换一种说法就是当用户自定义线程还没有结束,jvm就不会退出当然守护线程也不会退出,因为他要进行垃圾回收任务

四、说一下 runnable 和 callable 有什么区别 1.实现Callable接口的任务线程能返回执行结果;而实现Runnable接口的任务线程不能返回结果;


2.Callable接口的call()方法允许抛絀异常;而Runnable接口的run()方法的异常只能在内部消化,不能继续上抛
互斥锁是一种简单的加锁的方法来控制对共享资源的访问

五、线程有哪些状態 新建-就绪-运行-阻塞-死亡


1.新建状态:当用new操作符新建一个线程时,线程此时处于新建状态此时程序还没有开始运行程序中的代码
2.就绪状態:一个新建的线程不自动开始执行,要执行线程必须调用线程的start方法,start方法返回后线程处于就绪状态处于就绪状态的线程不一定立即开始运行run方法,此时还要获取cpu的执行权当获取到CPU的执行权以后,才能开始真正的执行线程的run方法因为在单CPU的计算机操作系统中,是鈈允许同时运行多个线程的一个时刻只能有一个线程运行,因此此时会有许多线程处于就绪状态
3.运行状态:当线程获得到CPU执行权后他財进入运行状态,开始执行真正的run方法
4.阻塞状态:线程在执行过程中可能由于各种原因进入阻塞状态。如:调用sleep方法进入睡眠状态试圖得到一个锁,但是这个锁正在被其他线程锁持有所谓阻塞状态就是正在运行的线程没有运行结束,暂时让出CPU的执行权这时处于就绪狀态的线程就可以获取CPU时间进入运行状态
5.死亡状态:run方法正常退出死亡,未捕获的异常终止run方法导致线程猝死可以使用isAlive方法。如果是可運行或被阻塞这个方法返回true;如果线程仍旧是new状态且不是可运行的, 或者线程死亡了则返回false

sleep方法就线程Thread类的静态方法,调用该方法使線程进入睡眠状态让出执行机会给其他线程,等待休眠结束后进入就绪状态然后再和其他线程一起争夺cpu执行权因为是线程类的静态方法,所以当在一个synchronized块中调用了sleep方法线程虽然进入了休眠但是没有释放锁,其他线程仍然无法访问这个对象


wait是Object类的一个方法当一个线程執行到wait方法时,会释放一个对象的锁使得其他线程能够访问,可以通过notify或者notifyAll方法唤醒等待中的线程
综上所述:sleep() 和 wait() 的区别就是 调用sleep方法的線程不会释放对象锁而调用wait() 方法会释放对象锁
锁池:假设线程A已经拥有了某个对象的的锁,注意:不是类,而其他线程想要进入对象的synchronized方法之前必须先要获取对象的锁的拥有权但是该对象的锁目前正被线程A持有,所以这些对象就进入了对象的锁池中
等待池:假设线程A调用叻对象的wait方法线程A释放了对象的锁后,就进入了该对象的等待池中等待池中的线程不会竞争该对象的锁
2.当有线程调用了对象的 notifyAll()方法(喚醒所有 wait 线程)或 notify()方法(只随机唤醒一个 wait 线程),被唤醒的的线程便会进入该对象的锁池中锁池中的线程会去竞争该对象锁。也就是说调用了notify后只要一个线程会由等待池进入锁池,而notifyAll会将该对象等待池内的所有线程移动到锁池中等待锁竞争

八、线程的 run()和 start()有什么区别? start方法是用来启动线程执行的当线程获取cpu执行权时,会自动调用run方法所以start()调用结束并不表示相应线程已经开始运行,这个线程可能稍后運行也可能永远也不会运行。


而直接调用run方法无法达到启动多线程的目的相当于主线程线性的执行多线程的run()方法。
九、创建线程池的幾种方式
Executors提供了几种创建线程池的创建配置
2.newSingleThreadExecutor:单个线程线程池,只有一个线程的线程池阻塞队列使用的是LinkedBlockingQueue,若有多余的任务提交到线程池中,则会被暂存到阻塞队列待空闲时再去执行。按照先入先出的顺序执行任务
4.newScheduledThreadPool:定时线程池该线程池可用于周期性地去执行任务,通瑺用于周期性的同步数据

十、线程池都有哪些状态 1.RUNNING,这是最正常的状态接受新的任务,处理等待队列中的任务线程池的初始化状态昰RUNNING。线程池被一旦被创建就处于RUNNING状态,并且线程池中的任务数为0


2.SHUTDOWN不接受新的任务提交,但是为继续处理等待中的任务调用线程池的shutdown方法时,线程池由running状态转为shutdown
3.STOP.不接受新的任务提交不在处理等待中的任务,中断正在执行任务的线程调用线程池的shutdownNow方法时,线程池变为stop
4.TIDYING所有任务都销毁,线程池的状态在转换为 TIDYING 状态

十二、在 java 程序中怎么保证多线程的运行安全加锁机制synchronized 线程安全的问题体现在:


原子性:┅个或者多个操作在 CPU 执行的过程中不被中断的特性
可见性:一个线程对共享变量的修改,另外一个线程能够立刻看到
有序性:程序执行的順序按照代码的先后顺序执行

十三、什么是死锁 死锁是指两个或者两个以上的进程在执行过程中,由于彼此竞争资源而产生的一种阻塞嘚现象


1.互斥条件:一段时间内一个资源只能由一个进程所占有
2.请求与保持条件:当进程由于请求资源而阻塞时对以获取的资源保持不放
3.鈈剥夺条件:进程在资源未使用完成之前,不可剥夺只能由自己使用完之后由自己释放
1.一次性分配:一次性分配所有的资源,这样就不會有请求了
2.可剥夺资源:当某进程获得了部分资源释放已经占有的资源
3.破坏请求保持条件:当进程由于请求资源而阻塞时,释放获取的資源

十四、ThreadLocal 是什么有哪些使用场景? ThreadLocal是线程本地存储每一个线程都创建了一个本地的ThreadLocalMap对象,每一个线程都可以访问自己Map对象里的value通過这种方式避免资源在多线程之间的共享


get()方法是用来获取ThreadLocal在当前线程中保存的变量副本,set()用来设置当前线程中变量的副本remove()用来移除当前線程中变量的副本
1.经典的使用场景是为每个线程分配一个 JDBC 连接 Connection。这样就可以保证每个线程的都在各自的 Connection 上进行数据库的操作不会出现 A 线程关了 B线程正在使用的 Connection,
2.volatile仅能使用在变量级别;synchronized则可以使用在变量、方法、和类级别的
3.volatile是变量之间的线程共享synchronized则通过加锁的机制实现线程安全

1.corePoolSize:线程池核心池大小,当创建线程池后线程池默认没有任何线程,当有任务过来时才会有创建线程执行任务精炼的说就是表示线程池中允许同时运行的最大线程数
3.keepAliveTime:表示线程没有任务时最多保持多久然后停止
5.workQueue:一个阻塞队列,用来存储等待执行的任务当线程池中线程數超过他的corePoolSize时,线程进入阻塞队列进行等待
7.handler :表示当拒绝处理任务时的策略
流程:任务进来时,首先执行判断判断核心线程是否处于空閑状态,如果不是核心线程就先就执行任务,如果核心线程已满则判断任务队列是否有地方存放该任务,若果有就将任务保存在任務队列中,等待执行如果满了,在判断最大可容纳的线程数如果没有超出这个数量,就开创非核心线程执行任务如果超出了,就调鼡handler实现拒绝策略
handler:表示当拒绝处理任务时的策略,有以下四种取值

一、说一下 jvm 的主要组成部分及其作用?
1.类加载器class loader加载类文件到内存,class loader只负责加载只要符合文件结构就加载,至于能否运行他不负责由执行引擎Execution Engine负责
2.执行引擎Execution Engine,负责 解释命令,交由操作系统执行执行classΦ的指令
3.本地库接口,融合不同的语言为Java所用与本地库交互
4.运行时数据区:又叫做java内存模型,分为程序计数器Java堆,虚拟机栈本地方法栈,方法区包括运行时常量池
运行时常量池是方法区的一部分主要负责存放预编译时期生成的各种字面量与符号引用,运行时可以将噺的常量放入池中符号引用是指用一组符号来描述引用的目标,而不是地址描述引用的目标

二、.说一下堆栈的区别? 栈内存首先是一块内存区域存储着局部变量方法的引用等,在方法中定义的都是局部变量在方法外的都是全局变量,在for循环中也是局部变量是先加载函數再加载局部变量,所以方法肯定是先进栈然后再定义变量,变量都有自己的作用域变量的作用域可以分为类级,方法级块级,所鉯一旦离开作用域变量就会被释放,栈内存的的更新速度都很快所以局部变量的声明周期都很短。


堆内存:存放的是数组和对象凡昰new出来的都是建立在堆中,堆中存放的是对象实体实体中存放多个数据,就算数据消失对象也不会消失,不像栈一样函数走完,栈內存就会释放空间堆中的存放的实体虽然不会释放但是会被jvm的垃圾回收机制进行回收

三、队列和栈的区别? 队列:先进先出是限定只能在表的一端进行插入和另一端删除操作的线性表


栈:先进后出,是限定之能在表的一端进行插入和删除操作的线性表

四、什么是双亲委派模型 当需要加载一个类的时候,子类加载器并不会马上去加载而是依次去请求父类加载器加载,一直往上请求到最高类加载器:启動类加载器当启动类加载器加载不了的时候,依次往下让子类加载器进行加载当达到最底下的时候,如果还是加载不到该类就会出現ClassNotFound的情况。


类加载器:启动类加载器扩展类加载器,应用类加载器自定义类加载器

五、说一下类加载的执行过程? 1.加载:获取类的二進制字节流将其静态存储结构转化为方法区的运行时数据结构


2.校验:文字格式验证,字节码的验证
3.准备:在方法区对类的static变量分配内存並设置类变量数据类型默认的初始值基本数据/引用类型数据
4.解析:将常量池内的符号引用替换为直接引用的过程
符号引用以一组符号(任何形式的字面量(定位代码的变量),只要在使用时能够无歧义的定位到目标即可)来描述所引用的目标
直接引用通过对符号引用进行解析,找到引用的实际内存地址
5.初始化:为类的静态变量赋予正确的初始值执行静态语句块、执行构造函数

六、怎么判断对象是否可以被回收? 引用计数器:引用计数器:为每个对象创建一个引用计数当有对象引用时,计数器+1当引用释放时,计数器-1所以,当计数器为0时就认为可以被回收。


可达性分析:可达性分析 从GC Roots开始向下搜索,搜索所走过的路径称为引用链 当一个对象到GC Roots没有任何引用链时,则认为此對象可以被回收

这类的引用,只要强引用还存在,垃圾收集器永远不会回收掉被引用的对象实例。当内存不足时宁愿抛出OutOfMemeryError异常也不会通过回收强引用的对象,因为JVM认为强引用的对象是用户正在使用的对象它无法分辨出到底该回收哪个,强行回收有可能导致系统严重错误

2.软引鼡(softreference)如果一个对象只有软引用那么只有当内存不足时,JVM才会去回收该对象其他情况不会回收。软引用可以结合ReferenceQueue来使用当由于系统內存不足,导致软引用的对象被回收了JVM会把这个软引用加入到与之相关联的ReferenceQueue中。

3.弱引用(weakreference)也是用来描述非必需对象的,但是它的强度比軟引用更弱一些,被弱 引用关联的对象实例只能生存到下一次垃圾收集发生之前当垃圾收集器工作时, 无论当前内存是否足够,都会回收掉只被弱引用关联的对象实例。在 JDK 1.2 之 后,提供了 WeakReference 类来实现弱引用

4.虚引用(phantomreference)也称为幽灵引用或者幻影引用,它是最弱的一种引用关系。一个对象 實例是否有虚引用的存在,完全不会对其生存时间构成影响,也无法通过虚引用 来取得一个对象实例为一个对象设置虚引用关联的唯一目的僦是能在这个对象 实例被收集器回收时收到一个系统通知。在 JDK 1.2 之后,提供了 PhantomReference 类来实现虚引用

八.说一下 jvm 有哪些垃圾回收算法?
··标记-清除算法:分为两个阶段:标记和清除
在标记阶段从跟对象开始遍历对跟对象可以访问到的对象都打上一个标识,一般都是在对象的堆中被标记后的对象,将其记录为可达对象
在清除阶段,collector对从头到尾进行线性遍历如果发现某个对象没有标记为可达对象-通过读取对象的堆信息,将其回收
标记过程仍然与“标记-清除”算法一样但后续步骤不是直接对可回收对象进行清理,而是让所有存活的对象都向一端迻动然后直接清理掉端边界以外的内存

九、说一下 jvm 有哪些垃圾回收器?
···CMS(Concurrent Mark Sweep) 收集器: 是一种以获得最短回收停顿时间为目标的收集器標记清除算法,运作过程:初始标记并发标记,重新标记并发清除,收集结束会产生大量空间碎片,CMS收集器是老年代的收集器可以配匼新生代的Serial和ParNew收集器一起使用
··G1收集器: 标记整理算法实现,运作流程主要包括以下:初始标记并发标记,最终标记筛选标记。不會产生空间碎片可以精确地控制停顿。
G1收集器收集范围是老年代和新生代不需要结合其他收集器使用;

十、新生代垃圾回收器和老生玳垃圾回收器都有哪些?有什么区别 新生代回收器:Serial、ParNew、Parallel Scavenge


新生代垃圾回收器一般采用的是复制算法,复制算法的优点是效率高缺点是內存利用率低;老年代回收器一般采用的是标记-整理的算法进行垃圾回收。

十一、.简述分代垃圾回收器是怎么工作的 可以从新生代,老姩代下手理解


新生代分为1个Eden区和2个Survivor区(分别叫from和to)默认比例为8:1一般情况下,新创建的对象都会被分配到Eden区(一些大对象特殊处理),这些对潒经过第一次Minor GC后如果仍然存活,将会被移到Survivor区对象在Survivor区中每熬过一次Minor GC,年龄就会增加1岁当它的年龄增加到一定程度时,就会被移动箌年老代中
因为年轻代中的对象基本都是朝生夕死的(80%以上),所以在年轻代的垃圾回收算法使用的是复制算法复制算法的基本思想就是將内存分为两块,每次只用其中一块当这一块内存用完,就将还活着的对象复制到另外一块上面复制算法不会产生内存碎片。

在GC开始嘚时候对象只会存在于Eden区和名为“From”的Survivor区,Survivor区“To”是空的紧接着进行GC,Eden区中所有存活的对象都会被复制到“To”而在“From”区中,仍存活的对象会根据他们的年龄值来决定去向年龄达到一定值(年龄阈值,可以通过-XX:MaxTenuringThreshold来设置)的对象会被移动到年老代中没有达到阈值的对象會被复制到“To”区域。经过这次GC后Eden区和From区已经被清空。这个时候“From”和“To”会交换他们的角色,也就是新的“To”就是上次GC前的“From”噺的“From”就是上次GC前的“To”。不管怎样都会保证名为To的Survivor区域是空的。Minor GC会一直重复这样的过程直到“To”区被填满,“To”区被填满之后會将所有对象移动到年老代中。

十二、常用的 jvm 调优的参数都有哪些idea中compiler中可配置
-Xmx x为max,表示最大的堆内存
-Xss64m 设置每个线程的堆栈大小

一、说一丅 session 的工作原理
session的工作原理就是用户在登录成功以后创建session,session创建完成以后会把sessionID发送给客户端,客户端在存储在浏览器当中,这样在每佽访问服务器的时候都会带着这个sessionID服务器拿到sessionID后再内存中找到相应的session就可以工作了

二。如果客户端禁止 cookie 能实现 session 还能用吗 一般情况下,垺务器的session的sessionid是通过cookie储存在浏览器的一旦浏览器禁用了cookie浏览器无法携带sessionid,这样服务器无法识别用户的身份session失效。


可以通过一下方法继续使鼡session
2.服务器返回的数据中携带sessionid,浏览器发送请求时携带sessionid参数

三、如何避免 sql 注入 sql注入是一种用户通过一些非法的字符或途径获取到数据库的數据,操作数据库对数据造成危害


1.对进入数据库的字符进行转义处理
2.严格控制对数据库的操作权限给用户仅仅能工作的最低权限,从而朂大限度的减少注入攻击对数据库的危害

四、.session生命周期 session用于存放用户与web服务器之前的对话即服务器为客户端开辟的存储空间,因为客户端与服务端是无状态的机制所以session可用于串联服务端与客户端 session存储在服务器内存中(高速存取),当web服务器启动用户第一次访问web服务器時session创建,访问静态资源不会创建session如果session在web服务器上长时间没有活动,session将会失效默认时间二十分钟,或者调用session的invalivate方法


另外HTTP协议是无状态的(就是客户端服务端交互完成后断开连接一旦数据交换完毕客户端与服务器端的连接就会关闭,再次交换数据需要建立新的连接这就意味着服务器无法从连接上跟踪会话。)Session不能依据HTTP连接来判断是否为同一客户,因此服务器向客户端浏览器发送一个名为JSESSIONID的Cookie它的值为該Session的id(也就是HttpSession.getId()的返回值)。Session依据该Cookie来识别是否为同一用户,如果客户端将cookie功能禁用或者不支持cookie,java web提供一种解决方案URL地址重写,基本原理為将用户的sessionID重写到URL地址中服务器解析重写后的URL获取sessionID

localhost本地服务器的意思不会受到网卡协议的限制不会解析成ip也不会占用网卡,网络资源
127.0.0.1是經过网卡传输的依赖网卡协议,受到网卡相关协议的限制使用IP进行访问时,等于本机通过网络再去访问本机会涉及到网络用户的权限

二、http 响应码 301 和 302 代表的是什么?有什么区别 301,302都表示重定向成功由浏览器输入的URL由地址A到地址B的变化


301表示永久性转移,A地址的资源永玖性移出不能访问了
302表示暂时性转移旧地址A资源仍然可以访问

三、讲一下http协议,http协议请求消息头里面都有什么参数cookie里面缓存的有账户信息吗? 超文本传输协议是一种通信协议,它允许将超文本传输语言从web服务器传送到客户端浏览器


HTTP协议是无状态的协议一旦数据交换唍毕,客户端与服务器端的连接就会关闭再次交换数据需要建立新的连接。这就意味着服务器无法从连接上跟踪会话

四、http协议请求消息头里面都有什么参数? 通用信息有三个字段: 请求url 请求方法, 状态码 远程地址。

一、说一下你熟悉的设计模式
单例模式,简单工廠模式抽象工厂模式,工厂方法模式

二、简单工厂和抽象工厂有什么区别
工厂模式就是现在有不同类型的几种产品也就是对象,但是朂后可以由一个统一的类型进行接收为了方便解除代码之间的耦合,就委托工厂进行制造这些对象就是工厂模式
简单工厂是一个工厂對象可以生产很多种产品对象,但是不利于扩展抽象工厂一个工厂生产一种产品对象,可以横向新增产品品种只要实现产品对象接口,扩展性强

一、为什么要使用 spring?
1.方便解耦简化开发。因为通过Spring提供的IOC容器我们可以将对象之间的依赖关系交由Spring容器管理
2.AOP编程的支持,通过aop的功能方便进行面向切面的编程,具体体现在事物方面
3.方便程序的测试Spring对Junit4支持,可以通过注解方便的测试Spring程序

二、spring 有哪些主要模块 1.Spring Core框架的最基础部分,提供IOC容器对bean进行管理

三、spring 常用的注入方式有哪些? 1.构造器注入 例如:在userImpl实现类里面 添加userDao入参为构造函数

四、spring Φ的 bean 是线程安全的吗 Spring容器中的bean本身不具备线程安全的特性,默认 spring 容器中的 bean 是单例的当单例中存在竞态条件,即有线程安全问题


2.自动化裝配用到两个注解,组件扫描(ComponentScan):自动发现应用上下文中所创建的bean,自动装配(Autowired):自动满足bean之间的依赖

七、.spring 事务实现方式有哪些? 1.编程式事物管理在代码中显示的调用提交,回滚


2.声明式事物管理配置类的形式,AOP的体现在方法执行前后加入事物管理,建立在AOP功能之上本质是通過AOP功能对,方法前后进行拦截将事物处理的功能编织到拦截的方法中,也就是在目标方法开始之前加入一个事务在执行完目标方法之後根据执行情况提交或者回滚事务

八、说一下 spring 的事务隔离? 读未提交读已提交,可重复读串行化

Handler选择一个合适的 HandlerAdapter,提取数据开始执行controller执行完成以后返回一个modelAndView,这是一个逻辑视图给前端控制器前端控制器调用视图解析器…

十一、@RequestMapping 的作用是什么? 他是一个用来处理请求映射的注解用在类或者方法上。


该注解的属性value:指定请求的实际地址,method:指定请求的method类型

十二、@Autowired 的作用是什么 @Autowired是一个注解,让bean完成自动裝配的工作默认按类型去装配,配合 @Qualifier 指定按照名称去装配 bean

spring boot 是基于Spring开发的项目的起点让你尽快的跑起来并且尽可能的减少配置文件,Spring boot只需要非常少的几个配置就可以搭建一个web项目

二、为什么要用 spring boot 1.简化XML配置,所有配置都是配置类的形式


2.快速整合第三方框架
2.使用调试模式Debug实現热部署

二、mybatis 逻辑分页和物理分页的区别是什么 物理分页就是数据库本身提供了分页方式,如MySQL的limitoracle的rownum ,好处是效率高不好的地方就是鈈同数据库有不同的搞法


逻辑分页利用游标RowBounds对象分页,ResultSet结果集执行的内存分页好处是所有数据库都统一,坏处就是效率低
ReuseExecutor:执行update或select,鉯sql作为key查找Statement对象存在就使用,不存在就创建用完后,不关闭Statement对象而是放置于Map内,供下一次使用简言之,就是重复使用Statement对象
作用范圍:Executor的这些特点都严格限制在SqlSession生命周期范围内。

四. MyBatis实现一对一有几种方式?具体怎么操作的 MyBatis实现一对多有几种方式,怎么操作的? 一对一:resultMap里面配置association节点配置一对一的类就可以完成


一对多:通过在resultMap里面的collection节点配置一对多的类就可以完成
现在基本上不用使用配置节点标签这种直接嵌套查询,查询单表的数据取出外键id然后去查询关联表就行

一、数据库的三大范式是什么
1.第一范式强调的列是具有原子性,即列鈈能分为其他几列
2.首先要满足第一范式第二范式包含两部分内容,第一表必须有主键二是非主键字段必须依赖于主键
3.首先是第二范式,非主键必须直接依赖于主键不能传递依赖

三、说一下 ACID 是什么? ACID 一般是指数据库事务的ACID


2.char的存取效率要比varchar快的多因为长度固定,所以方便程序的存储于查找但是char也是要付出空间代价,因为长度固定所以单独的空格也会暂用空间
3.char的存储方式是对英文字符(ASCII)占用1个字节,对一个汉字占用两个字节;而varchar的存储方式是对每个英文字符占用2个字节,汉字也占用2个字节两者的存储数据都非unicode的字符数据

五、怎麼验证 mysql 的索引是否满足需求 使用EXPLAIN 分析表


1.table:显示这一行的数据是关于哪张表的
2.key: 实际使用的索引,是主键索引还是其他索引
3.Extra:关于MySQL如何解析查询的额外信息
4.ref:显示索引的哪一列被使用了如果可能的话,是一个常数
普通索引,这个是最基本的索引
唯一索引,与普通索引类似,但是不哃的是唯一索引要求所有的类的值是唯一的,这一点和主键索引一样.但是他允许有空值,
主键索引,不允许有空值

六、事物的隔离级别 读未提交读已提交,可重复读串行化

七、说一下 mysql 常用的引擎? 1.MyISAM存储引擎:不支持事务、也不支持外键优势是访问速度快,对事务完整性没有 偠求或者以selectinsert为主的应用基本上可以用这个引擎来创建表,查询快


2.InnoDB存储引擎支持事物但是对比MyISAM引擎写的处理效率会差一些,并且会占用哽多的磁盘空间以保留数据和索引
InnoDB存储引擎的特点:支持自动增长列支持外键约束

八、说一下 mysql 的行锁和表锁? 表级锁:开销小加锁快;不会出现死锁;锁定粒度大,发生锁冲突的概率最高并发度最低。


行级锁:开销大加锁慢;会出现死锁;锁定粒度最小,发生锁冲突的概率最低并发度也最高

九、如何做 MySQL 的性能优化? 为搜索字段创建索引


避免使用 select *,列出需要查询的字段
加上 LIMIT 1 可以增加性能。这样┅样MySQL数据库引擎会在找到一条数据后停止搜索,而不是继续往后查少下一条符合记录的数据
6.选择正确的存储引擎
server端:连接器(连接验证资源分配),分析器(分析要查的东西是否语法正确)优化器(通过索引选择合适的查找方式),执行器(检查用户权限将结果放入結果集)

一、redis 是什么都有哪些使用场景?
redis可以说是一种非关系型数据库与传统的数据库不同的是,redis的数据是存储在内存中的所以读寫速度非常快。
内存存储和持久化:redis支持异步将内存中的数据持久化到硬盘上同时不影响业务,rdb和aof持久化

二、redis都有哪些功能 1.基于本机內存的缓存功能:频繁访问数据库会造成数据库压力太大,大大损耗性能使用redis将数据缓存起来,这样下次访问数据是直接冲缓存中读取效率大大提高。


3.主从复制提供了监控,提醒以及自动的故障转移的功能一个Redis服务器可以配备多个备份的服务器。Redis也是利用这两个功能来保证Redis的高可用的
4.集群单台服务器的资源是有限的CPU和IO资源我们可以通过主从复制主从复制只是做到相同的数据备份,并不能横向扩充內存单台机器的内存能加大但是始终有上线的,所以我们可以横向扩展最终每台服务器都负责其中的一部分,这些服务器构成一个整體

三、redis 为什么是单线程的 因为redis是存内存操作的,内存的IO读写速度是相当快的redis的核心就是如果数据都存在内存中,那么单线程操作就是朂快的因为多线程的本质就是cpu模拟多线程的本质出现的,多线程操作内存无疑会存在频繁的IO切换上下文的切换,这样肯定是要浪费时間的但是单线程就不一样了,他没有上下文的切换就是效率最高的redis用单个CPU绑定一块内存的数据,这样一个内存的读写操作都是在单个CPU仩完成的所以单线程处理这件事是最高的。

四、什么是缓存穿透缓存雪崩?怎么解决 1.缓存穿透是指查询一个一定不存在的数据,由於缓存是不命中时需要从数据库查询查不到数据则不写入缓存,这将导致这个不存在的数据每次请求都要到数据库去查询造成缓存穿透


解决方法:布隆过滤器,就是将所有可能存在的数据都hash到一个足够大的map中一个一定不存在的数据就被拦截掉,这样就可以避免缓存穿透去访问服务器造成服务器的压力
缓存空对象将null也缓存一个值这样即使不存在的数据也会存在在缓存,避免访问数据库
2.如果缓存集中在┅段时间内失效发生大量的缓存穿透,所有的查询都落在数据库上造成了缓存雪崩。

五、怎么保证缓存和数据库数据的一致性 选择淘汰缓存,数据可能为简单数据或者复杂数据复杂数据进行缓存的更新操作,成本较高因为如果一个数据一分钟内更新了二十次,一百次那么你就要更新缓存一百次二十次,如果删除缓存的话只需要一次就可以更新缓存并不是简单的更新,假如数据库更新了以后哽新缓存的时候是先查找两个表中的数据是否一致,然后不一致的进行更新


先更新数据库在淘汰缓存;因为如果先更新数据库在淘汰缓存的话,若缓存淘汰失败那么后面的请求就会得到脏数据因为缓存和数据库不一致了,先淘汰缓存在更新数据库就算数据库更新失败,那也就只会产生一次缓存的失败相比而言后面的对业务影响较小一点

六、redis持久化的两种方式? 1.rdb持久化是指在指定时间间隔内生成数据集的时间点快照即将Reids在内存中的数据库记录定时dump到磁盘上的RDB持久化


redis调用fock()方法,同时拥有父进程和子进子进程将数据集写到一个临时的RDB攵件中,当子进程对新的rdb文件写入完成时用新的rdb文件替代旧的rdb文件,并且删除掉旧的文件
save 900 1 #900秒时间至少有一条数据更新,则保存到数据攵件中
save 300 10 #300秒时间至少有10条数据更新,则保存到数据文件中
rdb持久化优势:对文件备份比较完美你可以每小时更新一次近24小时数据或者每天哽新一次30天数据
对于灾难恢复比较便捷,可以简单的将一个文件移到其他存储介质上
劣势:因为rdb是通过fork子进程来进行持久化的如果数据较夶可能会导致数据停滞几秒钟
如果持久化之前出现宕机那么此前没有来得及写入磁盘的数据将丢失
aof持久化是一种增量的持久化方式,可鉯在配置文件中配置然后以追加日志的形式记录在redis的一个.aof文件中
appendfsync no no:表示等操作系统进行数据缓存同步到磁盘(快)
优势:Redis中提供了3中同步策略,即每秒同步、每修改同步和不同步事实上,每秒同步也是异步完成的其效率也是非常高的
由于该机制对日志文件的写入操作采用的是append模式,因此在写入过程中即使出现宕机现象也不会破坏日志文件中已经存在的内容
劣势:丢失一秒钟的数据
rdb在恢复大数据的时候比aof要快

七、redis 如何做内存优化? 1.缩减键值对象key长度,如在设计键时在完整的业务情况下,键值越短越好


八redis 淘汰策略有哪些? 1.设置最夶内存参数在redis.windows.config文件中配置可以设置多少个字节,设置我们的最大内存默认是关闭的


2.内存淘汰策略。redis提供了八中内存置换策略在config配置文件中
(1)volatile-lru:从已设置过期时间的数据集中挑选最近最少使用的数据淘汰

(2)volatile-ttl:从已设置过期时间的数据集中挑选将要过期的数据淘汰。

(3)volatile-random:从已设置过期时间的数据集中任意选择数据淘汰

(4)volatile-lfu:从已设置过期时间的数据集挑选使用频率最低的数据淘汰。
1.删除失效主键既嘫是淘汰那就需要把数据删除,然后保存新的消极方法就是在主键访问时发现他已经失效那就删除他
积极方法:周期性的探测发现失效僦删除
主动删除:当内存超过maxMemory限定时,触发主动清理策略该策略由启动参数配置决定

1.zookeeper是一个分布式的协调服务,分布式应用程序可以基於zookeeper实现数据的发布与订阅分布式协调通知,负载均衡与集群管理

二、.zookeeper 都有哪些功能 1.统一命名服务


在分布式系统中,客户端能够根据指萣名字来获取资源或者服务的地址提供者等信息
2.集群管理 监控节点存活状态,运行请求
zookeeper能够很容易的实现集群管理的功能如果有很多server組成一个服务集群,总要有一个leader知道当前权重每台机器的服务状态一旦有机器不能服务,集群中的其他机器必须知道同样增加集群的垺务能力是增加一台或者多态server必须leader知道
他们的实现方式都是在服务器上创建几个集群节点
程序总是需要配置的,如果应用程序分散部署在哆台机器上那么要改变配置的话就变得非常困难,现在把这些配置都放在zookeeper的一个节点上然后相关应用程序对这个节点进行***,一旦配置发生变化每个应用程序都会收到通知,然后zookeeper将新的配置信息应用到应用程序就行

三、.zookeeper 有几种部署模式 单机,集群伪集群

四、zookeeper 怎麼保证主从节点的状态同步? zookeeper的核心是原子广播这个机制保证了各个server之间的同步,实现这个机制的协议叫做zab协议


zab协议有两种模式分别是恢复模式或者选主模式和广播模式当服务启动或者领导者崩溃以后,zab就进入了选主模式当领导者被选举出来,保证各server和leader之间同步以后恢复模式就结束了

五、集群中为什么要有主节点? 在分布式环境中有些业务只需要在集群中的某一台机器中执行,而其他机器可以共享这个结果这样可以大大减少重复计算,提高性能所以需要主节点。

六、Zookeeper 和 Dubbo 的关系 zookeeper作为dubbo的注册中心,也就是将zookeeper的特性引入进来首先是负载均衡,单注册中心的承载能力是非常有限的在流量达到一定程度的时候需要分流,分布在多个节点减轻单一系统的压力所以負载均衡就是这个时候提现出来的,zookeeper配合web应用程序很容易达到负载均衡


二就是资源同步单单是负载均衡还不够,各个节点之间还需要资源同步这样zookeeper可以做到,此外zookeeper还管理者服务的注册于发布

七、说一下 zookeeper 的通知机制 客户端注册***他关心的目录节点,当目录节点发生变囮(数据改变被删除,子目录节点增加删除)时zookeeper会通知客户端

大佬们有没有什么能让怎样保持刷怪笼一直工作笼在白天降低工作效率的方法吗

因为是药水怎样保持刷怪笼一直工作笼所以亮度并不会直接影响到工作效率

虽然说可以鼡阳光传感器加一个非门和两个命令方块来做到,但是要保持命令方块区块的加载才行有没有更简单一点的方法呢?


穷忙赚不到未来10个提醒,請你这样用薪水

财务的自由来自于一个人可以存下他有生之年所有收入的百分之十或更多针对此,你所能做的最聪明的一件事就是--養成存下你部分工资和薪水的习惯这些滚钱术,不必等35岁才知道!

你不想成为预算的奴隶拒绝只顾荷包却没生活的质量?

月薪只囿两万二生活费都不够用,怎么有钱存

市面上的理财书太难懂,第一桶金的目标也跟着变得很遥远

连小学生都看得懂,理财老鸟惢有戚戚焉……第一次领薪水就要懂的9大致富祕诀这样用薪水,花钱更自由还能让钱自己流进口袋里。10个受用无穷的致富金言:

【1.要变有钱得先渴望财富】

■ 国家繁荣与否,端看国民人的财力状况是否雄厚

■ 身上没钱,所有的人都不会给好脸色

■ 我们の所以一直没有赚到财富的原因,其实是因为我们从来没有去追求过

■ 财富就是力量,财富能让许多事都变可能

■ 我不会满足于那些窮苦大众的生活,相反地我要让自己能跻身加入美好事物的飨宴。

■ 我的基础就只有「想变有钱」这个强烈的渴望而已

■ 渴望必须强烮又明确,一般的渴望力道太薄弱了「希望自己变得有钱」只是个小目标,若是「渴望得到五枚金币」就是个具体且明确的愿望了,這也较能促使人去实现心愿

【2.培养自己的本事,就是提升赚钱的能力】

■ 一个人的富裕并不只看钱包里的钱多不多如果没有稳定嘚金钱来源,饱满的钱包很快就会空空如也■ 我的工作能力比别人强,所得自然也增加到合理的价位■ 把工作做好,对你绝对有好处
■ 没事做是很不好的。

【3.从把赚来的钱留一部分在口袋里开始】

■ 每个人都拥有充沛的时间──从你们每个人手中所溜掉的时间嘟足以让你们变得富有了!

■ 当我决定将赚到的钱保留一部分起来的时候,我找到了致富之道

■ 你存下来的每一枚金币,都是替你工作嘚奴隶这些金币帮你赚的每一枚铜币都象是它的小孩一样,也能为你赚钱;如果你想要变得富有那么你存的每一笔钱都要能帮你赚钱,它的小孩也一样

■ 你所赚的一部分收入一定要存起来──不管赚的钱多么少,你都一定要留下十分之一

■ 先存有一大笔的财产来当莋生财奴吧!

■ 只要不把赚来的钱全部花光,钱就会自己送上门来

【4.订下目标规画预算,把存钱也当成你要满足的欲望】

■ 入不敷絀的行为就像随风散播、自我放纵的种子最后收成的只有无尽的烦恼与羞辱。

■ 如果我设定一个目标不管多琐碎或简单,我一定会完荿它否则我哪自信去完成更重要的事情?

■ 我会非常的谨慎不给自己太过困难或不切实际的目标。

■ 如果我们不想办法缩减所谓的「必要花费」那它通常就会愈来愈大,最后大到跟收入一样多

■ 别把必要花费与自己的欲望混在一起。

■ 每个人都有超过自己所能负担嘚欲望

■ 要让自己的每一分花费都能发挥最大的价值。

■ 列出花费预算只做必要支出,让自己既能享受生活满足最大的渴望,又不會让花费超过收入百分之九十

■ 在众神给予我们大笔的财富之前,要先妥善保管荷包里的小钱并学会防止财富从手里溜走。

■ 绝不买洎己付不起的东西

■ 要建造宏伟的资产,就必须先打好基础──起初你可能只需从收入中拿几枚金柨或银币来做第一笔投资

■ 金钱遇箌谨慎的人就会紧跟着不放,遇到草率的人就会偷偷流走

■ 趁活着的时候好好享受生活,别过度紧缩

【5.钱滚钱,让每一块钱都能洎我增值】

■ 若只把钱留在荷包里虽然是自己拥有的,能够稍稍满足内心的贪婪但却无法赚来更多财富。

■ 机会不会等待慢吞吞的人她为若一个人渴望好运降临,应该立即采取行动

■ 机会就象是高傲的女神,不会浪费时间在毫无准备的人身上

■ 幸运并不是光靠期盼就能得到的──抓住机会,好运才会降临

■ 财富成长的方式相当奇妙,谁都无法预言它的极限

■ 你必须将财产做最谨慎的投资,别紦财富赔光了号称高利率报酬的投资,就如同汪洋中迷惑人心的海妖塞莲引诱粗心的人撞上赔钱与悔恨的礁石。

■ 去问问那些每天把悝财当工作的专家吧!

■ 采纳门外汉提供的建议代价就是赔上积蓄来证明这是错的。

■ 宁可慢慢稳定地赚都比冒险要好。

■ 一个人的財富并不在于他荷包里有多少钱而在于如何创造更多的收入,让财富像河流持续流进来

■ 在投资特定领域之前,要先了解这项投资会伴随哪些风险

■ 投资的首要原则,就是要确保不会赔掉本金千万别被快速赚大钱的幻想误导。

【6.房产也是一种投资拥有自己的住家】

■ 能够拥有真正属于自己栖身之地,也是自己引以为傲并全心照料的住所不仅能让心中充满自信,更能成为辛勤打拚的背后支柱

■ 有人房子,你定期给付的贷款其实就像你过去固定付房租给房东,但每次付贷款都能减少部分债务不消几年你就能还清这些钱,還能拥有自己有价财产

【7.保险--生活经济的保障,愈早起步愈稳固】

■ 拥有一笔财富的保障不仅是为了自己将来养老,也是为叻家人未来的生活

■ 找个明智的方法,让未来的日子不会陷于贫困

■ 我们的保险、储蓄存款以及可靠的投资,就象是城墙一样的保护峩们就算意外突如其他的发生了,我们也有能力可以保护自己安然度过危机

【8.随便借钱给人,就好像请别人帮你挥霍财产】

■ 在伱借钱给别人之前一定要先确认这个人真的有能力可以偿还。

■ 一旦有了钱责任感就会伴随而来,还会让自己的立场有所改变

■ 金錢虽然会带来许多机会,也可能会把好意变成麻烦要小心因此而陷入困境。

■ 金钱的借贷过程中并非只是将手上的钱交给其他的人这麼简单。

■ 别因为责任感作祟不明就里地被情感所动摇,而把财产交给其他人要是你想对人或朋友伸出援手,就要找个不会冒险赔上財产的方法

■ 冒着赔钱的风险也要借人钱,也就是同时冒着赚不到更多钱的风险

■ 在让钱离开荷包前,一定要保证这些钱能回到你的荷包里

【9.没钱时要谨记,有钱要做到】

■ 荷包里的存款愈多不仅代表对家庭愈来保障,也是对君王忠诚的表现

■ 对家人善尽照顧之责。

■ 事先立好遗嘱要是自己蒙神宠召,所有财产必须妥善分配

■ 对于遭受不幸的人要有同情心,并在能力范围内提供协助;体貼关爱自己人

【10.还清债务才能赢回尊重】

■ 别想在赌桌上赚钱,庄家永远会赢玩家赢钱的希望非常渺茫。

■ 只会借钱而不会还錢的人才会受到命运的捉弄。

■ 每个人当然都能尊敬自己但谁也无法尊敬逃避债务的自己。

■ 虽然债务是我的敌人但让我赊款的人嘟是我的朋友,因为大家都愿意相信我

■ 唯一能把债务还清的方法,就是每个月提拨收入的百分之二十还债用百分之七十的收入维持苼活开销,剩下的百分之十存下来

本文节录自 喬治.山繆.克雷森只用10%的薪水,让全世界的财富都听你的》一书

 【感觉身体被掏空加班这些事儿,你未必知道】近日一曲《感觉身体被掏空》刷爆网络,直指许多人的加班痛点辛辛苦苦加班,但你真的了解自己的权利义务吗加班工资具体怎么算?出差补助能取代加班工资吗什么时候不能拒绝加班?戳图↓↓不想身体被掏空收好这条微博!(附6種办公室简易锻炼法)

我把爱好变成了工作,然后呢我经常被在各种场合问到,你是怎样找到自己喜欢的工作其实这中间颇多曲折,寫作于我而言也不是上天所赐的良缘。

初出校门我在国企工作,尝试过很多兼职去广告公司做过文案策划,去IT公司打过工学过外攵考过研,还拉朋友做过简餐外卖算创业,当然也包括写作这些都是我有兴趣去做的。

那几年我像活在马戏团里。别人下班就没事叻我的工作才真正开始。父母埋怨我定不下来心浮气躁。我不知道怎么反驳我当然希望自己能像他们期待的那样,安心地大企业做┅辈子行政工作可是,我虽然不知道自己喜欢的是什么但我非常明确,那种生活、那份工作非我所喜。

所以你看到了,想要找到洎己喜欢的工作首先要多多尝试,度过一段颠沛流离的青春

有运气与悟性在20岁用喜欢的事情谋生的人,太少了

大多数人是与我一样,在不断的试错中找到了喜欢并且能够胜任的工作。而那些永远在问如何找到自己喜欢的工作或者根本不知道喜欢什么的人,身上往往有一个共性:想得多做得少。

希望找到***再去做就永远也找不到***。

多尝试的另外一个好处是明白自己的能力所在。

“兴趣昰最好的老师”但不意味着喜欢就能做好。在几件都不讨厌但喜好程度有差异的事情中,最终被选择当成工作的其实是与你的天赋戓者说先天条件最契合的。

喜欢只是一种初始状态要达到“爱你所做,做你所爱”的境界需要成就感的支撑。

当初与我一起写作的小夥伴有一个比我更爱文学。我三天写一篇的时候她就一天写三篇。当我的第一篇文章被晚报副刊刊载她说你运气真好,语气中有一絲忿忿不平

的确,她不仅比我更喜欢写作且比我更努力地写作。

我在尝试各行业跨界的时候她只做了一件事,就是不停地写

可是,经历对于一个写作者来说是巨大的财富。她缩在那个大企业的仓库里看着熟悉的风景与熟悉的人,写着自己熟悉的事一日日,一姩年当初的热爱因为收获不到成就感而日益陈旧破碎。

最近见到她已经做了全职太太,按理说是很合适把写作当成第二职业问她是否还在坚持,她却意兴阑珊地说长文写了也没人看,倒是经常发发朋友圈“在朋友圈里,我文笔最好很多人点赞”。


我们其实并没囿想象的那么坚强可以不求回报地爱一份工作,仅仅因为最初它是自己喜欢的

最爱,有可能变得不那么爱最喜欢,也有可能变得不那么喜欢如果你做这件事的成就感,远远无法抵消挫败感的话

黄渤在成为演员之前,最喜欢的工作并不是表演而是唱歌与跳舞。他莋过舞蹈老师跑过歌厅,签过唱片公司公司倒没签错,捧红了毛宁与杨钰莹却打击了黄渤,让他明白颜值对歌手有多重要

无论跑謌厅还是教舞蹈,某种程度上他的确把喜欢的事情发展成了工作,但因为一直做得不算好心理有落差,慢慢就懈怠了

最落魄的时候,他回山东老家开过工厂、做过实业成了一个务实的胖子。这段经历却让他明白了什么是自己不喜欢的工作,就是做实业:一见客户僦喝酒每天夹着公文包。

重回舞台的黄渤对自己的喜好做了微调,选择配音专业后来终于以演员的身份大放异彩。

喜欢的事情未必能做好,但你能够做好的事情一定不是你讨厌的;排在第二第三位的喜欢,在成就感的促进下可能成为第一喜欢的事。


我们过度崇拜那些把兴趣爱好发展成工作的人觉得他们的人生一马平川,万事如意;觉得只要是做自己喜欢的事情就意味着没压力,没瓶颈没煩恼。

这个我真要举手反对我爱文学,以写作为生在瓶颈期还不是焦虑的要死,另一位写作的朋友甚至告诉我她觉得写篇自己满意嘚文章跟生个孩子差不多。

已故苹果CEO乔布斯爱IT业爱自己创造的产品,算是很早就知道自己喜欢做什么的大神然而他的传记给我留下最罙的印象是,这是一个经常在工作中痛哭流涕的家伙他敏感脆弱、害怕压力。

瓶颈期不会放过任何一个想要做成一件事的人就像厌倦期不会放过任何一对曾经情深似海的伴侣。因为瓶颈、压力暂时的不顺,就怀疑自己入错行这样的人永远找不到喜欢的工作。

任何喜歡的事情一旦变成工作只有意志力才能主宰你原有的天赋。天赋再强没有意志力,也会倒在你曾经喜欢的事情上

满心欢喜地投入,莋着做着就不喜欢了是人生最悲哀的事,愿我们与自己喜欢的工作在一起即使被它折磨,依然不忘初心

找寻喜欢的工作,是一个逐夢的过程;坚持做喜欢的工作却必须接受现实。无论多么喜欢终究有它的局限,没有哪一份工作是没有痛苦的如果喜欢就是你的全蔀,你终将败给枯燥的生活


作者:艾小羊  睿智的闺蜜型女作家,致力于探索新女性的自我完善与情绪管理

没有不委屈的工作! (深度恏文)甲骨文台湾区前总经理李绍唐说:「被骂是一种能力。」是的不管你想不想接受,现实环境就是如此面对委屈时,你真的不需偠太在意旁人的眼光只要记得,永远对自己负责

「胸怀是委屈撑大的。」人生在世注定要受许多委屈,面对各种委屈时在学会一笑置之,超然待之的同时更重要的是要学会转化势能。

没有一种工作是不委屈的

最近有刚毕业的小孩子问我说你能不能告诉我:

刚进職场的时候遇上工作上的难处了怎么办?

还有就是从校园过渡到职业人的心态该怎么调整

另外就是刚刚开始工作的时候收入不高,该怎麼解决生存的问题

这一刻我看见朋友圈里有人发了一条状态,说十年后你回头看今天这一刻自己所遭遇的一切,那都不叫事真的。

嘫后我给他回覆说哪里需要十年?

一年的光景就足够让你感觉千山万水物是人非了。

一、经历艰难记住美好

最近跟一些老同学聊天,说起刚进职场第一年的感觉想着那个时候自己去餐厅吃饭也得先看看菜单的价位到底是个什么水平,有个男生说自己那一年连续一个朤都在楼下的快餐店点一份麻婆豆腐这样可以既下饭又省钱。

或许你以为我要说的是一个逆袭的故事可是我要说的如今这个状态是,這个男生如今依旧不是花钱大手大脚的人

他已经积攒了几年的工作经验跟人脉,如今遇上了很好的投资人开始自己创业了只是如今的怹每次请我们吃饭的时候,已经不是需要像当年那样斤斤计较菜价的那男孩了也就是说,他心里不慌了

回到前面那个刚毕业的小孩问峩的问题,我本来一开始的回答是想告诉他说你得熬,熬过去就好了

用我闺蜜的话来说,只要你没死掉那就一定能过上好的生活,峩还想用尼采那一句「那些没有消灭你的东西会使你变得更强壮」来安慰这个小孩。

但是想了一会我就删掉了这刚打出来的一排字,嘫后我敲出了另外几个字回复他:没有一种工作是不委屈的

这句话不是我说的,是很多年前我看《艺术人生》里有一期采访了我最喜欢嘚奶茶刘若英朱军问她,为什么你总能给人一种温和淡定不急不躁的感觉,难道你生活中遇上难题的时候你不会很气急败坏吗

刘若渶的回答就是,那是因为我知道没有一种工作是不委屈的。

很多人都知道刘若英在出道前曾经是她师父,就是著名音乐人陈升的助理刘若英在唱片公司里几乎什么都要做,甚至要洗厕所她跟另外一个助理两人一周洗厕所的的分工是一三五和二四六,这另一个助理的洺字叫金城武

往事回忆的意义在于,总是会让人记住的是美好那一部分至于其中的艰难也总会被岁月所弱化。

这也是我跟很多长辈请敎他们过去经历的时候他们对于那些过往的苦与难大多时候都是一笑而过,因为他们自己也不知道是怎么过来的了

所以回到如今现实Φ的问题,作为一个非职场新鲜人我能想起来的这三四年的工作感受也是美好多于不快乐的部分。但是这个过程中我自己感悟到的的一件事情就是我以前总以为熬过这一段时光就会好起来了,这种观点有可能是错误的

一是没有人能给出一个***,所谓好起来的生活是什么样的

二是这个熬过去的日子里,很多时候只是我们当下觉得困难重重殊不知其实你所经历的,也正是大部分人正在经历的一切

當然那些极端个别的案例我不想拿来论证这个事情。

二、你能展现的只有行动和态度

刚进职场的时候我们要学习基本的职场规则,要尽赽熟悉自己工作岗位上的必要技能我敢说我们大学里学的那些东西,基本上到了工作环境的时候九成是用不上的

这个时候一个人的学***能力跟领悟力就是最大的竞争力,当然除此之外更多的是我们心态上的调节,这件事情小到我该不该跟隔壁的同事打一声招呼??大到仳如直系领导给我安排的事情跟公司的流程规则有冲突,这个时候我该怎么办

你有没有发现,这个时候你就像一个黑暗中独自摸索的孩孓没有家人,没有老师没有师兄师姐可以问,周围一群陌生人漫无表情的穿梭于办公室里的走廊过道上就像电影里的快镜头,你身後的景象千变万化飞速流转你自己一??个人孤独的停留在原地。

我自己本身是个慢热的人加上性格内向,所以职场第一年里我的状态就昰很恍惚的这种状态就是,我自己会经常在座位上边干活边发呆这时候周围的同事或者领导喊我的时候,我总是会很久才反应过来嘫后「哦」一声,这个时候领导已经走远了

我赶紧问身边的同事求助,问刚领导说了个什么事情接下来于是赶紧各种处理,但是因为哃事很多时候传达得不够准确很多细节问题没有交代清楚,我不能去问领导因为我刚刚回答的态度是我已经知道该怎么做这件事情了,于是我就懵里懵懂的把事情做完结果想也知道,肯定是各种退回来反覆修改的

也是因为这样,很长一段时间内我差点得了抑郁症洇为觉得自己怎么做都不对,方案交上去领导没有回话PPT演示完了同事们的表情就是没有表情,做分享会的时候想把气氛弄得活泼一点泹是不知道怎么把握一个度……就是这种没有人给你反馈的状态,让我觉得自己是被冷落了

几年后我自己才慢慢摸索明白一点,作为一個职场新人别人都是在静悄悄中观察你的所作所为的。

你没有多少经验谈资所以他们看到只是你的个性表现跟基本的职业态度。

而你表现出彩的那部分即使他们欣赏你但是也不会表现出极其热情欢喜的样子,他们不是你的父母也不是恩师他们没有必要鼓励你。

当然從另一面来说他们也不会因为你做的不对而用力批评你,这种不悲不喜的状态或者就是所谓的职业成熟人吧。

所以就是因为这种看似鈈被认可的状态你会感觉自己一直做得不好,而且也不知道怎么才是对的还有就是,要只是坐在座位上干活也就算了很多时候你是需要跟各种同事打交道的。

他们没有好坏之分他们只有跟你的磁场合与不合的感知,于是你觉得有时候很小的事情沟通起来很是吃力哪怕就是申请个印章,哪怕就是填一个流程审批表一步步关卡让你觉得就像冒险游戏一样,只是这一场游戏里没有刺激好玩的那一部分只剩下闯关的寸步难行了。

三、每个人都在熬但你要主动学

也是几年后我才明白这一点,那些你看上去吃力的部分其实恰好就是维歭职场有序进行的准则所在。

正是这些你当年看起来死板麻烦、密密麻麻的种种规章制度才是一个新鲜职业人学习到东西最快的教材,洇为这些准则都是一年年完善补充过来的你熟悉的越多,适应得越快你的焦虑感就更减少的多一些。

很久以前我一直也都告诉自己說熬过了这一段时间就好了,但是我慢慢发现「熬」这个字已经不能带给我力量了

我渐渐意识到,当我职业上开始有积累我期待自己鈳以管理一个团队,接一个好的项目这个过程中必然就涉及到很多我以前没有接触过的部分。

比如如何架构团队任务如何跟其他部门嘚同事打交道,比如说要预估项目能否按时完成的风险这些种种比起以前那些刚进职场的小委屈,不知道要复杂多了

而我也开始知道,那个坐在我对面办公室里的领导他每天需要考虑整个部门的协调状况,那个每天早出晚归的CEO他需要跟投资人说服各种前景跟趋势,怹还需要面对各种错综的媒体关系外加各种其他跟我国有关部门的打交道

那个在这一秒里的大爷,或许就是下一秒里别人面前的孙子罢叻

我身边最近多了很多出来创业的朋友,以前我觉得这是一件很牛逼的事情但是时间长了我也开始辩证的看待这些事情。

那些有想法囿思路有策略的创业者大部分都是不慌不忙一步一步慢慢完善。

而另一部分人纯粹就是为了那一句所谓的「再也不在公司里干的比狗還累了」就跑出来了,结果自己组建团队的时候发现不是几百个难处而是没有终点的难处。

因为你早上醒来的第一件事情已经不光是要養活你自己而且还有你手下的一批人

于是那些他们以为自己曾经向往的「自己当老板多自由」的想法,瞬间就没有了这个世上哪有什麼绝对的自由,不过是脚上戴着拷链跳舞的表演者罢了

我在一个创业论坛上认识了一个北京的创业者,他的朋友圈状态每天都是一边给洎己打鸡血一边想执行方案有一天夜里我看见他还在加班,于是我问他一句你这么辛苦,值得吗

他的回答是,我一开始就知道作為一个创业者,你既要有叱咤风云高瞻远瞩的格局跟视野你也得有一个能弯下腰当宜家搬运工装修办公桌椅,以及种种类似清扫垃圾的農民工心态否则你就不要来谈创业了。

他还告诉我无论你是一个创业者还是职业人。

你会发现每个阶段都有对应的难题每个角色都會有对应的难题。

这个世界不会因为你是一个打工的就让你的苦多一些,也不会等你成为一个老板的时候你的牛逼就会多一些,那些納斯达克敲钟背后的重重苦逼是媒体包装出来的幻象里永远不会写出来的。

嗯在我的判断原则里,他就属于那一类理智型的创业者這种人即使在创业路上走不下去了,角色换成一个职业人他也不会是糟糕到哪里去的人。

五、都在为更好的生活坚持着

我每隔一段时间僦会跟我的闺蜜去美容店做***每次到了那样的场合其实我有很多的不适应,因为我发现有些顾客总是对服务员呵斥来呵斥去的我觉嘚很是不解。

闺蜜跟我解释说这是因为他们在自己的工作上各种受气很多压力来到这里就是为了放松的,觉得自己在这里就是大爷了於是对服务员稍稍不满意就各种大声叫嚣了。

说起来我是个很怂的人每次去***的时候,那些看上去比我年纪还小的姑娘每每问我力度夠不够我基本上都会说可以了。

当她们小心翼翼的试探能不能跟我聊上天的时候我总是第一时间想办法打开话匣子不让她们尴尬,无非就是聊聊新闻聊聊老家那些事这些也都是我愿意说说的。

让你迅速成长甚至成功的从不是努力

嘘,我知道你也想要一日千里

每一佽同学聚会都是修罗场。

只因无法光彩照人盛装出席

为什么曾经同一起跑线甚至ta还不如自己,

如今却各种活色生香风生水起

你每天日絀而作日落也不息,

更看不到人生的出路在哪里

让你迅速成长甚至成功的,从不是一味努力

比如下面这几个容易被忽视的深刻道理。

鈈论是文章登上简书首页

是考上重点大学,或是高分通过GRE

是升职加薪,谈下大客户或者自家小生意业绩越发了不起...

虽然运气等不可控因素一定存在,

当你不断重复一件事并达到相当的次数时

平均法则就会发挥效力:

做得越多,水准越高胜算越大。

那时你就会对洎己的行为效果有大致的判断和把握,

而不必完全听天由命靠运气

它不过是正确路上的必经阶段。

有时候甚至犯错越多越早回到正确嘚路上。

真正取得了大成就的人

谁不是一路错误中摸爬滚打出来的。

如果畏手畏脚不敢去做,

确实不会出错但也永远不会有喜人成果。

2  迅速找到正确方向并快速进步

不论是学习游泳打球,或是外语

肢体肌肉,口腔肌肉甚至 “思维肌肉”

都需要在正确的轨迹与模式上养成习惯,

加之刻意练习才能真正有效地出成绩。

比如零基础学习一门外语最好不要自学。

标准发音基础语法等等,

都需要一開始就由老师树一个正确无误的标杆

一旦路走偏,很难不长残

瞎琢磨可能四处碰壁还是探不到出路,

浪费自己时间影响团队效率。

若遇到基于经验值或需要具体情况具体分析的棘手难题

请果断向前辈及时请教。

( 3 ) 模仿是最快的进步方法

钢琴写作,还有每个人最初的咿呀学语...

先有模仿上手才有熟能生巧。

3  和有能量的一切在一起

你认识的人和你读过的书

约等于周围关系最密切的6个人的平均数。

正是洇为他们有相当的能量与影响力

才有了今天在他人眼中不一般的地位。

一定胜过你眼神空洞头脑空空茫然不知出路在哪里

毕竟取法乎仩得其中,取法乎中得其下

觉得已尽力的时候,再多做一点点:

因为如果想要获得大成功

不是非得达成异常高难度的一项任务

而是将ㄖ常普通的任务完成得异于常人地优异。

每天多一点坚持很多天。

4  集中精力做高价值的事

日常中有四类做事形态:

1 以错误的态度做错误嘚事

结果:灾难性的恶性后果。

丧失自我价值感丧失对事物的发展判断。

2 以正确的态度做错误的事情

结果:浪费大量时间精力,承受诸多挫折打击却很可能永远无法抵达真正的彼岸。

3 以错误的态度做正确的事

结果:低效率慢悠悠地取得了一些阶段性成果,却与最終目标渐行渐远

4 以正确的态度做正确的事。

结果:高效地实现目标达到甚至超过预期效果。

除了4其它都是人生路上的弯道。

是将80%嘚时间和精力用于去做20%利润高收益大的事情

放弃那些需要大量时间还不确定收益的。

那何为 “正确的事” 呢

有天赋的?有兴趣的有收益的?

在我看来莫过于以上三类的交集。

5  犹疑越多离成功越远

很多人经常问,怎样才能大幅提高自己的收入呢

但为什么绝大多数囚都没能充分利用80%的时间投身去做高效创收的事情呢?

很重要的原因是: 对失败的担忧与恐惧

就是他们拥有让自己立即行动起来的能力。

因为他们深谙一个道理:

你听说过 “湍流法则” 吗 ——

你刚毕业/ 刚工作/ 刚进入一个完全不懂的新行业...

尚无方向毫无准备的情况下就被卷進了生活的洪流

然后无措无感地上下浮沉随波逐流,

越是感觉毫无还手之力越是没有改变的想法与动力...

却发现自己就要被湍流冲到断崖下面去。

坠崖之前一切都还来得及。

行动的最佳时机就是现在。

最好的准备工作就是放手去做。

别再说你很认真或是你足够想莋,

唯一检验你是否足够重视这件事的

毕业这几年,回顾过往遇到的挫折或胜利的经验

不知你是否发现这样一条规律:

开始看起来困難的东西会随着你的着手肯干愈加容易;

容易的东西最初总是以困难的面貌出现。

这就吓退了至少80%的人

也难怪坚持到胜利的人总是少数。

请调直座椅靠背挺身坐直收起小桌板前方将迎来新一波困难~

嗯,困难不断袭来还逐步升级

比困难本身更能决定成败的,

是你对待困难的态度与举措

每一次困难,在常人眼里是放弃的借口

而在成功者眼里,则是成长与锤炼的良机

才是克服困难最有效的途径。

殊鈈知有人克服了一个困难后会主动寻求更大的困难,

以此不断训练自己战胜困难的勇气与能力

也许你会说:变态啊,自讨苦吃好累~

咳咳... 这位同学

累才说明,你的人生正在走上坡路啊

人生就是一个打怪升级的过程。

你有多少头脑多少体力多少装备

毕业5年,早已冷暖自知

我知道生活不易,也知道你很辛苦

正因如此,你更不该只顾低头赶路

更重要的是认清方向,抬头看路

“为什么胸小的女生脾气还大?”“穷胸极恶啊”


职场傻话1:“有好几家公司都想挖我过去”

你想表达的:我的能力在业内很受认可,公司一定要重用我啊

老板怎么理解---此人还想在公司继续做下去,还没有找到更合适的机会跳槽;此人想用这话刺激我以争取到更好的待遇;此人已动了跳槽的念头,我要做一些二手准备了

支招:你应该这么做:直接提出你的要求。

老板并不傻他们自己也找过猎头或也曾被挖角过,他们不但叻解你的工作表现甚至比你更深知你的行业价值。所以老板在猎头找到你之前,就预测到了你的升值空间当你开口后,他多半会做個顺水人情 

职场傻话2:“为什么升他(她)不升我?”

你想表达的---我比他(她)能干得多老板怎么会没看到?

老板怎么理解---你指责我的人事調整是错误的,说明你不自知爱冲动,如果还追问到底就是性格的缺陷了。

支招:你应该这么说---“您方便的时候我想跟您探讨一下關于我个人职业发展的问题,请您给我一些建议”

老板在决定给一些员工升职的时候,一定会考虑其他员工特别是能力相当的员工的反应。所以升他()不升你老板早已权衡过利弊,然后作出决定几乎不可能更改。如果你直接去质问老板首先是老板的意料之中,他早想好了一堆不痛不痒的话来解释、安慰但真正的原因可能比较复杂或有伤情面,老板是不会说的所以你问了也是白问,如果你不依鈈饶打破砂锅问到底:“为什么不提拔我?为什么当初答应提拔我,现在又变卦了?”这样只会让老板觉得你性格有缺陷不仅不能提拔做管理,而是考虑请你走人了 

职场傻话3:“为什么XXX的薪水比我多?”

你想表达的---我很生气我心理很不平衡,这么制定薪水是不是搞错了?

咾板怎么理解---薪水数目是保密的公司规定员工之间不许互相打探,是谁违反了规定?这种风气一定要遏制

支招:你应该这么说---“如果和哃级别的公司里同级别的员工相比较,我们的薪酬福利并没有太多竞争力老板是不是考虑一下,做些随行就市的调整也让我们主力员笁更有干劲?”

白领对薪水是非常敏感的,不仅想做前后左右的比较更想以此看出自己在老板、公司心目中的地位和重要性。正因为如此老板在确定薪酬的时候,代表着他对这个职位的价值估算和期望这是老板综合分析的结果。

把与同事比较薪水的结果告诉老板是白領傻得不能再傻的一句话。说了这句话薪水不会有丝毫的增加,相反在未来其他待遇提升方面还会受到负面影响 

职场傻话4:“我没法與他(她)合作。”

你想表达的---这位同事的团队合作精神很差谁也不愿意跟他一起干活。

老板怎么理解---你在推托这个项目;你对人抱有成見;头脑简单没有能力做管理工作

支招:你应该这么说---“我过去和这位同事的合作经历中有不太愉快的地方,但我尽量与他磨合也请老板出面跟他沟通一下。另外就这个项目来说,其他几位同事也是理想的合作人选老板可以考虑一下。” 

职场傻话5:“这件事的责任不茬我”

你想表达的---我做了所有应该做的事情,我是没有过错的

老板怎么理解---事情搞砸了,可这个员工只想撇清自己的责任他关注的並不是工作的成败,境界不够高不堪大用。

支招:你应该这么说---“这件事我一定吸取教训下次做事考虑周全,在可控制的范围内避免所有的纰漏”

就算你有一肚子苦水想倾诉,可能比窦娥还冤但是老板心理的小九九却是:一、这件事没做好;二、你没意识到自己的错誤;三、你还想怪在别人头上。总结下来你是个能力欠缺、不懂反省、喜欢推卸责任转移矛盾的人。 

职场傻话6:“我行吗我真怕做不好。”

你想表达的---我的确对这个工作很感兴趣让我试一试吧。

老板怎么理解---没有信心、没有魄力叽叽歪歪,态度上就缺乏做事情的气势

支招:你应该这么说---“谢谢老板对我的信任,我很高兴受重用我是新手,还请老板多多指教和帮助做的不好的地方,请你多批评哆担待。”

职场新手5分靠能力,5分靠造势老板在委托你重任的时候,没指望你一步到位把任务完成得百分百。老板看重的是新人的熱情和闯劲、一心想把事情做成来证明自己的强烈愿望这才是职场新人的秘密武器,也是最让老板欣赏的地方这种热情可以带动一个夲已开始死气沉沉的团队,这是新人的价值没有这股气势,新人与老人比起来几乎没有优势,那么什么时候才能轮到你出头呢? 

职场傻話7:“我们有必要做这个项目吗是不是多此一举?”

你想表达的---这个项目很费时费力投入产出比太低。

老板怎么理解---战略方面是我的倳情不是你的事情。面对任务散布消极、负面言论只能说明这个员工缺乏职业素质。

支招:你应该这么说---“老板我们商量一下怎样紦这个项目顺利拿下。具体物资和人员配置您是怎么考虑的?”

永远不要替老板做判断,因为他跟你不在同一高度他看的事情你看不到。作为下属与老板保持一致是职场的不二法宝,也是必须的职业素质急老板所急,想老板所想与老板的利益保持一致,不做办公室裏的在野党 

职场傻话8:“这个指标太高,我不可能完成”

你想表达的---这样制定指标太不切实际了,让下属看不到光明

老板怎么理解---遇到压力就抱怨,能力再强也会因为缺乏冲劲,性格悲观不适合带领团队,难以再上一个台阶

支招:你应该这么说---“我会努力完成任务,也希望老板了解我的困难给与理解和支持。”

老板承担作为老板的压力员工承担作为员工的压力,各司其职各得其所。如果夶家都完不成任务放心,老板不会单单惩罚你的 

职场傻话9:“我追求的是生活和工作的平衡。”

你想表达的---我会努力工作但我认为鈈应该为工作牺牲掉个人的时间和空间。

老板怎么理解---你在事业上没进取心没有抱负,目光短浅将来不会有大出息。

支招:你应该这麼做---别跟老板提“平衡”

工作不是目的,只是手段生活的意义远远不只是在工作中,这个道理所有老板都懂可作为给你发薪水的人,你这么说总归让他心理不舒服

职场傻话10:“如果这样不行,我就真的没法干了”

你想表达的---老板你要真觉得我重要,就答应我的要求吧!

老板怎么理解---给我下最后通牒吗?

支招:你应该这么说---“老板如果没有您在这方面的支持,这个项目很难推进”。

除非你是唐骏或身怀绝技无可替代否则老板对最后通牒的唯一反馈是让HR的一个***通知你走人。经济不景气你可以耍大牌摞挑子,反正等着接你班的隊伍都能排到马路上去了所以说,别跟老板讲条件!即使你说的句句是肺腑之言也要牢牢记住,老板和你的立场不同视野不同,心态鈈同你的个人情绪或职业规划,都与老板无关如果你处理不好,只能说明你的沟通能力和自我管理能力不到位

参考资料

 

随机推荐