Linux
LinuxLinux 是一款操作系统,免费,开源, 安全,高效,稳定, 处理高并发非常强悍,现在很多的企业级的项目都部署到 Linux/unix 服务器运行。
安装
CentOS下载地址:
官方:https://www.centos.org/download/
网易镜像:http://mirrors.163.comlcentos/6/isos/
搜狐镜像:http://mirrors.sohu.comlcentos/6/isos
安装VMware
创建虚拟机
安装Centos
进行处理器配置(虚拟机总核心数不能超过主机核心数。若超出则会警告提醒。)
配置虚拟机内存
设置centos镜像文件
配置网络类型(一般选择NAT模式,桥接模式容易ip冲突)
选择语言、网络配置、安装相关环境等….(注意有需要可以选择安装GNOME Desktop图形界面)
进行磁盘分区(/boot区(大概1G)、swap交换分区(大概2G)、根分区/(剩余都是))
等待开机即可
Linux目录结果
以下是对这些目录的解释:
/bin:bin 是 Binaries (二进制文件) 的缩写, 这个目录存放 ...
SpringBoot统一响应处理
SpringBoot统一响应处理目前很多项目都是前后端分离,在这样的大趋势下,后端向前端的响应结果规范格外地重要。
自定义响应结果响应实体1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071@Data@NoArgsConstructor@AllArgsConstructorpublic class ResponseEntityDemo<T> { /** * 状态码 */ private int code; /** * 响应信息 */ private String message; /** * 响应数据 */ private T data; /** * 请求处理成功且不需要返回数据时使用的工具方法 * @return */ public ...
SpringBoot的异常处理
SpringBoot的异常处理全局异常处理对整个项目的异常进行自动拦截处理,方便以后抛出自定义异常
使用1234567891011121314151617181920@RestControllerAdvice@Slf4jpublic class GlobalExceptionHandler { @ExceptionHandler(MethodArgumentNotValidException.class) public String MethodArgumentNotValidExceptionHandler(MethodArgumentNotValidException e) { // 从异常对象中拿到ObjectError对象 ObjectError objectError = e.getBindingResult().getAllErrors().get(0); // 然后提取错误提示信息进行返回 return ResponseEntity.failed(objectError.getDef ...
SpringBoot参数校验
参数校验在日常开发中,经常需要对前端传过来的数据进行,非空等有效校验。但是如果使用if (username == null)的方式进行手动判断,会十分麻烦并且每次都需要校验;
于是Validator框架应运而生,提供了很多方便的校验注解(非空、邮箱是否有效、长度限制等)
详细使用一般SpringBoot的项目会使用Spring Validation,它是对Hibernate Validation的二次封装。在SpringMVC模块中添加了自动校验。并将校验信息封装到特定的类中。
提供的校验注解:
@Null 被注释的元素必须为null
@NotNull 被注释的元素必须不为null
@AssertTrue 被注释的元素必须为true
@AssertFalse 被注释的元素必须为false
@Min(value) 被注释的元素必须是一个数字,其值必须大于等于指定的最小值
@Max(value) 被注释的元素必须是一个数字,其值必须小于等于指定的最大值
@DecimalMin(value) 被注释的元素必须是一个数字,其值必须大于等于指定的最小值
@DecimalMax(value) 被注 ...
SpringBoot配置FastJson
配置FastJSON导入依赖12345<dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifactId> <version>1.2.33</version></dependency>
将fastJson转换器注入容器1234567891011121314151617181920212223242526272829303132@Configurationpublic class IntercaptorConfig implements WebMvcConfigurer { /** * 使用@Bean注入fastJsonHttpMessageConvert * @return */ @Bean public HttpMessageConverter fastJsonHttpMessageConverters() { ...
SpringBoot
SpringBoot简介 SpringBoot本质就是一个javaweb的开发框架,和SpringMVC类似,对比其他javaweb框架的好处,官方说是简化开发,约定大于配置,能迅速的开发web应用。不仅继承了Spring框架原有的优秀特性,而且还通过简化配置来进一步简化了Spring应用的整个搭建和开发过程。另外SpringBoot通过集成大量的框架使得依赖包的版本冲突,以及引用的不稳定性等问题得到了很好的解决。
特点:
(1)可以创建独立的Spring应用程序,并且基于其Maven或Gradle插件,可以创建可执行的JARs和WARs;
(2)内嵌Tomcat或Jetty等Servlet容器;
(3)提供自动配置的“starter”项目对象模型(POMS)以简化Maven配置;
(4)自动配置Spring以及第三方功能;
(5)提供生产级别的监控、健康检查及外部化配置;
(6)无代码生成、无需编写XML;
SpringBoot的使用SpringBoot的入门使用一、Maven方式创建
创建一个maven工程
导入maven依赖
1234567891011121 ...
Vuex
Vuex
概念:
专门在Vue中实现集中式状态(数据)管理的一个Vue插件,对vue应用中多个组件的共享状态进行集中式的管理(读/写),也是一种组件间通信的方式,且适用于任意组件间通信。
使用场景:共享数据
多个组件依赖同一状态
来自不同组件的行为需要变更同一状态
原理图:
vuex由三个部分组成:Actions、Mutations、State,并统一由store来管理
Actions:接收Vue Components 对共享数据的操作并commit给Mutations(还有一个很重要的作用是可以只接收操作,但是数据可以在Actions中向后端请求或者有一定的业务逻辑)
Mutations:按照Actions提交的操作对共享数据进行相应具体的操作(同样允许Vue Components直接调用commit越过Mutations)
State:存储共享数据
基本使用
安装vuex:npm i vuex (如果是vue2 只能安装npm i vuex@3)
创建store来管理vuex的三个主要对象:
123456789101112//在main.js中引入store 因为j ...
vue_Router
vue-routervue-router是Vue.js官方的路由插件,它和vue.js是深度集成的,适合用于构建单页面应用。专门用于单页面Web应用实现局部页面更新的插件库。
主要功能:
嵌套路由映射
动态路由选择
模块化、基于组件的路由配置
路由参数、查询、通配符
展示由 Vue.js 的过渡系统提供的过渡效果
细致的导航控制
自动激活 CSS 类的链接
HTML5 history 模式或 hash 模式
可定制的滚动行为
URL 的正确编码
安装和使用vue-router步骤一:安装vue-router
npm install vue-router –save
步骤二:在模块化项目中使用它
导入路由对象,并调用Vue.use(VueRouter)
创建路由实例,并传入路由映射配置
在Vue实例中挂载创建的路由实例
具体使用
在src目录下创建router文件夹以及index.js(用于配置路由的相关信息)
index.js:
1234567891011121314151617181920212223242526// 该文件专门用于创建整个应用的路由器import Vue ...
Vue异步请求
Vue发送异步请求
使用axios发送(常用)
安装axios:npm i axios
引入axios:import axios from ‘axios’
发送请求:
12345678axios.get('http://localhost:5000/students').then( response => { console.log('请求成功了',response.data) }, error => { console.log('请求失败了',error.message) } )
使用vue-resource发送
安装vue-resource:npm i vue-resource
使用该插件:
1234//引入插件import vueResource from 'vue-resource'//使用插件Vue.us ...
Vue响应式方法
Vue响应式概念:响应式的效果就是,数据驱动视图。只用按照普通的语法,改变一个数据,相应的视图就自动更新。保证试图中的数据与组件中的数据同步。
原理:
通过Object.defineProperty来实现监听数据的改变和读取(属性中的getter和setter⽅法) 实现数据劫持
观察者模式(发布者-订阅者)
观察者(订阅者) – Watcher:update():当事件发⽣时,具体要做的事情
目标(发布者) – Dep:①subs 数组:存储所有的观察者②addSub():添加观察者③notify():当事件发⽣,调⽤所有观察者的 update() 方法
当数据发⽣改变通过发布者订阅者模式来进行通知进行界面刷新
具体响应式方法数组方法
push():该方法是在数组最后添加数据,并返回数组长度
pop():删除最后一个元素,并返回删除的元素值
shift():删除数组的第一个元素,返回第一个删除的值
unshift():向数组开头添加元素,返回数组长度
reverse():翻转数组
sort(function(a,b){return a-b}):数组排序升序/b-a降序
...