SSM框架整合
数据库
SSM快速整合(推荐) Spring MVC负责实现MVC设计模式, Mybatis负责数据持久, Spring负责管理 Spring MVC和Mybatis相关对象的创建和依赖注入。
创建Maven工程
使用模板
引入依赖
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621 ...
SpringMVC入门
什么是SpringMVCSpringMVC是Spring的一个后续产品,是Spring的一个子项目
SpringMVC 是 Spring 为表述层开发提供的一整套完备的解决方案。在表述层框架历经 Strust、WebWork、Strust2 等诸多产品的历代更迭之后,目前业界普遍选择了 SpringMVC 作为 Java EE 项目表述层开发的首选方案。
典型MVC: 模型(dao+service)、视图(jsp)、控制器(Controller)
springmvc模式:
开始创建maven(web)工程
创建一个模块
在模块pom.xml修改打包方式
12<!--web工程需要打包为.war包--><packaging>war</packaging>
引入依赖
123456789101112131415161718192021222324252627282930<dependencies> <!-- SpringMVC --> <dependency> <groupId> ...
vue-admin-template实现登录
前端
修改src/utils/request.js,以使登录请求正确发送到后端
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970import axios from 'axios'import { MessageBox, Message } from 'element-ui'import store from '@/store'import { getToken } from '@/utils/auth'// create an axios instanceconst service = axios.create({ baseURL: 'http://localhost:8201/', timeout: 5000 // r ...
Hadoop入门
简介 Hadoop是一款开源软件,允许用户使用简单的编程模型实现跨机器集群对海量数据进行分布式计算处理。
核心组件:
Hadoop HDFS(分布式文件存储系统):解决海量数据存储
Hadoop YARN(集群资源管理和任务调度框架):解决资源任务调度
Hadoop MapReduce(分布式计算框架):解决海量数据计算
现状:
HDFS作为分布式文件存储系统,处在生态圈的底层与核心地位;
YARN作为分布式通用的集群资源管理系统和任务调度平台,支撑各种计算引擎运行,保证了Hadoop地位;
MapReduce作为大数据生态圈第一代分布式计算引擎,由于自身设计的模型所产生的弊端,导致企业一线几乎不再直接使用MapReduce进行编程处理,但是很多软件的底层依然在使用MapReduce引擎来处理数据。
发行版本:
Apache开源社区版本:https://hadoop.apache.org/
Hadoop集群搭建概述
Hadoop集群包括两个集群:HDFS集群、YARN集群
两个集群逻辑上分离、通常物理上在一起
两个集群都是标准的主从架构集群
启动
在主机上执行start ...
Hibernate Validator参数校验&自定义注解
简介 后端常常会需要对参数进行校验,这里提供两种处理校验逻辑的方式。一种是使用Hibernate Validator来处理,另一种是使用全局异常来处理。对于前者,还可以使用自定义注解进行参数校验。
Hibernate Validator Hibernate Validator是 SpringBoot 内置的校验框架,只要集成了 SpringBoot 就自动集成了它,我们可以通过在对象上面使用它提供的注解来完成参数校验。
常用注解
@Null:被注释的属性必须为null;
@NotNull:被注释的属性不能为null;
@AssertTrue:被注释的属性必须为true;
@AssertFalse:被注释的属性必须为false;
@Min:被注释的属性必须大于等于其value值;
@Max:被注释的属性必须小于等于其value值;
@Size:被注释的属性必须在其min和max值之间;
@Pattern:被注释的属性必须符合其regexp所定义的正则表达式;
@NotBlank:被注释的字符串不能为空字符串;
@NotEmpty:被注释的属性不能为空;
@Email:被注释的属性必须符合 ...
Spring-Security入门
认证和授权认证(authentication) 认证意味着确认你自己的身份,是关于验证你的凭据,如用户名/邮箱和密码,以验证访问者的身份。系统确定你是否就是你所说的使用凭据。常见的认证方式有:
手机和短信验证码认证
用户名密码认证
邮箱和邮件验证码认证
授权意味着授予对系统的访问权限。授权发生在系统完成身份认证之后,最终会授予你访问资源(如信息,文件,数据库,资金,位置,几乎任何内容)的完全权限。简单来说,授权决定了你访问系统的能力以及达到的程度。
授权是确定经过身份验证的用户是否可以访问特定资源的过程。就像给予某人官方许可做某事或任何事情。
Spring Security简介 Spring Security是 Spring 家族中的一个安全管理框架,是一个功能强大且高度可定制的身份验证和访问控制框架。认证和授权就是Spring Security作为安全框架的核心功能。
官方文档地址:https://spring.io/projects/spring-security/#learn
小试牛刀导入依赖 创建一个 Spring Boot 的 web 项目,并导入部分依赖, ...
解决-Vue项目启动报错
问题记录在启动一个 Vue 项目时,出现如下报错:
问题解决
可能原因:电脑缺少cmd运行程序的环境变量
解决方法:在环境变量 Path 中加入 C:\Windows\System32 和 %SystemRoot%\system32;(注意加分号),然后重启电脑;
Vue-Ajax(axios)
GET示例12345678910111213141516171819new Vue({ el: '#app', data () { return { info: null } }, // 钩子函数,实例化时触发 mounted () { axios .get('https://www.runoob.com/try/ajax/json_demo.json') .then(response => (this.info = response)) .catch(function (error) { // 请求失败处理 console.log(error); }); }})<script src="https://unpkg.com/axios/dist/axios.min.js"></script>
POST示例 ...
【面试题】多线程实现有序执行
有线程A,B,C,C 要等A和B都执行完了才执行,怎么实现?LockSupport + AtomicInteger 先执行线程C,用 park() 挂起线程C,线程A、B各自执行完成时,flag 减1并判断是否为0,若为0则用unpark(c)给线程C颁发许可。
LockSupport.park() 函数表示挂起当前线程
LockSupport.unpark(c) 函数表示解除线程c的阻塞状态
AtomicInteger.decrementAndGet() 函数表示将该变量减一,并返回当前变量值(线程安全的原子类)
1234567891011121314151617181920212223242526272829303132333435363738public static void main(String[] args) { AtomicInteger flag = new AtomicInteger(2); Thread c = new Thread(()->{ System.out.println( ...
阿里云OSS体验
一、阿里云oss简介 用户认证需要上传证件图片、首页轮播也需要上传图片,因此我们要做文件服务,阿里云oss是一个很好的分布式文件服务系统,只需要集成阿里云oss即可。
二、开通“对象存储OSS”服务
申请阿里云账号
实名认证
开通“对象存储OSS”服务
进入管理控制台
三、创建Bucket选择:标准存储、公共读、不开通,如下:
四、获取用户acesskeys
五、使用SDK文档
六、开始1、搭建service-oss模块
修改pom.xml,引入阿里云oss依赖
12345678910111213<dependencies> <!-- 阿里云oss依赖 --> <dependency> <groupId>com.aliyun.oss</groupId> <artifactId>aliyun-sdk-oss</artifactId> </dependency> <!-- 日期工具栏依赖 --&g ...