自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(59)
  • 收藏
  • 关注

原创 Windows系统剪切板不可用

解决办法把有道词典关了把向日葵关了把加密视频播放器关了

2021-11-30 22:26:34 1153

原创 Java字符串匹配算法

定义串(string)是由零个或多个字符组成的有限序列又名叫字符串。一般地,由n个字符串构成的串记作: S=“a0a1…an-1”(n≥0),其中a_i(1≤i≤n)n是个有限的数值串一般记为S是串的名称,用引号括起来的字符序列是串的值可以是字母,数字或其他字符,i就是该字符在串中的位置,串中的字符数目n称为串的长度子串在对字符串S做处理时,经常需要取出其中某一连续的片段,称为S的子串(substring)具体地,由串S中起始于位置i的连续k个字符组成的子串记作substr(S,

2021-11-07 15:21:38 7900

原创 javaWeb基础

软件架构C/S客户端/服务器端B/S浏览器/服务器资源分类静态资源:所有的用户访问后,得到的结果都是一样的静态资源可以直接被浏览器解析动态资源:每个用户访问相同资源,得到的结果可能不一样.动态资源被访问后,需要先转换为静态资源,再返回给浏览器网络通信三要素IP:电子设备在网络中的唯一标识端口:应用程序在计算机的唯一标识传输协议:规定数据传输的规则HTTP协议HTTP这是一种通信协议,指架构在TCP/IP之上应用层的一种协议,通信协议基本上就是两台计算机间对谈沟通的方式. 浏览器

2021-11-06 21:17:29 174

原创 XML学习

XML概念XML指可扩展标记语言(EXtensible Markup Language)XML没有预定义标签,需要自行定义标签<标签></标签>XML特点XML数据以纯文本格式存储实现不同应用程序之间的数据通信实现不同平台间的数据共享实现不同平台间的数据通信使用XML将不同的程序,不同的平台间联系起来XML的作用数据存储和数据传输,可以用来做配置文件,javaEE开发中用xml来配置文件,SSM,DUBOO分布式框架等等XML和HTML之间的差异HTML

2021-11-06 11:15:13 153

原创 window的Tomcat和Linux的Tomcat安装

最近没事玩了一下自己的阿里云服务器,然后想着Tomcat好像都没安装就去网上搜了一些资料顺便整理一下自己以前Windows安装Tomcat的经验,写个博客记录一下.Tomcat是个啥自行百度(doge)Windows的Tomcat安装首先到官网下载我这里选的是8.5的版本,下载后解压到你要的位置就可以了(最好记住位置)打开后会显示以下文件夹目录:在bin文件夹下的startup.bat与showdown.bat是启动和关闭但如果你直接点击启动可能会闪退所以你需要配置路径打开环境变量,

2021-11-06 00:16:02 605 1

原创 Redis事务和过期处理

线程执行先后顺序和快慢是由操作系统和CPU自动决定的,为了解决这个问题可以使用Redis的事务什么是事务事务是指将一个业务逻辑作为一个整体一起执行,其实就是打包一组操作(或者命令)作为一个整体,在事务处理时将顺序执行这些操作,并返回结果,任何一个环节出错,所有的操作都会回滚.Redis事务提供一种将多个命令打包,一次性顺序的执行,Redis的事务可以保证只有在执行完事务中的所有命令后,才会继续处理此客户端的其他命令.也就是只有一个用户可以操作事务当中的数据.开启事务命令Redis事务四大指.

2021-11-05 15:34:46 81

原创 JQuery笔记

概述jQuery是一个快速、简洁的JavaScript框架,是继Prototype之后又一个优秀的JavaScript代码库(或JavaScript框架)。jQuery设计的宗旨是“write Less,Do More”,即倡导写更少的代码,做更多的事情。它封装JavaScript常用的功能代码,提供一种简便的JavaScript设计模式,优化HTML文档操作、事件处理、动画设计和Ajax交互JQuery的下载:JQuery官网引入JQuery首先创建js文件夹,里面放入jQuery.js在ht

2021-10-28 23:00:24 55

原创 Redis实战-类目操作

类目简介上述图片的箭头指向的便是类目功能描述添加类目:完成单个类目信息的录入查询单个类目:根据类目主键查询类目详情信息以及它所对应的子类目信息查询所有类目信息:查询出所有类目信息以及它的所有子类目信息领域模型将信息抽象为对应的领域模型定义子类目数据使用List类型是因为可能存在多个子类目为了方便查询我们在模型上加了父类目id,可以根据一个类目id即可查询其所有的子类目信息类目基础操作由于大型网站平台每天可能有上亿人访问,如果没访问一次类目就需要调用一次数据库,那这样对数据

2021-10-17 15:46:23 240 1

原创 Redis介绍

Redis简介Redis是现在最受欢迎的NoSQL数据库之一,Redis是一个包含多种数据结构,支持网络,基于内存,可选持久化的键值对存储数据库Redis的优点基于内存运行,性能高效支持分布式,理论上可以无限扩展丰富的数据类型Redis安装sudo docker pull redis:latestsudo docker imagessudo docker run --name redis -p 6379:6379 -d --restart=always redis:latest re

2021-10-09 20:46:22 59

原创 java-图论

图的概念图的定义由顶点和边组成的一种结构,顶点的集合V,边的集合E,所以图记为G=(V,E)无向图顶点之间的边没有方向则这个边叫作无向边,用无序偶(vi,v2)表示对如果图中任意两个顶点之间都是无向边那么这个图就是无向图,无向图中两个顶点之间都存在边,则图称为无向完全图有向图顶点之间的边有方向这条边就叫有向边也称为弧用<v1,v2>表示v1称为弧尾(Tail),v2称为弧头(Head),如果任意顶点之间的边都是有向边,则该图称为有向图图的权有些图的边或弧具有与他相关的数字,

2021-10-09 11:22:17 623 1

原创 java内部类

概述把类A定义在另一个类B里面,里面的那个类就称为内部类,B称为外部类,作为外面这个类的一个属性看待分类:常规内部类,局部内部类,静态内部类,匿名类常规内部类定义在类中方法外的类class 外部类{ class 内部类{ }}描述事物时,若一个事务内部包含其他事物,就可以使用内部类这种结构比如汽车中包含发动机:class Car { //外部类 class Engine { //内部类 } }访问方式:内部类可以直接访问外部类的成员,包括私有成

2021-10-09 09:30:06 47

原创 Java并发编程

学习多线程是为了更好的优化程序,提升程序整体的运行效率继承Thread类线程类继承Java的Thread类实现线程类,重写父类的run()方法public class Person extends Thread { @Override public void run() { try { System.out.println(getName() + " 开始取钱"); Thread.sleep(200); .

2021-10-07 17:19:41 174

原创 事件与表单处理

事件处理程序响应某个事件的函数就叫事件处理程序,事件处理程序一般以on开头HTML事件处理程序<input type="button" value="click me" onclick = "alert('clicked')"/> <script> //这个函数有权访问全局作用域中的任何代码 function showMsg(){ alert('hello world'); } </script> <input type="button

2021-10-05 14:49:11 170

原创 常用设计模式

单例模式现实生活中常出现唯一的现象,比如地球只有一个为了保证一个类只有一个实例,核心办法就是把构造方法设置为私有的,也就是只有自己才能实例化自己public class ClassMaster { private String id; // 班主任名称 private String name; private String gender; // 唯一实例 private static ClassMaster instance = new ClassMaster();

2021-10-04 15:54:50 73

原创 StringBuffer实现

代码实现import java.util.Arrays;public class MyStringBuffer { private int capacity = 16; private int length = 0; private char[] value; /** * 无参构造,创建了一个默认容量的字符数组 */ public MyStringBuffer(){ value = new char[capacity];

2021-10-03 09:59:53 285

原创 树-java实现

树的概念在客观世界中许多事物存层次关系,例如:使用树这种结构的原因是因为层次管理具有更高的效率树: N个节点构成的有限集合,含有一个称为根(Root)的特殊结点如上图的中国,其余的结点可分为若干个互不相交的树,称为原来结点的子树基本术语结点的度: 结点子树个数树的度: 树中所有的节点中最大的度叶结点: 度为0的结点父结点: 有子树的结点是其子树的根节点的父结点子结点: 若A是B的父结点,B就是A的子结点注: 子树是不相交的除根结点外,每个结点有且只有一个父结点,一个N结点的

2021-10-03 09:46:48 859 1

原创 JDBC操作

使用步骤1.首先先导入驱动包,可以去官网下载,然后直接复制粘贴到你的项目里,再右键点击添加为库2.加载驱动类,通过驱动管理器获取连接对象,代码如下: 2. 加载驱动类 Class.forName("com.mysql.jdbc.Driver");// 3. 通过驱动管理器获取连接对象 -- Java和数据库建立连接 Connection conn = DriverManager.getConnection(

2021-09-29 09:53:24 76

原创 java并行数据

流合并对1-10的十个正整数求和:List<Integer> numbers = Arrays.asList(1, 2, 3, 4, 5, 6, 7, 8, 9, 10);int sum = numbers.stream() .reduce((a, b) -> a + b) .get();System.out.println("1-10求和 : " + sum);reduce()方法的作用是合并了所有元素终止计算出一个结果,这里的终止就是流已经到达重点结束了

2021-09-26 17:11:03 122

原创 Stream API

在java中Stream是一个接口流的迭代创建流一.直接创建import java.util.stream.Stream;Stream<String> stream = Stream.of("苹果", "哈密瓜", "香蕉", "西瓜", "火龙果");二.由数组转化String[] fruitArray = new String[] {"苹果", "哈密瓜", "香蕉", "西瓜", "火龙果"};Stream<String> stream = Stream.

2021-09-26 10:34:54 58

原创 MyBatis 进阶

分页插件MyBatis可以通过插件来很好的支持分页查询,目前最成熟的方案是pagehelper这个第三方插件依赖库为:<dependency> <groupId>com.github.pagehelper</groupId> <artifactId>pagehelper-spring-boot-starter</artifactId> <version>1.2.13</version>&l

2021-09-13 11:15:42 49

原创 MyBatis XML 循环语句

MyBatis很好的支持批量插入,使用foreach即可满足首先创建DAO方法:package com.youkeda.comment.dao;import com.youkeda.comment.dataobject.UserDO;import org.apache.ibatis.annotations.Mapper;import org.apache.ibatis.annotations.Param;import java.time.LocalDateTime;import jav.

2021-09-12 20:45:57 1331

原创 MyBatis XML条件语句

if语句在update节点中,一般会结合条件语句进行判断在执行:<update id="update" parameterType="com.youkeda.comment.dataobject.UserDO"> update user set <if test="nickName != null"> nick_name=#{nickName},gmt_modified=now() </if> where id=#{id}</up

2021-09-12 15:22:20 868

原创 MyBatis XML语句

XML配置要使用MyBatis的XML,首先得在application.properties文件中添加配置mybatis.mapper-locations,这个配置用于指定MyBatis Mapper XML文件路径,一般来说这个路径和DAO包路径一致,又因为代码以外的文件存放在resources文件目录下:mybatis.mapper-locations=classpath:src/main/resources/com/youkeda/comment/dao/*.xmlcom.youkeda.c

2021-09-12 11:29:03 671 1

原创 Spring Data

Spring Data MongoDB 配置依赖库:<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-mongodb</artifactId></dependency>配置:修改src/main/resources/application.properties文件,增加配置

2021-09-11 16:56:20 56

原创 Spring Session

CookieCookie是网络编程中使用最广泛的一项技术,主要用于辨识用户身份客户端与网站服务端通讯过程如下:从图可以看出服务端既要返回Cookie,也要读取客户端提交的Cookie读Cookie使用注解读cookie:如果知道了cookie的值则就可以通过注解的方式读取,不再需要遍历cookie数组为control类的方法增加一个@CookieValue("xxxx") String xxxx参数即可系统会自动解析并传入同名的cookieimport org.springfram

2021-09-08 15:44:11 74

原创 Spring Boot入门

ComponentScanSpring Boot框架会默认扫描启动类所在的包及其所有子包进行解析,但不会扫描平级的包,也不会自动实例化Bean,解决办法有一下两种:为启动类的注解@SpringBootApplication加一个参数,告知系统需要额外扫描的包:@SpringBootApplication(scanBasePackages={"fm.douban.app", "fm.douban.service"})public class AppApplication { public st

2021-09-06 15:09:45 44

原创 Spring Validation

JSR 380其实就是Bean Validation 2.0,这个就是Bean验证的规范,这里的Bean就是实例化后的POJO类,依赖库如下:<dependency> <groupId>jakarta.validation</groupId> <artifactId>jakarta.validation-api</artifactId> <version>2.0.1</version></depend

2021-09-05 17:42:25 68

原创 Thymeleaf入门

Thymeleaf是一个模板框架,Spring选择它作为默认模板方案举个例子:上述图片通过模板引擎,可以把java对象数据+模板页面动态的渲染出一个真实的HTML页面初始化Thymeleaf添加Maven依赖<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-thymeleaf</artifactId&gt.

2021-09-05 10:36:20 263

原创 Get Request

通过get协议我们可以动态的渲染网页,get request 必须要掌握的能力就是URL参数解析获取Http URL参数每个Http URL都可以设定自定义的参数如同上面的wd一样定义参数我们只需要在方法上面添加对应的参数和参数注解即可:import org.springframework.stereotype.Controller;import org.springframework.web.bind.annotation.*;@Controllerpublic class SongL

2021-09-04 16:00:22 1222

原创 Spring Controller入门

Web服务做的事情:Spring Controller技术的三个核心点:Bean的配置:Controller注解运用网络资源的加载:加载网页网址路由的配置:RequestMapping注解的运用1.Controller注解Spring Controller本身也是一个Spring Bean,只是它多提供了Web能力,只需要造类上提供@Controller注解即可import org.springframework.stereotype.Controller;@Controllerp

2021-09-04 15:37:17 2307 1

原创 Spring Resource

文件在工程的src/main/resources目录下,这是Maven工程存放文件的地方Maven执行package的时候,会把resources目录下的文件一起打包进jar包里在java内部当中,把文件路径称为classpath,类似于虚拟目录,根目录是从/开始代表的是src/main/java或者src/main/resources使用classpath读取文件,我们使用commons-io这个库来读取resources目录下的data.json:<dependency> &

2021-09-04 15:21:16 105

原创 Spring Bean

IoC容器是Spring框架最最核心的组件,在Spring框架当中,主要通过依赖注入来实现IoC.在 Spring 的世界中,所有的 Java 对象都会通过 IoC 容器转变为 Bean(Spring 对象的一种称呼,以后我们都用 Bean 来表示 Java 对象),构成应用程序主干和由 Spring IoC 容器管理的对象称为 beans,beans和它们之间的依赖关系反映在容器使用的配置元数据中。基本上所有的 Bean 都是由接口+实现类完成的,用户想要获取 Bean 的实例直接从 IoC 容器获取

2021-09-03 21:09:10 55

原创 Java注解(Annotation)

Annotation(注解)注解是java推出的一种注释机制,特点是它可以在编译运行阶段读取,从另一个角度看Annotation也是一个java类一个Annotation类里面可以继续引用其他的Annotation类Target它自身也是一个注解,他只有一个数组属性,用于设定该注解的目标范围,因为是数组所以可以同时设定多个范围如果要同时作用在类和方法上:@Target({ElementType.TYPE,ElementType.METHOD})Target值只要被设定为一种类型,

2021-09-03 20:30:41 51

原创 MyBatis 修改和删除

修改接口方法首先定义update方法: int update(UserDO userDO);@Update注解使用@Update注解完成SQL语句:@Update("update user set nick_name=#{nickName},gmt_modified=now() where id=#{id}")这里根据id主键修改了nick_name字段,但任何数据的修改都需要同步修改gmt_modified字段,这样可以知道数据在什么时候被修改了,代码如下:package co

2021-08-29 21:18:31 1591

原创 MyBatis插入

在MyBatis中同样支持插入,可以使用@Insert注解,包路径为: org.apache.ibatis.annotations.Insert按照顺序完成插入方法的实现:添加接口方法执行SQL插入语句时,会返回行数,一般成功返回1,所以设置返回类型为int,判断是否插入成功可以通过返回值>0来判断package com.youkeda.comment.dao;import UserDO;import org.apache.ibatis.annotations.Mapper;imp

2021-08-25 11:10:34 3265

原创 MyBatis查询

MyBatis的强大之处在于和SQL语句的天然集成查询代码的编写首先添加接口方法package com.youkeda.comment.dao;import org.apache.ibatis.annotations.Mapper;import UserDO;import java.util.List;@Mapperpublic interface UserDAO { //添加了findAll方法,查询多条记录时一般使用List作为返回类型 public List.

2021-08-25 10:37:01 53

原创 MyBatis DAO

在java工程化中,数据层服务称为DAO层,DAO层包含对数据库操作的接口和实现类创建DAO层先创建包:com.youkeda.comment.dao创建DAO接口以user表为例,创建UserDAO接口://放在dao包中package com.youkeda.comment.dao;import org.apache.ibatis.annotations.Mapper;//这个接口特殊在于添加@Mapper注解@Mapperpublic interface UserDAO {

2021-08-24 21:22:03 55

原创 MyBatis映射对象

DO对象规则所有的ORM框架都需要一个java对象来映射数据库的表,并且一一对应,一般把这类对象成为DO对象,对象名称规范是表名+DO,例如user表对象名称就是UserDODO对象包规则一般情况企业都会把这个DO对象存放在xxx.xxx.dataobject包下DO对象数据类型与普通POJO并无不同,但数据类型要与数据库类型进行匹配:Date为java的java.util.Date对象...

2021-08-24 21:01:25 159

原创 组件函数的调用

通过Vue提供的ref属性去访问子组件实例,并调用子组件中的方法调用子组件中的方法通过ref属性来访问子组件实例,并调用子组件中的方法:给要访问的子组件添加ref属性<template> <Modal ref="modal"></Modal></template>调用子组件中的方法通过this,$refs.modal来访问自定义组件Modal.vue:<script>export default { meth.

2021-08-23 10:53:59 277

原创 自定义组件绑定原生事件和自定义事件

在自定义组件的根元素上监听一个原生事件在和html原生标签上监听一个原生事件是有区别的如在App.vue中:<!-- 给自定义组件添加点击事件 print --><Article v-for="article in articleList" :key="article.title" :article="article" @click="print(article)"></Article>在Article.vue中:<div clas.

2021-08-23 10:23:59 274

空空如也

空空如也

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

TA关注的人

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