随风而逝的博客

有兴趣就加qq群555373607,什么都可以侃
私信 关注
soliderzzz
码龄7年

沉迷学习,不能自拔,strategic FooYou Agent

  • 360,624
    被访问量
  • 171
    原创文章
  • 14,902
    作者排名
  • 62
    粉丝数量
  • 于 2014-08-06 加入CSDN
获得成就
  • 获得101次点赞
  • 内容获得39次评论
  • 获得323次收藏
荣誉勋章
TA的专栏
  • mybatis
    10篇
  • 笔记
    4篇
  • spring boot学习笔记
    17篇
  • 佛系养龟
    32篇
  • 数据结构
    12篇
  • 多线程
    7篇
  • spring使用教程
    50篇
  • spring源码
    13篇
  • 技术宅
    106篇
  • 生活随想
    12篇
  • 新零售
    7篇
  • 前端样式--日常问题
    3篇
  • 数据库--日常问题
    72篇
  • 天下游记
    4篇
  • 设计模式
    24篇
  • 考证必过
    2篇
  • 文摘
    12篇
  • 前端JS----日常问题
    10篇
  • 虚拟机
    15篇
  • mysql中的问题
    9篇
  • vue
    20篇
  • 最近
  • 文章
  • 资源
  • 问答
  • 课程
  • 帖子
  • 收藏
  • 关注/订阅

postgreSQL数据库limit分页、排序

postgreSQL数据库limit分页、排序语法:select*frompersonslimitAoffsetB;解释:A就是你需要多少行;B就是查询的起点位置。示例:select*frompersonslimit5offset0;意思是,起点0开始查询,返回5条数据。select*frompersonslimit5offset5;意思是,起点5开始查询,返回5条数据。...
转载
136阅读
0评论
0点赞
发布博客于 5 月前

Java 8 Stream

Java 8 API添加了一个新的抽象称为流Stream,可以让你以一种声明的方式处理数据。Stream 使用一种类似用 SQL 语句从数据库查询数据的直观方式来提供一种对 Java 集合运算和表达的高阶抽象。Stream API可以极大提高Java程序员的生产力,让程序员写出高效率、干净、简洁的代码。这种风格将要处理的元素集合看作一种流, 流在管道中传输, 并且可以在管道的节点上进行处理, 比如筛选, 排序,聚合等。元素流在管道中经过中间操作(intermediate operation)
转载
67阅读
0评论
0点赞
发布博客于 5 月前

Java中try()catch{}的使用方法

今天撸代码的时候发现了一段这样的代码try( Connection conn=DriverManager.getConnection(url,user,pass); Statement stmt=conn.createStatement()) { boolean hasResultSet=stmt.execute(sql); } 和平常见的不一样,我们平常见的是这样的tr...
转载
402阅读
0评论
0点赞
发布博客于 5 月前

java.util.Timer基本使用

一、Timer基本使用在Java中为我们提供了Timer来实现定时任务,当然现在还有很多定时任务框架,比如说Spring、QuartZ、Linux Cron等等,而且性能也更加优越。但是我们想要深入的学习就必须先从最简单的开始。Timer方法摘要四种使用方式import java.util.Calendar;import java.util.Date;import java.util.Timer;import java.util.TimerTask; public class
转载
147阅读
0评论
0点赞
发布博客于 5 月前

cookie和session的详解和区别

会话(Session)跟踪是Web程序中常用的技术,用来跟踪用户的整个会话。常用的会话跟踪技术是Cookie与Session。Cookie通过在客户端记录信息确定用户身份,Session通过在服务器端记录信息确定用户身份。本章将系统地讲述Cookie与Session机制,并比较说明什么时候不能用Cookie,什么时候不能用Session。1.1 Cookie机制  在程序中,会话跟踪是很重要的事情。理论上,一个用户的所有请求操作都应该属于同一个会话,而另一个用户的所有请求操作则应该属于另..
转载
127阅读
0评论
0点赞
发布博客于 5 月前

oracle中merge into用法解析

merge into的形式: MERGEINTO [target-table] AUSING [source-tablesql] BON([conditional expression]and [...]...) WHENMATCHEDTHEN [UPDATEsql] WHENNOTMATCHEDTHEN [INSERTsql] 作用:判断B表和A表是否满足ON中条件,如果满足则用B表去更新A表,...
转载
59阅读
0评论
0点赞
发布博客于 5 月前

Oracle 存储过程包(Package、Package Body)

初出茅庐,不知原来存储过程还可以写得如此复杂,而且还竟然可以调试!好吧,得整理一下存储过程的一些语法,以备以后用到时可以查阅。使用数据库:Oracle数据库工具:PL/SQL Developer在Oracle中使用存储过程可以声明单个存储过程,也可以使用包的方式一个存储过程包(PACKAGE)包含许多存储过程。编写单个存储过程的格式可以参考下面这个例子,这是最简单的存储过程例子: 1 2 3 4 5 6 7 8 9
转载
140阅读
0评论
0点赞
发布博客于 5 月前

postgresql中的序列nextval

一、postgresql中的序列1.1 场景需求需要向下图一样,需要对产品编码编码设置一个序列。编码规则SKU + 序列号:1.2 序列序列是基于bigint算法的,因此范围是不能超过一个八字节 整数的范围(-9223372036854775808 到 9223372036854775807)。由于nextval和setval调用绝不会回滚, 如果需要序数的"无间隙"分配,则不能使用序列对象。可以 通过在一个只包含一个计数器的表上使用排他锁来构建无间隙的分配, 但是这种方案比序列对象开.
转载
536阅读
0评论
0点赞
发布博客于 5 月前

Mybatis面试题总结

Mybatis面试题总结1. 最佳实践中,通常一个Xml映射文件,都会写一个Dao接口与之对应,请问,这个Dao接口的工作原理是什么?Dao接口里的方法,参数不同时,方法能重载吗?  答:Dao接口,就是人们常说的Mapper接口,接口的全限名,就是映射文件中的namespace的值,接口的方法名,就是映射文件中MappedStatement的id值,接口方法内的参数,就是传递给sql的参数。Mapper接口是没有实现类的,当调用接口方法时,接口全限名+方法名拼接字符串作为key值,可唯一定位一个M
转载
39阅读
0评论
0点赞
发布博客于 5 月前

结构化数据和非结构化数据、半结构化数据的区别

计算机信息化系统中的数据分为结构化数据和非结构化数据、半结构化数据。结构化数据结构化数据,是指由二维表结构来逻辑表达和实现的数据,严格地遵循数据格式与长度规范,主要通过关系型数据库进行存储和管理。也称作行数据,一般特点是:数据以行为单位,一行数据表示一个实体的信息,每一行数据的属性是相同的。比如: id name gender phone address 1 ..
转载
272阅读
0评论
0点赞
发布博客于 5 月前

字符串转化为 List 集合

问题描述 Java中,我们有时需要对现有的字符串进行切割并转化成一个List集合。 解决方案 Java.lang 包中的 String.split() 方法可对现有的字符串进行切割,并返回一个字符串数组 String s = "张三 123,李四 456,王五 789";String[] str = s.split(","); 对 str 的遍历 所以我们可以用 Arrays.asList() 方法,将数组转化为 List 集合 List<String..
转载
141阅读
0评论
0点赞
发布博客于 5 月前

使用BigDecimal 将科学计数法变成普通的文本格式输出

BigDecimal是处理高精度的浮点数运算的常用的一个类当需要将BigDecimal中保存的浮点数值打印出来,特别是在页面上显示的时候,就有可能遇到预想之外的科学技术法表示的问题。一般直接使用 BigDecimal.toString()方法即可以完成浮点数的打印。如: System.out.println( new BigDecimal("10000000000").toString());但是,toString()方法输出的字符串并不能保证不是科学计数法。不过在日常的使用中...
转载
88阅读
0评论
1点赞
发布博客于 5 月前

postgresql行转列

问:怎么分页&&按条件&&按顺序&&姓名不重复查出数据?答:其实就是行转列,那么,postgresql怎么进行转列呢,百度了下,大概有三种写法写法1group by + sum + case whenselect name,sum(case when zbfm='年龄' then value else 0 end) as 年龄,sum(case when zbfm='身高' then value else 0 end) as ...
转载
275阅读
0评论
1点赞
发布博客于 5 月前

MyBatis从入门到精通(第6章):6.3 使用枚举或其他对象

6.3 使用枚举或其他对象在 sys_role 表中存在一个字段 enabled,这个字段只有两个可选值,0 为禁用,1 为启用。但是在 SysRole 类中,我们使用的是Integer enabled,这种情况下必须手动校验 enabled 的值是否符合要求。在只有两个值的情况下,处理起来还比较容易,但是当出现更多的可选值时,对值进行校验就会变得复杂。因此在这种情况下,我们通常会选择使用枚举来解决。6.3.1 使用 MyBatis 提供的枚举处理器在tk.mybatis.simple.ty..
转载
67阅读
0评论
0点赞
发布博客于 5 月前

MyBatis从入门到精通(第6章):MyBatis 高级查询->6.1.2高级结果映射之一对多映射

6.1 高级结果映射在关系型数据库中,我们经常要处理一对一、一对多的关系。在 RBAC 权限系统中还存在着一个用户拥有多个角色、一个角色拥有多个权限这样复杂的嵌套关系。使用已经学会的 MyBatis 技巧都可以轻松地解决这种复杂的关系。在面对这种关系的时候,我们可能要写多个方法分别查询这些数据,然后再组合到一起。这种处理方式特别适合用在大型系统上,由于分库分表,这种用法可以减少表之间的关联查询,方便系统进行扩展。但是在一般的企业级应用中,使用 MyBatis 的高级结果映射便可以轻松地处理这..
转载
57阅读
0评论
0点赞
发布博客于 5 月前

MyBatis从入门到精通(第6章):MyBatis 高级查询->6.1.1高级结果映射之一对一映射

6.1 高级结果映射在关系型数据库中,我们经常要处理一对一、一对多的关系。在 RBAC 权限系统中还存在着一个用户拥有多个角色、一个角色拥有多个权限这样复杂的嵌套关系。使用已经学会的 MyBatis 技巧都可以轻松地解决这种复杂的关系。在面对这种关系的时候,我们可能要写多个方法分别查询这些数据,然后再组合到一起。这种处理方式特别适合用在大型系统上,由于分库分表,这种用法可以减少表之间的关联查询,方便系统进行扩展。但是在一般的企业级应用中,使用 MyBatis 的高级结果映射便可以轻松地处理这..
转载
1044阅读
0评论
0点赞
发布博客于 5 月前

(第4章):MyBatis动态SQL【foreach、bind、OGNL用法】

4.4 foreach 用法SQL 语句中有时会使用 IN 关键字,例如 id in(1,2,3)。可以使用 ${ids}方式直接获取值,但这种写法不能防止 SQL 注入,想避免 SQL 注入就需要用#{}的方式,这时就要配合使用 foreach 标签来满足需求。foreach 可以对数组、Map 或实现了Iterable 接口(如 List、Set)的对象进行遍历。数组在处理时会转换为 List 对象,因此 foreach 遍历的对象可以分为两大类:Iterable 类型和 Map 类型。这...
转载
93阅读
0评论
0点赞
发布博客于 6 月前

(第4章):MyBatis动态SQL【if、choose 和 where、set、trim】

MyBatis 的强大特性之一便是它的动态 SQL。MyBatis 3.4.6版本采用了功能强大的OGNL(Object-Graph Navigation Language)表达式语言,以下是MyBatis的动态SQL在XML中支持的几种标签。if choose(when、otherwise) trim(where、set) foreach bind本章除了讲解这几种标签的用法外,还会介绍如何在一个 XML 中针对不同的数据库编写不同的 SQL 语句,另外会对这 5 种标签中必须要用到的 ..
转载
93阅读
0评论
0点赞
发布博客于 6 月前

MyBatis从入门到精通(第3章):MyBatis注解方式的基本使用

这种方式的优点是 :对于需求比较简单的系统,效率较高。缺点是,当SQL有变化时都需要重新编译代码,一般情况下不建议使用MyBatis的注解方式。因此,(原书)本章不会进行深入讲解。在MyBatis注解SQL中,最基本的就是@Select 、@Insert 、@Update 和@Delete 四种。下面以 RoleMapper 为例,对这几个注解的用法进行讲解。3.1@Select 注解在 cn.bjut.simple.mapper.RoleMapper 接口中...
转载
55阅读
0评论
0点赞
发布博客于 6 月前

MyBatis从入门到精通(第2章):MyBatis XML方式的基本用法【insert用法、update用法、delete用法】

2.4 insert 用法2.4.1 简单的 insert方法在接口 UserMapper.java 中添加如下方法。 /** * 新增用户 * @param sysUser * @return */ int insert(SysUser sysUser);然后打开对应的 UserMapper.xml 文件,添加如下代码。<insert id="insert"> INSERT INTO sys_user..
转载
81阅读
0评论
0点赞
发布博客于 6 月前

MyBatis从入门到精通(第2章):MyBatis XML方式的基本用法【select用法】

本章将通过完成权限管理的常见业务来学习 MyBatis XML方式的基本用法。这个权限管理控制,采用RBAC(Role-Based Access Control,基于角色的访问控制)方式。2.1 一个简单的权限控制需求权限管理的需求:一个用户拥有若干角色,一个角色拥有若干权限,权限就是对某个模块资源的某种操作(增、删、改、查),这便是“用户-角色-权限”的授权模型。采用RBAC授权模型,用户与角色之间、角色与权限之间,一般是多对多的关系。2.1.1 创建数据库表在已经创建好的 .
转载
33阅读
0评论
0点赞
发布博客于 6 月前

第1章 Mybatis入门

1.1 Mybatis简介MyBatis是一款支持自定义SQL查询、存储过程和高级映射的持久层框架。消除了几乎所有JDBC代码和参数的手动设置以及结果集的检索。MyBatis可以使用XML或注解进行配置和映射。它通过将参数映射到配置的SQL最终形成执行的SQL语句,最后将执行的SQL的结果映射成Java对象返回。与其他的ORM(对象关系映射)框架不同,MyBatis并没有将Java对象与数据库表关联起来,而是将Java方法与SQL语句关联。MyBatis 支持声明式数据缓存(decla..
转载
61阅读
0评论
0点赞
发布博客于 6 月前

用户线程和守护线程

Java分为两种线程:用户线程和守护线程。  所谓守护线程,是指在程序运行的时候在后台提供一种通用服务的线程,比如垃圾回收线程就是一个很称职的守护者,并且这种线程并不属于程序中不可或缺的部分。因 此,当所有的非守护线程结束时,程序也就终止了,同时会杀死进程中的所有守护线程。反过来说,只要任何非守护线程还在运行,程序就不会终止。  守护线程和用户线程的唯一不同之处就在于虚拟机的离开:如果用户线程已经全部退出运行了,只剩下守护线程存在了,虚拟机也就退出了。 因为没有了被守护者,守护线程也就没有工作可做了
转载
70阅读
0评论
0点赞
发布博客于 7 月前

Eclipse一直building workspace问题解决归纳

这样的问题我遇到两次。第一次因为未正确关闭(电脑没电,重复操作等奇葩情况)各种网上当资料整理以下几个解决方法:(1):找到eclipse所在目录下eclipse.ini,打开文件添加启动参数:–vmargs和-Xmx512m如下图所指(2):加大Eclipse运行可用最大内存数,打开eclipse.ini将-Xmx512m调高为-Xmx768m或如上图-Xmx1024m;(3):打开eclipse.ini文件添加一个命令 : -clean(4):关闭自动编译:打开eclipse点击pr...
转载
181阅读
0评论
0点赞
发布博客于 7 月前

java Stack的基本使用并且实现一个简单的计算器

package com.bobo.normal; import com.bobo.util.StringUtil; import java.util.Stack; /** * Created with IntelliJ IDEA. * User: bobo * Date: 2019/9/16 * Description: stack实现一个 +-*?的计算器 * 所得: * 去除无效字符的方式 * 计算器运算过程中符号的优先级优先级 '(' > '*' = .
原创
110阅读
0评论
0点赞
发布博客于 7 月前

加载web项目时报的错误:Tomcat version 6.0 only supports J2EE 1.2, 1.3, 1.4, and Java EE 5 Web modul

用eclipse开发的servlet项目不能加载到tomcat6.0服务器,原因是:servlet的版本高了<installed facet="jst.web" version="3.0"/> 只要将version="3.0"改成version="2.5",然后重启eclipse即可!!!具体操作步骤:找到你的eclipse:D:\eclipse\workspace-jee\项目名称\.settings\org.eclipse.wst.common.project.facet.cor
转载
60阅读
0评论
0点赞
发布博客于 7 月前

http 500状态码

http请求返回500状态码,整体原因是:服务器内部错误。这个原因太过笼统,看了和没看直接懵逼。今天遇到这么一个崩溃的问题,这么大的范围,怎么找呢?然后,静下来打开思路,慢慢想一下,分析过程:1.客户端请求服务端的时候,返回500,首先服务端的请求发出去了,并且返回了500,错误定位到服务端。2.服务端里面代码竟然没有执行任何打印语句,说明还没有执行到逻辑,就已经出错了。3.这边服务端是lua语言写的,在这个文件的开头有这个加载文件的语句package.path = "../ta/?....
转载
434阅读
0评论
0点赞
发布博客于 7 月前

Java中Math函数的使用

Java中Math函数的使用说到Java中的Math函数,大家肯定不陌生,但是在真正使用的时候却犯了难,那么多方法,我们到底需要使用哪个呢?为此,我特地研究了一些Math常用函数的使用,以方便大家使用。算术计算Math.sqrt() : 计算平方根Math.cbrt() : 计算立方根Math.pow(a, b) : 计算a的b次方Math.max( , ) : 计算最大值Math.min( , ) : 计算最小值Math.abs() : 取绝对值System.out.prin
转载
157阅读
0评论
0点赞
发布博客于 7 月前

MySQL中order by语句对null字段的排序

默认情况下,MySQL将null算作最小值。如果想要手动指定null的顺序,可以使用:  1.将null强制放在最前:    if(isnull(字段名),0,1) asc //asc可以省略  2.将null强制放在最后    if(isnull(字段名),0,1) dsc     if(isnull(字段名),1,0) asc //asc可以省略对于这种使用方式的理解:  以if(isnull(字段名),0,1)为例,它的意思是将该字段根...
转载
152阅读
0评论
0点赞
发布博客于 8 月前

oracle的nvl和nvl2是什么函数

NVL2(expr1,expr2,expr3)  功能:如果参数表达式expr1值为NULL,则NVL2()函数返回参数表达式expr3的值;如果参数表达式expr1值不为NULL,则NVL2()函数返回参数表达式expr2的值。NVL( string1, replace_with)  功能:如果string1为NULL,则NVL函数返回replace_with的值,否则返回string1的值,如果两个参数都为NULL ,则返回NULL。...
转载
93阅读
0评论
0点赞
发布博客于 8 月前

JAVA调用存储过程--传入集合参数

在写存储过程中经常会遇到把java中的arrayList转化为Oracle中数组,(arrayList中存的是一些java对象)简单总结一下.例:arrayList中存在一些people对象。1.首先要在数据库中建立相应的JAVA对象和数组CREATE TYPE peopleOracleObject AS OBJECT (   peopleOracleID NUMBER(8) ,   nameOracle varchar(50) ,   ageOracle N..
转载
238阅读
0评论
0点赞
发布博客于 8 月前

MySQL INSERT插入条件判断:如果不存在则插入

我们经常需要进行sql的批量插入,要求:该条记录不存在则插入,存在则不插入。如果使用一条INSERT语句实现呢?对于普通的 INSERT 插入,如果想要保证不插入重复记录,我们只有对某个字段创建唯一约束实现;那有没有不创建唯一约束,仅通过 INSERT INTO 一条语句实现的方案呢?答:使用 INSERT INTO IF EXISTS, 具体语法如下INSERT INTO table(field1, field2, fieldn)SELECT 'field1', 'field2',.
转载
804阅读
0评论
0点赞
发布博客于 8 月前

Mysql:如果数据存在则更新,不存在则插入

文章目录ON DUPLICATE KEY UPDATE 语法: 特点 REPLACE INTO 语法: 语句1:不存在则插入 语句2:存在则先删除后插入 特点 REPLACE 语法 参考DUPLICATE、REPLACE INTO、REPLACE三种方式如何更新数据?ON DUPLICATE KEY UPDATEmysql语法支持如果数据存在则更新,不存在则插入,首先判断数据存在还是不存在的那个字段要设置成unique索引。1语法:INSE.
转载
1223阅读
0评论
1点赞
发布博客于 8 月前

Java 项目工程搭建 --创建子模块(依赖父工程)

这个建方比较干净,不会生成乱七八糟的东西,(建完以后,其它模块可以 Copy 改名字)选择 Maven 直接下一步只要输入一个AtifactId没有过多的依赖,适合专业人事建主启动程序建 controller,这边指定了路由@GetMapping(value = "/login") == @RequestMapping(value = "/login"...
转载
277阅读
0评论
0点赞
发布博客于 8 月前

SQL LCASE() 函数

LCASE() 函数LCASE() 函数把字段的值转换为小写。SQL LCASE() 语法SELECT LCASE(column_name) FROM table_name;用于 SQL Server 的语法SELECT LOWER(column_name) FROM table_name;演示数据库在本教程中,我们将使用 RUNOOB 样本数据库。下面是选自 "Websites" 表的数据:+----+--------------+---------------.
转载
154阅读
0评论
0点赞
发布博客于 8 月前

“Auto share projects位于git仓库”中的选项是什么?

每次我导入一个maven项目。剩下的任务总是出现在自动共享git项目(等待)。我在网路上挖, /禁用该选项,但是我想了解正在做什么,如果我需要它。我一直在做的是在命令行中创建/克隆项目,然后导入它在Eclipse中,那么我可以在EGit中执行所有的git工作。在这里,需要在git仓库中的自动共享项目位于git仓库选项情景或我可以禁用吗?简而言之:是的,该选项是必要的,否则您将不得不手动共享项目使用它所属的存储库。选项位于Git仓库中的自动共享项目通常可以为...
转载
248阅读
0评论
0点赞
发布博客于 8 月前

mysql 数据库的group_concat()使用方法

1.使用条件查询 查询部门为20的员工列表-- 查询部门为20的员工列表SELECT t.DEPTNO,t.ENAME FROM EMP t where t.DEPTNO = '20' ;效果:2.使用 group_concat() 将多行合并成一行(比较常用)语法:group_concat( [distinct] 要连接的字段 [order by 排序字段 asc/desc ] [separator '分隔符'] )SELECT T.DEPTNO, gro...
转载
145阅读
0评论
0点赞
发布博客于 8 月前

oracle的 listagg() WITHIN GROUP () 行转列函数的使用

1.使用条件查询 查询部门为20的员工列表-- 查询部门为20的员工列表SELECT t.DEPTNO,t.ENAME FROM SCOTT.EMP t where t.DEPTNO = '20' ;效果:2.使用 listagg() WITHIN GROUP () 将多行合并成一行(比较常用)SELECT T .DEPTNO, listagg (T .ENAME, ',') WITHIN GROUP (ORDER BY T .ENAME) namesFROM...
转载
152阅读
0评论
0点赞
发布博客于 8 月前

索引:位图索引理解

1. 案例  有张表名为table的表,由三列组成,分别是姓名、性别和婚姻状况,其中性别只有男和女两项,婚姻状况由已婚、未婚、离婚这三项,该表共有100w个记录。现在有这样的查询: select * from table where Gender=‘男’ and Marital=“未婚”; 姓名(Name) 性别(Gender) 婚姻状况(Marital) 张三 男 已婚 ...
转载
86阅读
0评论
0点赞
发布博客于 8 月前

Maven中settings.xml的配置项说明

一.Maven的setting配置文件 和 在Eclipse中对Maven的正确配置。1.Maven的配置文件(Maven的安装目录/conf/settings.xml ) 和 Maven仓库下(默认的Maven仓库的是用户家目录下的.m2文件,可以另行制定)的settings.xml文件在Maven中提供了一个settings.xml文件来定义Maven的全局环境信息。这个文件会存在于Maven的安装目录的conf子目录下面,或者是用户家目录的.m2子目录下面。我们可以通过这个文件来定义本地仓库、
转载
80阅读
0评论
0点赞
发布博客于 8 月前

Maven常见问题:项目不显示java resource(src/main/java)文件解决办法

在导入maven项目或者新建maven项目时,有时会遇到没有java resource(src/main/java)文件的情况。解决:右键工程 ===》点击properties
转载
281阅读
0评论
0点赞
发布博客于 8 月前

cookie中各参数含义

XName:该Cookie的名称。一旦创建,该名称便不可更改。Value:该Cookie的值。如果值为Unicode字符,需要为字符编码。如果值为二进制数据,则需要使用BASE64编码。Domain:可以访问该Cookie的域名。例如,如果设置为.zhihu.com,则所有以zhihu.com,结尾的域名都可以访问该Cookie。Max Age:该Cookie失效的时间,单位为秒,也常和Expires一起使用,通过它可以计算出其有效时间。Max Age如果为正数,则该Cookie在Max Age
转载
219阅读
0评论
0点赞
发布博客于 8 月前

Git拉取远程代码

git 拉取远程代码在实际项目开发过程中,往往是已经存在远程项目了,我们定义的需求是只需要简单的操作git,能够上传和下拉最新代码。模拟小白需求:第一步:拉取远程代码git clone[URL]第二步:查看本地分支和远程分支1、cd 到工程目录下;2、git branch -al 查看本地和远程的所有分支。若没有分支的话,先创建自己的分支报错的原因是没有进行提交进行首次提交:提交完再创建分支:这里成功看到了所有的分支:其中master是...
转载
143阅读
0评论
0点赞
发布博客于 8 月前

Object转Map和Map转Object(对象转map,map转对象)

第一种方法:fastJosnimport com.alibaba.fastjson.JSON;import com.alibaba.fastjson.JSONObject;Object转MapFindArchiveDto findArchiveDto = new FindArchiveDto();findArchiveDto.setContractStatus("降龙");findArchiveDto.setCustName("明华");findArchiveDto.setD
转载
338阅读
0评论
0点赞
发布博客于 8 月前

Spring Boot面试问题集锦

问: 什么是spring boot?答:多年来,随着新功能的增加,spring变得越来越复杂。只需访问页面https://spring.io/projects,我们将看到所有在应用程序中使用的不同功能的spring项目。如果必须启动一个新的spring项目,我们必须添加构建路径或maven依赖项,配置application server,添加spring配置。因此,启动一个新的sprin...
转载
89阅读
0评论
0点赞
发布博客于 8 月前

StopWatch对程序部分代码计时

StopWatch是位于org.springframework.util包下的一个工具类,通过它可方便的对程序部分代码进行计时(ms级别),适用于同步单线程代码块。 正常情况下,我们如果需要看某段代码的执行耗时,会通过如下的方式进行查看:public static void main(String[] args) throws InterruptedException { StopWatchTest.test0();// StopWatchTest.test1();}...
转载
87阅读
0评论
0点赞
发布博客于 8 月前

高并发中的问题

1.问题:假设系统中有5台设备,有多个进程需要使用2个设备,假定每个进程一次只能使用一台,则至多允许多少个进程来竞争这5个资源,而不会发生死锁?答案:哲学家就餐问题。系统中有N个并发进程,若规定每个进程需要申请R个某类资源,则当系统提供K=N*X(R-1)+1个同类资源时,无论采用何种方式申请使用,一定不会发生死锁。 将K=5,R=2代入式子得N=42.并发,并行的区别?在单C...
原创
100阅读
0评论
0点赞
发布博客于 9 月前

Spring常见面试题总结(超详细回答)

1、Spring是什么?Spring是一个轻量级的IoC和AOP容器框架。是为Java应用程序提供基础性服务的一套框架,目的是用于简化企业应用程序的开发,它使得开发者只需要关心业务需求。常见的配置方式有三种:基于XML的配置、基于注解的配置、基于Java的配置。主要由以下几个模块组成:Spring Core:核心类库,提供IOC服务;Spring Context:提...
转载
79阅读
0评论
0点赞
发布博客于 9 月前

我用#CSDN#这个app发现了有技术含量的博客,小伙伴们求同去《Java NIO 第一章(1)》, 一起来围观吧 https://blog.csdn.net/xxing22657/article/details/83835016

 
发布Blink于 10 月前

Java中静态导入的使用

静态导入:格式:import static包名….类名.方法名;可以直接导入到方法的级别 静态导入的注意事项:A:方法必须是静态的B:如果有多个同名的静态方法,容易不知道使用谁?这个时候要使用,必须加前缀。由此可见,意义不大,所以一般不用,但是要能看懂。demo:import static java.lang.Math.abs;import static...
转载
107阅读
0评论
0点赞
发布博客于 1 年前

Java中的比较器

Comparable和Comparator接口都是为了对类进行比较,众所周知,诸如Integer,double等基本数据类型,java可以对他们进行比较,而对于类的比较,需要人工定义比较用到的字段比较逻辑。可以把Comparable理解为内部比较器,而Comparator是外部比较器,基本的写法如下:class Apple implements Comparable<Apple>{...
转载
122阅读
0评论
0点赞
发布博客于 1 年前

javascript中数字中四舍五入

function round(num,dec){ var strNum = num + '';/*把要转换的小数转换成字符串*/ var index = strNum.indexOf("."); /*获取小数点的位置*/ if(index < 0) { return num;/*如果没有小数点,那么无需四舍五入,返回这个整数*/ } ...
原创
48阅读
0评论
0点赞
发布博客于 1 年前

Java泛型详解

一,打破砂锅问到底泛型存在的意义?泛型类,泛型接口,泛型方法如何定义?如何限定类型变量?泛型中使用的约束和局限性有哪些?泛型类型的继承规则是什么?泛型中的通配符类型是什么?如何获取泛型的参数类型?虚拟机是如何实现泛型的?在日常开发中是如何运用泛型的?Java泛型详解.png二,晓之以理动之以码1,泛型的定义以及存在意义泛型,即“参数化类型”。就是将类型由...
转载
294阅读
0评论
2点赞
发布博客于 1 年前

CAP 理论十二年回顾:"规则"变了

CAP 理论断言任何基于网络的数据共享系统,最多只能满足数据一致性、可用性、分区容忍性三要素中的两个要素。但是通过显式处理分区情形,系统设计师可以做到优化数据一致性和可用性,进而取得三者之间的平衡。自打引入 CAP 理论的十几年里,设计师和研究者已经以它为理论基础探索了各式各样新颖的分布式系统,甚至到了滥用的程度。NoSQL 运动也将 CAP 理论当作对抗传统关系型数据库的依据。CAP 理...
转载
119阅读
0评论
0点赞
发布博客于 1 年前

MySQL Explain详解

在日常工作中,我们会有时会开慢查询去记录一些执行时间比较久的SQL语句,找出这些SQL语句并不意味着完事了,些时我们常常用到explain这个命令来查看一个这些SQL语句的执行计划,查看该SQL语句有没有使用上了索引,有没有做全表扫描,这都可以通过explain命令来查看。所以我们深入了解MySQL的基于开销的优化器,还可以获得很多可能被优化器考虑到的访问策略的细节,以及当运行SQL语句时哪种策略...
转载
42阅读
0评论
0点赞
发布博客于 1 年前

Spring框架的设计理念

Spring 的骨骼架构:Spring 框架中的核心组件:Core、Context 和 Beans。没有它们就不可能有 AOP、Web 等上层的特性功能。Spring 的设计理念:Bean 在 Spring 中才是真正的主角。Bean 在 Spring 中作用就像 Object 对 OOP 的意义一样,没有对象的概念就像没有面向对象编程,Spring 中没有 Bean 也就没有 ...
转载
78阅读
0评论
0点赞
发布博客于 1 年前
NIO
发布Blink于 1 年前

FactoryBean和BeanFactory

前言:这是一个很容易被问到的关于Spring的面试题。两个特别像,但是功能却千差万别。有关于BeanFactory,我们都知道,这是Spring容器的基础实现类,它负责生产和管理Bean的一个工厂。当然BeanFactory只是一个接口,它的常用实现有XmlBeanFactory、DefaultListableBeanFactory、ApplicationCont...
转载
40阅读
0评论
0点赞
发布博客于 1 年前

Spring中lazy-init详解

1、Spring中lazy-init详解ApplicationContext实现的默认行为就是在启动服务器时将所有singleton bean提前进行实例化(也就是依赖注入)。提前实例化意味着作为初始化过程的一部分,applicationContext实例会创建并配置所有的singleton bean。通常情况下这是一件好事,因为这样在配置中的任何错误就会被立刻实现(否则的话可能要话几个小...
转载
98阅读
0评论
0点赞
发布博客于 1 年前

DI依赖注入的过程图

原创
256阅读
0评论
0点赞
发布博客于 1 年前

spring框架功能图

spring功能图
原创
355阅读
0评论
0点赞
发布博客于 1 年前

@Conditional的扩展注解

@Conditional的扩展注解1.class条件注解@ConditionalOnClass:某个class位于类路径上,才会实例化一个Bean。@ConditionalOnMissingClass:某个class类路径上不存在的时候,才会实例化一个Bean。2.Bean条件注解@ConditionalOnBean:当容器中有指定Bean的条件下进行实例化。@Condit...
原创
283阅读
0评论
0点赞
发布博客于 1 年前

自定义spring boot starter

1.需求在我们学习SpringBoot时都已经了解到starter是SpringBoot的核心组成部分,在实际业务开发过程中,会遇到各组件都需要引用公共配置的需求,以前的做法都是且手动通过@Bean注解来引入,如果有很多组件需要引用就好带来额外的工作量。spring boot starter 给我们提供了一种思路,即只需在pom.xml引入对应的starter jar包即可,无需手动一个个注入...
转载
71阅读
0评论
0点赞
发布博客于 1 年前

Spring @Conditional注解 详细讲解及示例

前言:@Conditional是Spring4新提供的注解,它的作用是按照一定的条件进行判断,满足条件给容器注册bean。@Conditional的定义://此注解可以标注在类和方法上@Target({ElementType.TYPE, ElementType.METHOD})@Retention(RetentionPolicy.RUNTIME)@Documentedpubl...
转载
77阅读
0评论
0点赞
发布博客于 1 年前

配置条件装配----@Profile

@Profile:Spring为我们提供的可以根据当前环境,动态的激活和切换一系列组件的功能;开发环境develop、测试环境test、生产环境master数据源:(/dev) (/test) (/master)@Profile:指定组件在哪个环境的情况下才能被注册到容器中,不指定,任何环境下都能注册这个组件1) 加了环境标识的bean...
转载
129阅读
0评论
0点赞
发布博客于 1 年前

Spring-Enable模块驱动

1.理解Enable模块驱动  从Spring 3.1开始,Spring Framework开始支持“@Enable模块驱动”,所谓“模块”是指具备相同领域的功能组件集合,组合所形成的一个独立单元,比如Web MVC模块,AspectJ代理模块、Caching(缓存)模块等。在Spring框架中,有着许多模块化的Annotation,这些注解均已@Enable为前缀。框架实现 @En...
转载
97阅读
0评论
0点赞
发布博客于 1 年前

Spring 注解编程之注解属性别名与覆盖

注解属性方法在进入了解 Spring 注解属性功能之前,我们先看一个正常 Java 注解。在注解中,属性方法与其他类/接口方法写法类似,但是存在一些区别。注解属性方法的返回类型仅限为八种基本类型(包装类不支持),字符串,class,enum,Annotation以及前面类型的数组。复习一下,java 八种基本类型分别为,byte(字节型)、short(短整型)、int(整型)、...
转载
220阅读
0评论
0点赞
发布博客于 1 年前

spring注解编程模型

英语原文:https://github.com/spring-projects/spring-framework/wiki/Spring-Annotation-Programming-Model#stereotype-annotations术语1.元注解元注释是java基础注解来声明注解。因此,一个注解必然是被元注解而注解的。例如,任何注解被声明都是 @Documented从java....
翻译
58阅读
0评论
0点赞
发布博客于 1 年前

production-ready特性

1、外部配置(externalized configuration)1)、基于环境变量的配置2)、基于YAML的配置3)、默认配置值2、健康检查(health checks)1)、它是否有一个状态路由(需要安全token),可由监控服务用于运行状况检查?2)、请求验证每个服务是否可达?(如:数据库、缓存、外部接口)3)、返回500错误,当被检查的服务异常时。3、日志...
原创
211阅读
0评论
0点赞
发布博客于 1 年前

Spring boot自定义自动配置类

自动配置类package com.wisely.spring_boot_starter_hello;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;impor...
转载
237阅读
0评论
0点赞
发布博客于 1 年前

@Configuration CGLIB提升特性

今天看了下Spring的@Configuration,即java类配置bean,(这个spring3的新功能,虽然现在已经spring5了,但是这种配置bean的方式也是比较火的)做了如下测试,发现一个现象,先说这个现象,后面用自己的理解再简单实现一下。先说现象:在java配置类中加@Configuration,下面的声明bean的方法,就只会被调一次,也就是初始化的时候,哪怕是下面的方法直...
转载
311阅读
2评论
0点赞
发布博客于 1 年前

@SpringBootApplication与@EnableAutoConfiguration

一、@EnableAutoConfiguration这个注释告诉SpringBoot“猜”你将如何想配置Spring,基于你已经添加jar依赖项。如果spring-boot-starter-web已经添加Tomcat和Spring MVC,这个注释自动将假设您正在开发一个web应用程序并添加相应的spring设置。自动配置被设计用来和“Starters”一起更好的工作,但这两个概念并不直接...
转载
388阅读
1评论
1点赞
发布博客于 1 年前

@SpringBootApplication 标注非引导类

1、引导类public class App { public static void main(String[] args) { SpringApplication.run(WebConfiguration.class, args); }}2、WebConfiguration@SpringBootApplicationpublic class ...
原创
90阅读
0评论
0点赞
发布博客于 1 年前

SpringBoot 自动装配原理

先看看SpringBoot的主配置类:里面有一个main方法运行了一个run()方法,在run方法中必须要传入一个被@SpringBootApplication注解的类。@SpringBootApplicationSpringBoot应用标注在某个类上说明这个类是SpringBoot的主配置类,SpringBoot就会运行这个类的main方法来启动SpringBoot项目。那@...
转载
99阅读
0评论
0点赞
发布博客于 1 年前

SpringBoot嵌入式Web容器

种类1.servlett web容器,2.reactive web容器spring-boot支持使用jetty、netty、tomcat、undertow作为嵌入式web容器Apache TomcatTomcat是由Apache软件基金会下属的Jakarta项目开发的一个Servlet容器。标准实现:Servlet、JSP、Expression Language、WebSocke...
转载
199阅读
0评论
0点赞
发布博客于 1 年前

什么是groupid和artifactId?

什么是groupid和artifactId?groupid和artifactId被统称为“坐标”是为了保证项目唯一性而提出的,如果你要把你项目弄到maven本地仓库去,你想要找到你的项目就必须根据这两个id去查找。groupId和artifactId是maven管理项目包时用作区分的字段,就像是地图上的坐标。artifactId:artifactId一般是项目名或者模块名。group...
转载
362阅读
0评论
0点赞
发布博客于 1 年前

spring boot的特性

SpringBoot所具备的特征有:(1)可以创建独立的Spring应用程序,并且基于其Maven或Gradle插件,可以创建可执行的JARs和WARs;(2)内嵌Tomcat或Jetty等Servlet容器;(3)提供自动配置的“starter”项目对象模型(POMS)以简化Maven配置;(4)尽可能自动配置Spring容器;(5)提供准备好的特性,如指标、健康检查和外部化...
原创
229阅读
0评论
0点赞
发布博客于 1 年前

哈希表——线性探测法、链地址法、查找成功、查找不成功的平均长度

四、哈希表的装填因子装填因子 = (哈希表中的记录数) / (哈希表的长度)装填因子是哈希表装满程度的标记因子。值越大,填入表中的数据元素越多,产生冲突的可能性越大。五、不同处理冲突的平均查找长度例:假设散列表的长度是13,三列函数为H(K) = k % 13,给定的关键字序列为{32, 14, 23, 01, 42, 20, 45, 27, 55, 24, ...
转载
362阅读
0评论
0点赞
发布博客于 1 年前

蚂蚁爬行问题

问题主题:Ants(POJNo.1852)问题描述:n只蚂蚁以每秒1cm的速度在长为Lcm的竹竿上爬行。当蚂蚁看到竿子的端点时就会落下来。由于竿子太细,两只蚂蚁相遇时,它们不能交错通过,只能各自反方向爬行。对于每只蚂蚁,我们只知道它离竿子最左端的距离为xi,但不知道它当前的朝向。请计算所有蚂蚁落下竿子的最短时间和最长时间。限制条件:1<=L<=1061<=n&l...
转载
269阅读
0评论
0点赞
发布博客于 1 年前

二叉树的前序、中序、后序三种遍历

二叉树遍历分为三种:前序、中序、后序,其中序遍历最为重要。为啥叫这个名字?是根据根节点的顺序命名的。比如上图正常的一个满节点,A:根节点、B:左节点、C:右节点,前序顺序是ABC(根节点排最先,然后同级先左后右);中序顺序是BAC(先左后根最后右);后序顺序是BCA(先左后右最后根)。比如上图二叉树遍历结果前序遍历:ABCDEFGHK中序遍历:BDC...
转载
63阅读
0评论
0点赞
发布博客于 1 年前

森林转二叉树的过程

森林转二叉树的过程是这样的:(1)把每棵树转换为二叉树。(2)第一棵二叉树不动,从第二棵二叉树开始,依次把后一棵二叉树的根结点作为前一棵二叉树的根结点的右孩子,用线连接起来。所以转换后的二叉树的左子树节点的个数加根节点的个数就是第一棵树的节点个数,即二叉树总节点个数m减去根节点右子树节点个数n。...
转载
122阅读
0评论
0点赞
发布博客于 1 年前

哈夫曼编码的理解(Huffman Coding)

哈夫曼编码(Huffman Coding),又称霍夫曼编码,是一种编码方式,可变字长编码(VLC)的一种。Huffman于1952年提出一种编码方法,该方法完全依据字符出现概率来构造异字头的平均长度最短的码字,有时称之为最佳编码,一般就叫做Huffman编码(有时也称为霍夫曼编码)。哈夫曼编码,主要目的是根据使用频率来最大化节省字符(编码)的存储空间。简易的理解就是,假如我有A,B,C,D...
转载
281阅读
0评论
0点赞
发布博客于 1 年前

桶排序

桶排序(Bucket sort)或所谓的箱排序,是一个排序算法,工作的原理是将数组分到有限数量的桶里。每个桶再个别排序(有可能再使用别的排序算法或是以递归方式继续使用桶排序进行排序),最后依次把各个桶中的记录列出来记得到有序序列。桶排序是鸽巢排序的一种归纳结果。当要被排序的数组内的数值是均匀分配的时候,桶排序使用线性时间(Θ(n))。但桶排序并不是比较排序,他不受到O(n log n)下限的影响。...
转载
57阅读
0评论
0点赞
发布博客于 1 年前

各种排序算法的时间空间复杂度

原创
52阅读
0评论
0点赞
发布博客于 1 年前

二叉平衡树的旋转操作

旋转是很多二叉平衡树维持平衡的主要手段,在这里复习一下。其实旋转过程中节点位置的变化只要遵循一个原则就行了:比Root小的在左子树,比Root大的在右子树。(当然这里前提条件是左小右大)。情况一:插入F节点导致失衡:这里失衡的是A的左右子树,很容易就可以想到旋转B-A链,值得注意的是E节点,它原先在B的右子树,现在也依然在B的右子树,它原先在A的左子树,现在也依然在A的左子树。若插...
转载
61阅读
0评论
0点赞
发布博客于 1 年前

ResourceLoader继承关系图

原创
137阅读
0评论
0点赞
发布博客于 2 年前

IOC容器注册继承关系图

原创
122阅读
0评论
0点赞
发布博客于 2 年前

BeanFactory继承关系图

原创
201阅读
0评论
0点赞
发布博客于 2 年前

BeanDefinitionReader继承关系图

原创
167阅读
0评论
0点赞
发布博客于 2 年前

BeanDefinition继承关系图

原创
148阅读
0评论
0点赞
发布博客于 2 年前

ApplicationContext继承关系图

原创
453阅读
0评论
0点赞
发布博客于 2 年前

oracle索引分类

在关系数据库中,每一行都由一个行唯一标识RowID。RowID包括该行所在的文件、在文件中的块数和块中的行号。索引中包含一个索引条目,每一个索引条目都有一个键值和一个RowID,其中键值可以是一列或者多列的组合。  (一)索引按存储方法分类,可以分为2类:B*树索引和位图索引。  (1)B*树索引的存储结构类似书的索引结构,有分支和叶两种类型的存储数据块,分支块相当于书的大目录,叶块相当于索引...
转载
384阅读
0评论
0点赞
发布博客于 2 年前

Oracle索引分区

索引分区:可以将索引存储在不同的分区中与分区有关的索引有三种类型:局部分区索引 - 在分区表上创建的索引,在每个表分区上创建独立的索引,索引的分区范围与表一致 (按照表分区对索引进行分区)create index ind1 on stu(sno) local ;全局分区索引 - 在分区表或非分区表上创建的索引,索引单独指定分区的范围,与表的分区范围或是否分区无关*create ind...
转载
74阅读
0评论
0点赞
发布博客于 2 年前

oracle数据库字典

一、Oracle数据字典  数据字典是oracle存放有关数据库信息的地方,其用途是用来描述数据的。比如一个表的创建者信息,创建时间信息,所属表空间信息,用户访问权限信息等。当用户在对数据库中的数据进行操作时遇到困难就可以访问数据字典来查看详细的信息。  Oracle中的数据字典有静态和动态之分。静态数据字典主要是在用户访问数据字典时不会发生改变的,但动态数据字典是依赖数据库运行的性能的,...
转载
23阅读
0评论
0点赞
发布博客于 2 年前

oracle 包,包调用 及好处

在oracle数据库中,package包如同java中package中的作用大致类似;可以把一些过程和函数组织到一起,把PL/SQL代码模块化,构建其他人员重用的代码,在oracle中,包里面可以写存储过程,写方法,写sql语句,定义一个结构体等等。包有包头和包体,包头和包体的名称要相同在包的内部,过程和函数可以被重载,也就是说,可以存在多个名称相同的,但是参数不同的过程和函数。重载允许相同...
原创
461阅读
0评论
0点赞
发布博客于 2 年前

Oracle优化器

一Oracle优化器概述Oracle优化器是用于生成SQL语句访问数据库时使用的执行计划的。Oracle优化器通过使用Oracle搜集的关于数据库对象的统计数据来生成SQL语句的访问计划(使用什么对象)并执行计划(使用何种操作)。二 Oracle优化器的分类Oracle优化器分为三类:1) RULE优化器:基于规则的优化器相对比较简单,通过检查数据库的可用路径并将这些路径与路径表进行...
原创
90阅读
0评论
0点赞
发布博客于 2 年前

Oracle变量声明

变量声明的基本语法name [CONSTANT] datatype [NOT NULL] [:= | DEFAULT default_assignment]name为要声明的变量或常量的名字;CONSTANT声明的是一个常量,如果没有,则声明的是一个变量;datayepe是可以赋值给这个变量的数据类型或者子类型;not null如果没有为这个变量赋值,数据库就会抛出一个异常;de...
转载
271阅读
0评论
0点赞
发布博客于 2 年前

锚定声明

锚定声明告诉PL/SQL按照已经定义好的数据结构来设置变量的数据类型。这些定义好的数据类型可能是:另一个PL/SQL变量、一个预定义的TYPE或者SUBTYP、一个数据库表或者表中的一列。有两种锚定:标量锚定:利用%TYPE属性,可以根据某个表中的一列或者其他的PL/SQL标量变量来定义变量类型;name type_attribute%TYPE [option default val...
转载
79阅读
0评论
0点赞
发布博客于 2 年前

oracle数据类型

oracle数据类型的分类1.字符串类型:varchar,varchar2,string子类型2.数值类型:number,pls_integer,binary_integer,simple_integer,binary_float,binary_double,simple_float,binary_double,数字子类型3.日期和时间戳:datetime4.其他数据类型:bole...
原创
44阅读
0评论
0点赞
发布博客于 2 年前

oracle中条件运算符

--nvl相当于java中的条件运算符 a?b:c第一个参数为空,则返回值是第二个参数,如果第一个参数不为空,则返回值是第一个参数--查询所有员工的姓名,职位,薪水,提成和总工资select ename,job,sal,comm,sal+comm income from emp;select ename,job,sal,nvl(comm,o) comm,sal+nvl(com...
原创
92阅读
0评论
0点赞
发布博客于 2 年前