Spring AOP学习(一)
AOP简介来自于官方的定义:
Aspect-oriented Programming (AOP) complements Object-oriented Programming (OOP) by providing another way of thinking about program structure. The key unit of modularity in OOP is the class, whereas in AOP the unit of modularity is the aspect. Aspects enable the modularization of concerns that cut across multiple types and objects.
面向切面编程,是spring框架中的一个重要内容。利用 aop 可以对业务逻辑的各个部分进行隔离,从而使得业务逻辑各部分之间的耦合度降低,提高代码的可重用性,提高开发效率。
AOP一般用来实现以下几个功能:
日志记录,性能统计,安全控制,权限控制,事务处理,异常处理,资源池管理等
目前最受欢迎的 ...
Java代码的执行顺序
Java 代码的执行顺序通过以下代码,更加快速地理解代码的执行顺序,以助于理解jvm的加载顺序,帮助我们在写代码时,写出更深刻的代码。
Sub 子类public class Sub { // 静态 不可变 private static final String str1 = "00"; // 不可变 private final String str2 = "01"; // 普通字符串 private String str3 = "02"; // 静态 字符串 private static String str4 = "03"; { System.out.println("Sub code block1 str1: " + str1); System.out.println("Sub code block1 str2: " + str2); System. ...
SpringBoot整合Redis
Redis 简介基于内存进行存储,支持key-value的存储形式,底层是用C语言编写的
基于key-value形式的数据字典,结构非常简单,没有数据表的概念,直接用键值对的形式完成数据的管理,Redis支持5种数据类型:
字符串
列表
集合
有序集合
哈希
安装 Redis下载https://redis.io/download
解压,并在本地硬盘任意位置创建文件夹,在其中创建3个子文件夹
bin:放置启动 redis 的可执行文件
db:放置数据文件
etc:放置配置文件,设置redis服务的端口、日志文件位置、数据文件位置等
同时将解压后(或者安装后的所有文件)都拷贝到创建的这个文件夹下面
启动redis服务打开终端,进入到上一步新建的目录下面
先启动server:
./redis-server.exe ./redis.windows.conf
当然你也可以将server 注册为一个服务,但是我不建议这样做
再启动 client:
./redis-cli.exe
对数据进行操作:
set key valueget key
退出client:shutdown
Sprin ...
使用Python的you-get下载视频
You-get 介绍You-get是GitHub上的一个项目,也可以说是一个命令行程序,帮助大家下载大多主流网站上的视频、图片及音频。 支持的网站非常多,我们可以先来看一部分:
Site
URL
Videos?
Images?
Audios?
YouTube
https://www.youtube.com/
✓
Twitter
https://twitter.com/
✓
✓
VK
http://vk.com/
✓
✓
Vine
https://vine.co/
✓
Vimeo
https://vimeo.com/
✓
Veoh
http://www.veoh.com/
✓
Tumblr
https://www.tumblr.com/
✓
✓
✓
TED
http://www.ted.com/
✓
SoundCloud
https://soundcloud.com/
✓
SHOWROOM
https://www.showroom-live.com/
✓
Pinterest
https://www.pi ...
面试题泛谈
在程序员的1-3年阶段,我们需要不断努力的学习并积累知识点,那么每个阶段都需要具备什么条件呢?请看下面:
🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥
10k面试题1.抽象类和接口的关系和区别,以及你在实际开发过程中是怎样使用的?
抽象类
概念:抽象类不能创建实例,它只能作为父类被继承。抽象类是从多个具体类中抽象出来的父类,它具有更高层次的抽象。从多个具有相同特征的类中抽象出一个抽象类,以这个抽象类作为其子类的模板,从而避免了子类的随意性。
特点:
抽象类无法被实例化(因为它不是具体的类,但是有构造方法)抽象类有构造方法,是给子类创建对象的抽象类中可以定义抽象方法(在方法的修饰列表中添加abstract关键字,并且以“;”结束,不能带有“{}”)public abstract void m1();抽象类中不一定有抽象方法,抽象方法一定在抽象类中一个非抽象类继承抽象类,必须将抽象类中的抽象方法覆盖,实现,重写抽象类的成员特点:1)成员变量:既可以是变量也可以是常量。2)构造方法:有构造方法,用于子类访问父类数据的初始化。3)成员方法:抽象类中方法既可以是抽象的,也可以是 ...
Git-commit-中添加表情
git commit 中使用表情我们经常可以在github上看到国外大佬的commit信息中有很多可爱的表情,这是怎么做到的呢?ok,可以这样使用哦:git commit -m '提交信息 :emoji:',示例:git commit -m '增加新功能 :sparkles:'
有哪些表情呢来了,请参照这个链接:https://gitmoji.carloscuesta.me/
demo
gitmoji
emoji-cheat-sheet
full-emoji-list
驾校一角
经过一个多月的苦练,科目一二终于于昨天(2020-06-22)考过了,好累呀来看看我们驾校一角吧:
科目二考了两次,第一次直接灭火三次挂了,还好第二次机会满分通过啦哈哈哈
SpringBoot-Vue-demo-02
Vue + Element UI先在上一期的文章基础上引入 element-ui 依赖
添加 Element-UI依赖yarn add element-ui
在 main.js 中注册组件,并使用
选择引入布局
选择一个你喜欢的布局,然后粘贴代码到你的 App.vue 文件中(放入你想要的目标文件中即可)
启动前端项目,浏览器查看效果
现在呐,我们的菜单是写死的,并不符合我们的实际需求,因此我们需要修改为动态加载菜单
使用 Vue-router来动态构建左侧菜单先来创建几个示例页面
这时我们来访问页面,会发现有个问题
当我们的访问路径是:http://localhost:8080/pageTwo 或者 http://localhost:8080/pageOne 时是没有问题的,但是当是 http://localhost:8080/ 时会出现嵌套页面App.vue
这是我们需要解决的地方
那么怎么解决这个问题呢?首先我们需要来分析一下 App.vue 文件
router-view 分析我们当前的 应用程序是 spa 应用,原理就是在于这个 router-view。而这个和我们的 ...
SpringBoot-Vue-demo-01
新建Vue3前端项目先删除之前的vue2版本npm uninstall -g vue-cli
安装新的vue cli 包npm install -g @vue/cli
安装完成后使用命令:vue -V 检查是否安装成功
构建项目这里我们使用 vue3 提供的图形化界面操作:
打开 cmder,输入 vue ui
默认操作即可了
安装依赖yarn
单页面spa应用
启动项目yarn run serve
单独运行成功,可以在 /src/views/ 自己再编写一个 Book.vue 页面,然后在 /src/router/index.js 中进行注册,使用即可
<template> <div> <table> <tr> <td>编号</td> <td>封面url</td> <td>书名</td> < ...
Ubuntu 安装 Redis
redis是什么Redis是常用基于内存的Key-Value数据库,比Memcache更先进,支持多种数据结构,高效,快速。用Redis可以很轻松解决高并发的数据访问问题
环境Ubuntu18.04
准备工作sudo apt update
安装使用 apt 从官方 Ubuntu 存储库来安装 Redis:sudo apt-get install redis-server
设置密码
首先打开Redis配置文件redis.confsudo vi /etc/redis/redis.conf
找到# requirepass foobared这一行,将注释符号#去掉,将后面修改成自己的密码,例如,设置密码为123456requirepass 123456
开启远程访问默认情况下,Redis服务器不允许远程访问,只允许本机访问,所以我们需要设置打开远程访问的功能。
打开Redis服务器的配置文件redis.confsudo vi /etc/redis/redis.conf
使用注释符号#注释bind 127.0.0.1这行#注释bind#bind 127.0.0.1
Redis服务控制sud ...