java、vue面试经理
2020-01-13 23:00:10 20 举报
AI智能生成
登录查看完整内容
java vue 真实面试经历
作者其他创作
大纲/内容
java、vue面试经理
待续...
进程和线程
进程就是正在进行的程序,进程是操作系统控制的基本运行单元;-JVM虚拟机占用一个进程,但是它至少包含了一个用户和几个守护线程。谷歌浏览器正在运行着,它就是一个进行中的程序,也就是进程。进程中独立运行的子任务就是一个线程。像QQ.exe运行的时候就有很多子任务在运行,比如聊天线程、下载文件线程等。1、进程是资源分配的最小单位,线程是程序执行的最小单位(资源调度的最小单位) 2、进程有自己的独立地址空间,每启动一个进程,系统就会为它分配地址空间,建立数据表来维护代码段、堆栈段和数据段,这种操作非常昂贵。 而线程是共享进程中的数据的,使用相同的地址空间,因此CPU切换一个线程的花费远比进程要小很多,同时创建一个线程的开销也比进程要小很多。 3、线程之间的通信更方便,同一进程下的线程共享全局变量、静态变量等数据,而进程之间的通信需要以通信的方式(IPC)进行。不过如何处理好同步与互斥是编写多线程程序的难点。 4、但是多进程程序更健壮,多线程程序只要有一个线程死掉,整个进程也死掉了,而一个进程死掉并不会对另外一个进程造成影响,因为进程有自己独立的地址空间。
组件传值
原则
\
父组件->子组件
明白怎么在父页面中向子组件中传值?在子组件标签上冒号:或v-bind绑定一个自己定义的key。要知道如何在子组件中接受父页面传过来的值,有几点需要了解:子组件要显式的用props选项声明它的key,之后才能拿到value。
子组件->父组件
每个Vue实例都实现了事件接口:使用v-on(evntName)监听事件;使用font color=\"#fdb813\
设计模式23种
创建型模式
共五种:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。
结构型模式
共七种:适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、享元模式。
行为型模式
共十一种:策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式、中介者模式、解释器模式。
而外两种:并发型模式和线程池模式
vue跨域配置方式
代理
跨域问题核心就是设置代理devServer.proxy,然后用axios或者fetch来访问
vue-cli知识proxy
axios
1.配置BaseUrl:在全局入口配置BaseUrl=/api,每发送一个请求会携带你配置的路径/api
2.配置代理:vue.config.js(或者config/index.js)下配置代理,路径规则、目标接口、changeOrigin:true
vue菜单权限访问权限
简介:动态加载菜单,将从后端获取到的用户数据和菜单树放在store里。“动态添加路由”和“导航守卫”
导航守卫
前端router.js中只写所有人可以访问的路由表,比如login和404页面等。其他所有的组件资源全部写到一个新的components.js文件中,然后通过后端返回的menuData去映射符合components.js中的key,如果有对应的,就把它动态添加到router中,通过addRoutes添加。动态添加路由这个方法要写到导航守卫beforeEach这个钩子函数中。导航守卫的意思是我路由跳转到下个页面之前要做些什么。就是说我们登录后会跳到dashboard页面,在进到这个页面之前我们需要将后端请求回来的menuData进行二次封装,把他根据权限返回回来的data与我们前端components.js去做map匹配,将最终的数据通过addRoutes来push到我们的路由中,之后才能进到我们的dashborad页面,再通过dashborad页面进到对应的page页面,就是说我们把所有的权限控制全在dashboard页面进入之前就做完了。这里面还有一个小的优化的点:当我们通过前面说的浏览器菜单栏访问到非权限页面或者不存在的页面时,需要根据vue-router中的匹配优先级来最后addRoutes 404和*这个页面,这样就可以直接到达404页面而非空页面。
数据访问权限
SpringSecurity
功能权限/访问权限/菜单权限/拦截器过滤器
WebSecurityConfigurerAdapter自定义安全策略/AuthenticationManagerBuilder自定义策略
配置实现WebSecurityConfigurerAdapter并开启认证模式@EnableWebSecurity
antMatchers配置权限路径,hasRole配置角色
0 条评论
回复 删除
下一页