自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

mh_dream的博客

学习心得、笔记记录

  • 博客(48)
  • 资源 (2)
  • 收藏
  • 关注

原创 spring security入门

Spring Security基于servlet过滤器实现的权限管理框架,是AOP思想的具体体现,提供了完善的认证机制和方法级的授权功能。<dependency> <groupId>org.springframework.security</groupId> <artifactId>spring-security-config</artifactId> <version>5.3.1.RELEASE</ve

2022-01-02 22:57:59 2477

原创 springmvc拦截器和异常处理器

1 拦截器拦截器类似于servlet中的过滤器,用于进行预处理和后处理。将拦截器按一定的顺序连成一条链,组成拦截器链。在访问被拦截的资源时,拦截器链中的拦截器会按之前定义的顺序被调用。拦截器是AOP的具体实现。1.1 拦截器方法实现HandlerInterceptor的接口方法:public class InterceptorTest implements HandlerInterceptor { //请求处理之前被调用,可以校验登录信息或者一些特定信息 //返回为false时,请求

2021-12-30 14:57:55 482

原创 springmvc-入门

文章目录1 maven从0搭建1.1 添加依赖1.2 添加spring-mvc配置1.3 创建webapp1.4 测试Controller2 核心解析2.1 核心控制处理方法2.2 三大组件2.3 修改视图解析器默认参数3 Controller响应3.1 页面跳转3.1.1 返回字符串3.1.2 返回ModelAndView对象3.2 回写数据3.2.1 输出流3.2.2 返回字符串3.2.3 返回对象或集合3.2.3.1 返回对象3.2.3.2 返回集合4 Controller请求4.1 基本数据类型参数

2021-12-30 10:34:21 531

原创 mybatis-注解方式

文章目录1 主要注解2 单表查询2.1 配置文件2.2 接口类2.3 测试3 多表查询3.1 一对一查询3.1.1 接口类3.1.2 测试3.2 一对多查询3.2.1 接口类3.2.2 测试3.3 多对多查询3.3.1 接口类3.3.2 测试4 总结结合mybatis-配置文件方式,搞懂注解方式。1 主要注解注解标签说明@Insertinsert添加操作@Updateupdate更新操作@Deletedelete删除操作@Selectselect

2021-12-23 23:26:36 1445

原创 mybatis-配置文件方式+spring整合

mybatis 持久层框架,内部封装了JDBC,屏蔽了JDBC API底层访问细节,采用ORM(Object Relational Mapping)思想解决了实体和数据库映射的问题,应用程序访问数据库更方便。

2021-12-23 17:07:08 658

原创 spring-JdbcTemplate

JdbcTemplate是对JDBC API的进一步封装,简化了java操作数据库的步骤。注意:本章是在Spring-配置数据源的基础上进行操作的。1 引入依赖spring封装的jdbc操作:<!--JdbcTemplate--> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-jdbc</artifactId>

2021-12-21 14:03:29 1002

原创 Spring-配置数据源

文章目录1 c3p01.1 引入依赖1.2 程序实现1.2.1 java文件1.2.2 xml文件1.2.3 注解实现2 druid2.1 引入依赖2.2 程序实现2.2.1 java文件2.2.2 xml文件2.2.3 注解实现3 总结数据源(数据库连接池),是为了提高程序性能而出现的。使用连接时,从数据源中获取已初始化的连接资源,使用完后将连接资源归还给数据源。常用的数据源有c3p0和druid。1 c3p01.1 引入依赖<dependency> <groupId&g

2021-12-20 11:43:24 1053

原创 spring-AOP

文章目录1 动态代理1.1 JDK动态代理1.2 CGLIB代理2 AOP2.1 XML示例2.1.1 程序实现2.1.2 增加配置2.1.3 测试2.2 注解示例2.2.1 配置文件2.2.2 程序实现2.2.3 测试3 必知概念3.1 基本概念3.2 通知类型3.3 切点表达式AOP (面向切面编程),本质是动态代理,使用AOP技术,可以降低业务逻辑各部分之间的耦合度,提高程序的可重用性,可用于事务管理、日志输出、拦截器、权限验证等。1 动态代理程序在运行期间,动态的生成代理对象,代理对象的方法执

2021-12-19 18:20:44 191

原创 spring入门-注解

文章目录1 原始注解1.1 实例化对象的注解1.2 依赖注入的注解1.3 其他2 新注解2.1 去掉applicationContext.xml2.2 其他3 使用junit测试3.1 引入依赖3.2 测试程序spring中的注解是用来代替xml中繁琐的配置而生的。本文从原始注解和新注解两方面来说明注解的使用。1 原始注解applicationContext.xml中指定需要扫描的包或类,spring来识别使用注解配置的类、字段和方法。<beans xmlns="http://www.spri

2021-12-18 13:51:21 438

原创 spring入门-配置文件

文章目录1 spring基础应用1.1 引入依赖1.2 创建服务类1.3 创建配置文件1.4 测试2 依赖注入2.1 依赖注入方式2.1.1 构造方法2.1.2 set方法2.1.3 测试2.2 依赖注入的数据类型2.2.1 基本数据类型2.2.2 集合类型3 其他配置文件引入1 spring基础应用1.1 引入依赖 <properties> <spring.version>5.3.13</spring.version> </pr

2021-12-17 17:24:44 6238

原创 mac与虚拟机中centos共享资源

mac与虚拟机中资源共享

2021-12-06 22:41:52 1185 1

原创 SpringBoot中的日志组件

日志门面JCL、slf4j日志实现JUL、logback、log4j、log4j2JUL全称Java util Logging是java原生的日志框架,使用时不需要另外引用第三方类库,相对其他日志框架使用方便,学习简单,能够在小型应用中灵活使用。应用使用Logger来进行日志记录,Logger持有若干个Handler,日志的输出操作是由Handler完成的。在Handler在输出日志前,会经过Filter的过滤,判断哪些日志级别过滤放行哪些拦截,Handler会将日志内容输出到指定位置(日志文

2021-12-01 16:05:14 438

原创 日志实现组件--log4j2

log4j2是log4j的升级版,日志级别也与log4j相同,提升主要有:异常处理:提供了一些Appender中的异常的异常处理机制。性能提升较大。自动重载配置,在生产上可以动态的修改日志的级别而不需要重启应用。无垃圾机制,在大部分情况下,都可以使用无垃圾机制,避免频繁的日志收集导致的gc。log4j2既可作为门面,也可作为日志实现组件与其他门面(如:slf4j)结合使用。1 log4j2简单应用1.1 引入依赖<!--Log4j2门面--> <dependency&

2021-11-30 15:40:45 727

原创 日志门面组件--slf4j

slf4j(simple logging facade for java) ,主要是为了给Java日志访问提供一套标准、规范的API框架,具体的实现可交由其他日志框架。slf4j也有比较简单的日志实现组件,一般很少用。slf4j通常绑定其他日志实现组件,或者通过桥接的方式使用其他日志实现组件。1 slf4j简单应用1.1 引入依赖<!--slf4j门面 --> <dependency> <groupId>org.slf4j</groupId>

2021-11-30 11:29:35 308

原创 日志实现组件--log4j

log4j是Apache下开源的日志框架,可以控制日志信息输出到控制台、文件、数据库、发送到邮箱等,可以设置日志的输出格式,通过定义日志的输出级别控制日志的输出过程。1 实现原理1)应用获取Logger对象从LogManager中获取Logger2)指定日志级别Level,指定日志记录LoggingEventLoggingEvent相当于jul中的LogRecord日志级别:从高到低:FATAL、ERROR、WARN、INFO、DEBUG、TRACE、ALL一般使用INFO及以上级别

2021-11-29 17:04:22 743

原创 日志实现组件--jul

jul(java util logging)是java原生的日志实现,相对于其他第三方日志实现组件而言,使用更为简单方便,适用于小型应用。

2021-11-29 14:23:07 277

原创 springcloud注册中心-Eureka入门案例

springcloud注册中心-Eureka入门案例创建项目创建模块服务端客户端启动多个服务或者客户端创建项目pom文件中添加springboot和springcloud的坐标,包含版本信息,这样项目下各模块的pom文件中引入坐标,不再需要添加版本号了。 <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-start

2021-10-25 22:18:38 88

原创 maven下载及配置

maven可以看做是一个软件项目管理工具,有规范的项目目录结构,pom.xml文件中管理依赖的jar包坐标,jar包从仓库中获取(本地仓库和maven中央仓库)。下载maven:https://maven.apache.org/download.cgi创建setting.xml文件,配置本地仓库和远程仓库:<?xml version="1.0" encoding="UTF-8"?><settings xmlns="http://maven.apache.org/SETTIN

2021-07-22 16:47:03 2065

原创 AES前端js加密后端java解密

折腾了很久,终于搞定了aes对称加解密的问题。1、前端加密需要引入aes.jsCryptoJS-master->rollups文件夹下的,千万别从components文件夹下取。<script src="<%=basePath%>common/aes/aes.js"></script>function encrypt(pass) { var key = "ab3456ha89012346"; var iv = "ab3456

2021-04-01 13:36:57 764 2

原创 excel vba 定时自动查询oracle数据库显示查询结果

打开excel就能看到数据库查询结果,而且能定时自动完成查询并更新数据,想要实现么?跟着这些步骤操作起来:1、打开excel中的vb表单名称->右键->查看代码2、双击上图中模块1添加查询数据库及定时执行代码...

2021-02-26 17:58:53 1044

原创 win10 64位系统 excel2016 vba odbc方式 访问 oracle远程数据库 免安装oracle客户端

因工作需要,想写一个定时查询数据库,并在excel表里显示查询结果的程序,结果在连接oracle数据库这一关,就被卡了小两周时间。本地没有安装oracle客户端,也不想安装客户端,所以查了用免安装客户端怎么连接,并且按照那些方法操作,还是没有成功,不是找不到驱动,就是找不到数据源,找了很多网上的方法还是没有解决。因为我远程访问的数据库版本是oracle11g的,所以我一直认为客户端也需要11g的,所以一直用的instantclient_11_2。出于我不想安装客户端,今天又想了一下,可能客户端版本与

2021-02-24 17:58:55 2900

原创 postman轻松测试webservice接口

换了新电脑的缘故,需要重新装各种软件。原来测试webservice接口的soapui想换成postman试试,结果并不顺利。主要问题:如何指定接口方法、如何传参、为什么发起请求不返回请求结果。请求如下:点击send之后,返回的结果和浏览器直接访问接口显示内容一样。。。后来搜索了好久,没找到答案,灵光一闪,把请求路径中的?wsdl去掉之后,就能看到正常的返回结果了!!!请求xml报文说明如下:更简洁的请求报文(去掉了自定义标签,yyyy请求方法,in0参数名称):<s

2020-07-27 14:49:23 2764

原创 win10下jdk环境变量配置

每次换电脑或者换系统都要做的操作(不然eclipse都打不开),还是记录一下吧。第一步:下载jdk,傻瓜式安装(或者把原来安装好的文件夹拷贝一下)第二步:配置环境变量(win10)系统变量添加JAVA_HOME=E:\java\jdk(jdk所在路径)系统变量Path中添加%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;系统变量添加CLASSPATH=.;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar第三步:

2020-07-22 15:12:08 112

原创 为什么float类型数据不能直接比大小

float类型数据不能直接比大小,需要做一些处理才行,这是由计算机采用二进制的方式存储数据导致的。十进制整数转二进制:十进制数除2,取余,从最后一个余数到第一个余数得到的数,即为转换后得到的二进制值。13的二进制为1101十进制小数转二进制:小数部分乘以2,取整数部分,从第一个到最后一个整数,得到的数,即为小数部分的二进制值。但是小数部分可能会出现无限循环的情况,所以float...

2019-10-20 15:20:10 3183

原创 python--从剪切板取值

1.下载pyperclippip install pyperclip2.复制内容3.执行脚本import pyperclipcopy_content = pyperclip.paste() # 返回剪切板复制的内容 # 在python3下返回的是str类型的, ...

2019-10-19 13:12:52 205

原创 使用代理的情况下,下载python开发要用的模块

指定使用的代理ip和端口号,--proxy="代理ip:端口号"即可:1.下载scrapypip install scrapy --proxy="代理ip:端口号"2.下载pandaspip install pandas --proxy="代理ip:端口号"...

2019-10-18 11:25:25 258

原创 python--文件操作

1.文件类型:原生二进制文件,缓冲二进制文件及文本文件。2.获取文件对象:open(文件名,文件操作模式) open(文件名)这种默认模式是r文本文件操作模式:只读模式:r只写模式:w读写模式:r+在此模式下写文件,会从文件指针位置处开始写,直接写文件,会...

2019-10-08 17:37:43 110

原创 python--栈和队列

使用list实现栈,使用deque实现队列(使用list实现队列效率低)。1.使用list实现栈--先进后出class Stack: ''' 使用列表实现栈 ''' def __init__(self, lis): self.lis = lis def append(self, args): self.lis...

2019-10-07 11:18:50 79

原创 CSS--浮动

一、浮动所有的标签一旦设置浮动,就能够并排显示,并且不区分是行内还是块级元素,可以设置宽高。1.float--可取值如下:none:不浮动,默认left:左浮动right:右浮动2.浮动的四大特性(紧凑效果、脱标、互相贴靠、"字围"效果)(1)紧凑效果一个浮动元素,如果没有设置width和height,就自动收缩为文字的宽度和高度。类似行内元素,如<span&...

2019-08-06 11:24:42 110

原创 oracle轻量级客户端安装

从学习oracle数据库开始,都是通过oracle安装包,安装客户端和服务端程序,有时候安装很不顺利,感觉有阴影了,所以不愿意重新安装。昨天在建Django项目的时候,想连接oracle数据库,首先因为oracle10.2版本太低,且非64位的,被提示需要11.2以上的版本,并给出了oracle官方Instant Client的下载地址https://www.oracle.com/database...

2019-06-25 10:49:23 706

原创 编码

硬盘上存储的字符都是二进制形式的。从内存写到硬盘采用哪种编码方式,从硬盘读到内存就用哪种编码方式。内存中的字符可以转为unicode编码方式显示,因为所有的系统、编程语言都默认支持unicode,且unicode包含了跟全球所有国家编码的映射关系。python3中的str类型就是unicode编码方式的。编码 占用字节 说明 备注 ASCII 1 只支持英文...

2019-06-18 11:25:28 171

原创 python3--logging模块

logging模块用于日志相关操作。详参https://docs.python.org/3.7/library/一、直接使用logging通过basicConfig参数设置输出日志内容的格式、日志级别等信息。basicConfig参数说明 参数名 参数说明 filename 指定日志存储文件 filemode 指定日志写入方式,在指定了filename时使用...

2019-06-17 09:41:19 119

原创 python3--hashlib模块

hashlib提供的摘要算法md5、sha1、sha224、sha256、sha384、sha512、blake2b、blake2s、sha3_224、sha3_256、sha3_384、sha3_512、shake_128、shake_256。摘要算法通过摘要函数(单向函数)对任意长度的数据计算出固定长度的摘要,目的是为了验证原始数据是否被篡改。from hashlib import md...

2019-06-13 11:12:53 226

原创 python3--序列化

序列化:将其他数据类型的数据转换为字符串类型---------类似于使用str(...)反序列化:将字符串类型的数据转换为其他数据类型的数据-----------类似于使用eval(str),但字符串str被当成有效的表达式来求值并返回计算结果,存在极大的安全隐患。1.json(字符串和python数据类型间进行转换,多种语言通用,应用范围广)操作普通类型数据--序列化dumps,反序...

2019-06-12 16:25:35 253

原创 正则表达式

一、单字符匹配匹配内容 表达式 备注 匹配任意一个数字 \d或[0-9]或[0123456789] d代表“数字”(digit) 匹配除数字外的任一一个字符 \D   匹配任意一个字母 [a-zA-Z]   匹配任意一个字母、数字或者下划线 \w或[0-9a-zA-Z_] w代表“单词字符”(word) 匹配除字母...

2019-06-06 15:13:01 112

原创 MongoDB

1.MongoDB的安装下载MongoDB:https://www.mongodb.com/download-center/community傻瓜式安装,注意选择安装目录,本人选择的目录为E:\MongoDB\。安装完成后,在安装路径下的bin目录可以找到MongoDB的客户端和服务端,mongod.conf为手动添加的配置文件mongod.conf2.启动服务端...

2019-05-30 16:06:14 97

原创 python3--random模块

一、生成随机数1.随机小数random、uniformimport random# 大于0且小于1的小数print(random.random()) # 0.858011901589807# 指定生成小数的范围print(random.uniform(2,6)) # 4.255797167999905 大于2小于6的小数2.随机整数randint、randrang...

2019-05-28 16:47:05 134

原创 python3--time模块

python中表示时间的三种方式:时间戳、格式化的时间字符串、结构化时间(struct_time)。一、三种时间格式1.时间戳(timestamp) :表示的是从1970年1月1日00:00:00开始按秒计算的偏移量。import timeprint(time.time()) # 1558946165.2868013 当前时间戳,float类型2.格式化的时间字符串(Fo...

2019-05-28 15:12:17 81

原创 python3--格式化

一、字符串格式化 f或者F hell = 'hello'worl = 'world'print(f'{hell} {worl}') # hello worldprint(F'{hell} {worl}') # hello worldprint(f'{hell:10} {worl}') # hello world :后指定占10个字符hello = '你好'...

2019-05-23 15:38:48 281

原创 python3--生成器

生成器包含yield语句。函数使用yield而不是return返回结果。yield一次生成一个值后,函数停止执行,处于挂起状态,被重新激活后,从停止处继续执行。 本质是迭代器,实现了迭代器的功能。 优点:不会一次性在内存中生成太多数据,根据需要生成。 获取生成值的方法:__next__()或者send(参数),但是send(参数)不能用在首次获取生成值的时候。 yield from ...

2019-05-21 14:56:40 98

CryptoJS.rar

各种算法加解密js

2021-04-01

oracle install client.zip

oracle11.2 轻量级instantclient 64位及32位的版本。

2019-06-25

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除