- 博客(31)
- 收藏
- 关注
原创 WebMvcConfigurer的配置原理
这个类也是一个配置类,并把环境中所有的WebMvcConfigurer全部配置到了WebMvcConfigurerComposite这个代理类中,方便后续配置的使用.@Import(EnableWebMvcConfiguration.class)导入了EnableWebMvcConfiguration这个类,看这个类的声明。继承了DelegatingWebMvcConfiguration 这个类,看这个类的声明。说明这个类是WebMvcConfigurationSupport 的类型.
2023-06-12 10:49:51 499
原创 shell脚本的一些语法
#!/bin/bashecho 'Hello World !' #输出到控制台chomd +x ./test.sh #使脚本具有执行权限#使用shell变量,显式赋值path='/opt/'#语句复制for file in `ls/etc`; do echo "name=${file}"done#将该变量变成只读变量url='https://www.google.com'readonly url#shell字符串str='this is a string'#相比单引号..
2021-11-23 11:00:51 642
原创 java操作ES的操作
package com.dp.elasticsearch;import com.dp.mybatis.pojo.User;import com.fasterxml.jackson.databind.ObjectMapper;import org.apache.http.HttpHost;import org.elasticsearch.action.admin.indices.delete.DeleteIndexRequest;import org.elasticsearch.action.b.
2021-11-23 10:44:07 2730
原创 json工具类
public class JsonUtils { public static ObjectMapper mapper = new ObjectMapper(); static { // 转换为格式化的json mapper.enable(SerializationFeature.INDENT_OUTPUT); // 如果json中有新增的字段并且是实体类类中不存在的,不报错 mapper.configure(Dese..
2021-09-16 16:55:07 155
原创 mybatis在工作中的使用范例
动态sql<select id="findActiveBlogWithTitleLike" resultType="Blog"> SELECT * FROM BLOG WHERE state = ‘ACTIVE’ <if test="title != null"> AND title like #{title} </if></select><select id="findActiveBlogLike"
2021-09-15 16:55:33 104
原创 Java基础
目录一.数据类型Java基础包装类型缓存池二.String概览不可变的好处String,StringBuffer and StringBuilder1.可变性2.线程安全String Pool三.运算参数传递float与double四.关键字final1.数据2.方法3.类static1.静态变量2.静态方法3.静态语句块4.静态内部类5.静态导包6.初始化顺序五.Object通用方法equa
2021-08-12 16:27:24 155
原创 在linux中安装redis
1.yum install wget2.cd ~3.madir soft4.cd soft5.wgethttp://download.redis.io/releases/redis-4.0.8.tar.gz6.tar -xf redis...tar.gz -v:是回显到显示台上.7.cd redis src8.看README.md9.make (如果gcc没有安装)-- yum install gcc-4.8.5(公司服务器使用的是4.8.5,这里也用的是4.8....
2021-08-11 10:13:07 77
原创 maven(1)
maven是什么?maven的本质是一个项目管理工具,将项目开发和管理过程抽象看成一个对象。maven的作用?maven的作用我们可以分成三类:1 项目构建:提供标准的,跨平台的自动化构建项目的方式2 依赖管理:方便快捷的管理项目依赖的资源(jar包),避免资源间的版本冲突问题。3 统一开发结构:提供标准的,统一的项目开发结构maven的仓库:用于存储资源,主要是各种jar包仓库有三种:本地仓库,私服,中央仓库,其中私服和中央仓库都属于远程仓库。中央仓库:maven团队自
2021-07-12 17:22:58 220
原创 Java虚拟机
-、运行时数据区域程序计数器提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录前言 一、pandas是什么? 二、使用步骤 1.引入库 2.读入数据 总结前言提示:这里可以添加本文要记录的大概内容:例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。提示:以下是本篇文章正文内容,下面案例可供参考一、pandas是什么?示例:pandas 是基于NumPy
2021-07-05 19:27:38 91
原创 Java部署项目命令小结
nohup java -jar *jarFile > jar.log 2>&1 &nohup: 不挂断的运行命令,直到&;java: 运行java指令;-jar: 指定命令运行的是jar还是war文件;*jarFile: 运行的文件;> jar.log: 指定标准输出流输出的位置;2>&1: 2掉膘标准错误输出流,1代表标准输出流,&是合并的意思。0表示输入流。 注:因为项目中有输出日志(也就是说上面的命令会输出两个一样的日志内容.
2021-06-30 16:05:34 348
原创 使用mybaits时遇到的问题1
使用mybatis时遇到了一个bug,磨了一个下午,最后查看别人的文章最后总算解决了,这里记录下。原文章在这里:https://blog.csdn.net/weixin_43244841/article/details/107339953为了放置该路径
2021-06-01 17:37:33 188
原创 Cron表达式语法
* * * * * * 秒 分 时 日 月 星期 年(可不写)cron表达式分为七个域。其中最后一个域可以为空。每个域都有自己允许的值和一些特殊字符构成。下面是特殊字符的说明逗号(,):指定一个值的列表,例如在时域上 1,11,14,23表示凌晨1点,中午11点,下午两点,晚上11点。横杠(-):指定一个范围,例如在时域上3-6表示3点-6点(即3点,4点,5点,6点)。星号(*):表示这个域的所有合法的值,例如在日域上使用*,代表每天都会触发。斜线(/):表示递增,例如使用在秒.
2021-05-14 15:16:57 949
原创 网络通信OSI七层模型
OSI模型:开放式系统互联通信参考模型(Open System Interconnection Reference Model,缩写为OSI),一种概念模型,由国际标准化组织提出,一个试图使各种计算机在世界范围内互联为网络的标准框架。 OSI将计算机网络体系结构(architecture)划分为以下七层:物理层:将数据转换为可通过物理介质传送的电子信号,相当于邮局中的搬运工人。数据链路层:决定访问网络介质的方式。在此层将数据分帧,并处理流控制。本层指定拓扑结构并提供硬件寻址,相当于...
2021-04-02 16:03:44 551
原创 Cipher的初应用
javax.crypto.Cipher是JCA(Java Cryptographic Extension,java加密扩展)提供的密码框架。 //java加密扩展(JCE)框架的核心。提供了加密和解密的功能。 Cipher cipher = Cipher.getInstance("DES"); //用秘钥与随机源初始化此密码 cipher.init(2,secretKey,sr); //在单一部分操作中加密或解密数据。或完成多部分操作。 byte[] bytes = cipher.doFin
2021-03-13 16:11:37 1324
转载 雪花算法的java实现
/** * 描述: Twitter的分布式自增ID雪花算法snowflake (Java版) * **/public class SnowFlake { /** * 起始的时间戳 */ private final static long START_STMP = 1480166465631L; /** * 每一部分占用的位数 */ private final static long SEQUENCE_BIT = 12; /.
2021-03-05 16:59:23 111
原创 volatile关键字的作用。
1.volatile保证了可见性与禁止指令重排。2volatile并没有保证原子性。下面开始验证。首先建立这个类以供后面使用。public class MyData { volatile int number=0; public void numTo60(){ this.number=60; } public void numadd(){ number++; }}开始验证public class
2021-02-19 17:23:27 165
原创 SpringMVC工作流程
服务器启动加载web.xml中的DispatcherServlet 读取spring-mvc.xml的而皮质,加载所有com.yf包中所有标记为bean的类 读取bean中方法上标注@RequestMapping的内容处理请求DispatcherServlet配置拦截所有请求/ 使用请求路由与所有加载的@RequestMapping的内容进行比对 执行相应的方法 根据方法的返回值在webapp目录中查找对应的页面并展示.........
2021-02-08 14:10:32 134 1
原创 Spring的一些注解的作用
Spring的核心原理是IOC和DI;bean:作用 替换new操作,实例化指定的beanid:唯一标识class:权限定路径名scope:作用域 singleton prototypeinit-method:指定初始化方法destroy-method:指定销毁方法factory-bean:制定工厂实例factory-method:制定工厂方法DI:配置set注入<property name=属性名 value=基本数据类型的值/ref=引用数据类型/&g.
2021-02-03 19:49:41 305
原创 #和$符的区别,在java中
#是占位符KaTeX parse error: Expected 'EOF', got '#' at position 39: … User where id=#̲{id}就相当于select …{id}就相当于select * from User where id=你没有看错,id=后面就是什么都没写,就等拼接了.不能解决sql注入攻击.但是#可以解决sql注入攻击....
2020-09-21 20:37:22 285
原创 IoC
IoC:(Inversion Of Control) 控制反转.原本对象是直接创建的,用了Spring框架后,对象是由框架构造好后,运行时直接调用的.不用自己在代码中创建.
2020-09-02 19:31:12 69
原创 Java中数组和链表的由来
电脑中,我们存储数据,在内存里面都是乱放的,当内存用的差不多的时候,这时候我们想要存储一个比较大的数据,我们发现没有那么大块的存储空间了,此时我们还想存进电脑里面怎么办?有以下两种方法:①:把电脑里面的数据都存放到一块,不要零散的存放.这样就会腾出一块可以比较大的内存空间,这样的存储方法就是数组了.但是,这种方法会有一个问题,就是移动数据时,会造成数据的丢失.②:就是将这个较大的数据,按照零散的形式存放.这是存放的形式就是链表了....
2020-08-21 18:57:43 135
原创 快速排列的一些注意事项!
这里用到了快速排列的思想和递归的思想(这里看不懂的代码里面会详细的讲解)快速排列的思想主要是:1.将数组里面的第一个数字作为基准数字(后面的基准数字都统一叫做基数)2.剩余数字开始和基数比较.注意:这里的比较比较特殊.分为左右两条线路进行比较先说左边的,这里需要从数组的左边开始查找,找到一个比基准数字大的数.(叫做左数)再说右边的,从数组的右边开始查找,找到一个比基准数字小的数.(叫做右数)找到之后将左数和右数进行交换.而后继续找,直到左右两边查找到同一个数字了(叫做中数)此时,将基数与中
2020-08-20 21:00:21 238
原创 序列化和反序列化的一些注意事项
序列化就是将对象保存到磁盘中反序列化就是将对象读取出来注意事项:1.想要让一个对象能够进行序列化,需要将这个对象所属的类实现一个标记接口(Serializable).2.如果序列化后,这个类进行了修改,反序列时会报错(会抛出 InvalidClassException异常)可以在这个类中加private static final long serialVersionUID = X L;X是不大于long型数字的最大值的整数数字.原因:如果不加这段代码,存到本地是的序列号是随机的,如果修改了类中
2020-07-24 16:46:25 675 1
原创 IO流:字节流
File类File类的构造方法方法名说明File(String pathname)通过将给定的路径名字符串转换为抽象路径名来创建新的 File实例File(String parent, String child)从父路径名字符串和子路径名字符串创建新的 File实例File(File parent, String child)从父抽象路径名和子路径名字符串创建新的 File实例绝对路径是一个完整的路径,从盘符开始相对路径是
2020-07-10 19:24:46 98
原创 API的一些基础方法
常用APIMath类概述:执行基本数字运算的方法Math中方法的条用方式:Math类中无构造方法,但内部的方法都是静态的,则可以通过 类名.进行调用Math类的常用方法:Math.abs(int a) 返回参数的绝对值Math.ceil(double a) 返回大于或等于参数的最小double值,等于一个整数Math.floor(double a) 返回小于或等于参数的最小都变了值,等于一个整数Math.round(float a) 按照四舍五入返回最接近参数的intMath.max(
2020-07-10 18:11:17 221
原创 Java中面向对象的一些基本知识
面向对象三大特性:封装,为了解决程序数据的安全性继承,为了解决程序代码的重复性多态,为了解决程序代码的扩展性private 可以用来修饰类的成员变量/成员方法作用:如果成员变量被private修饰了,那么该成员变量只能类的内部访问,外部无法访问!!!接着:我们还需要暴露一种访问该成员变量的方式,称为获取器和设置器(getter And setter)this关键字就是用于区别成员变量和局部变量重名的这种情况的Java根据就近原则,所以优先使用局部变量如果我们想使用成员变量,只需要加上t
2020-07-10 18:06:40 109
原创 集合的一些总结,纯文字
List集合:数据结构:栈结构:先进后出队列结构:先进先出数组结构:查询快,增删慢(因为数组中有索引值,所以可以很快的查询到该索引的值,但是增删时,需要将删除后面的数值全部向前提,所以比较慢)队列结构:查询慢,增删快(因为队列中没有索引值,所以要查找时,需要一个一个的去查询,所以比较慢,但是增删时,队列中值链接是根据节点连接的,可以很方便的将其中某个值删除,后面的一个数据只需将节点和删除数据的前面的数据节点连接就行,只需要动3个数据)ArrayList集合:底层是数组结构实现,查询快,增删慢,
2020-07-02 14:55:16 145
原创 迭代器基础使用
/**迭代器介绍- 迭代器,集合的专用遍历方式- Iterator<E> iterator(): 返回此集合中元素的迭代器,通过集合对象的iterator()方法得到Iterator中的常用方法 boolean hasNext(): 判断当前位置是否有元素可以被取出 E next(): 获取当前位置的元素,将迭代器对象移向下一个索引位置*/public static void main(String[] args){//创建集合对象 Collection<
2020-07-02 12:46:23 2256
原创 冒泡排序的一个小案例
public class BubbleSort {//冒泡排序 //核心思想:就是一个数组,里面的第一个数字和第二个数字比较,取最大,和下一个数字比较,这样来一轮后就可以确定这个数组中的最大值了 //而后就可以不比这个值了,继续刚刚的操作,就可以将数组里面的数字排列好了 public static void main(String[] args) { int[] arr={3,1,5,2,4};//创建一个无序数组 bubbleSort(arr);//
2020-06-30 00:09:23 216
原创 二分查找的小应用
二分查找的一个小案例//使用二分查找的前提:// 一定要求数组中的数值排列时按数值大小来排列的public class BinarySearch { public static void main(String[] args) { //创建一个数组 int[] arr={1,2,3,4,5,6,7,8,9,10}; Scanner sc=new Scanner(System.in); System.out
2020-06-29 23:24:45 113
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人