- 博客(10)
- 收藏
- 关注
原创 JAVA 反射机制
当我们需要使用一个类时,JVM会首先读取该类的.class(字节码)文件,读取后就会同时实例化一个Class的实例用来记录该类的信息(名字,构造器,方法,属性等)并与该类绑定。反射是java的动态机制,可以在程序[运行期间]在确定对象的实例化,方法的调用等操作.在JVM中每个被加载的类都有且只有一个Class的实例与之对应.2:通过类对象的newInstance()方法实例化。反射的第一步就是要获取待操作的类的类对象。方法会调用类的公开的无参构造器。类对象 Class类的实例。1:获取对应的类对象。
2023-08-12 16:47:33 85 1
原创 数据库入门介绍及SQL语句(四)
例如:学生与班级表,学生表中有一个字段class_id保存着class表主键id字段的值.此时class_id字段就是外键字段.因此班级表与学生表存在一对多的关系,即:班级表的一条记录可以对应学生表的多条记录.当不指定连接条件时,数据库在进行关联查询时,仍然会用A表一条记录与B表每条记录连接一次,并产生结果集中的一条记录.此时的数据量为A表记录数与B表记录数的乘积.在关联关系中,两张表通常就是使用主外键进行关联的.并且在关联查询中总是用等值连接主键与外键来建立两张表中记录的对应关系.
2023-07-22 19:39:24 93 1
原创 数据库入门介绍及SQL语句(三)
字段可以是具体字段名,也可以是"*",也可以是函数 或表达式。可以按照多字段排序,排序存在优先级,优先按照第一个字段排序结果集,当第一个字段值相同的记录再按照第二个字段排序以此类推.由于方言的存在,在Mysql,MariaDB中分页使用时会在其后追加LIMIT子句)在DQL中添加WHERE子句时,可以仅将满足WHERE子句要求的记录检索出来。一条DQL语句中至少要包含的子句有两个:SELECT子句和FROM 子句。
2023-07-05 22:12:08 92 1
原创 数据库入门介绍及SQL语句(二)
定长字符串,每条记录该字段的值在磁盘上创建的空间是固定的,无论实际保存的数据是多大,总是会占用指定长度的空间.不足的部分会补充空格.INSERT INTO 表名 [(字段名1,字段名2,....)] VALUES (字段1值,字段2值,...)可以使用:>,>=,<,<=,<>(不等于建议使用"<>",而"!="不是所有数据库都支持)此时要求VALUES子句中指定的字段值必须与表中定义的字段的顺序,类型,个数完全一致。在全列插入时,可以使用字段的默认值,此时使用关键字DEFAULT代替指定的值即可。
2023-07-05 22:08:14 89 1
原创 redis缓存问题
解决方案: 引入逻辑超时(redis没有超时,提前一个临界点),处理起来非常复杂。解决方案: redis自带集群高可用结构,由运维开发工程师 维护管理.缓存一致性的问题: 数据库和缓存有可能数据不一致(数据库写操作,缓存可能不一致)处理方法: 布隆过滤器(100%判断不存在),什么叫雪崩: 本来缓存承受的吞吐压力,由于缓存失效,导致数据库承受,造成宕机。解决方案: 失效时间随机,不让数据同时失效。什么叫缓存穿透: 访问了一个不存在的数据,redis没有,数据库没有。值,redis不存在数据,高并发。
2023-06-28 23:13:44 49 1
原创 数据库入门介绍及SQL语句(一)
语言 数据定义语言,是用来对数据库对象进行操作的语言,数据库对象(库,表,视图,索引,序列等)ALTER TABLE 表名 ADD 字段名 类型 AFTER 表中某字段--------ALTER TABLE 表名 CHANGE 原字段名 新字段名 类型 [默认值,约束]ALTER TABLE 表名 ADD 字段名 类型 FIRST----在表的最前面加。ALTER TABLE 表名 ADD 字段名 类型---------默认在最后加。语言 数据操作语言,是对表中数据进行操作的语言(增,删,改)
2023-06-11 14:45:35 96 1
原创 Spring框架创建对象的方式
注解,以开启组件扫描,则Spring框架会自动扫描添加此注解的类所在的包及其子孙包,检查其中是否包含“组件类”,如果存在,则自动创建出这些“组件类”的对象!在Spring Boot项目中,默认就开启了组件扫描,因为Spring Boot项目中的启动类上添加了。注解,则Spring框架会自动调用此方法,并获取此方法返回的对象,将此方法放在Spring容器中。以外,各组件注解的用法、功能是完全相同的,只是语义不同!在任何配置类中,可以自定义方法,并在方法上添加。注解的类,都是“组件类”,反之,则不是!
2023-06-04 13:52:08 315 1
原创 String常用方法
使用给定的正则表达式验证当前字符串的格式是否符合要求,若符合则返回true,不符合则返回false。,将当前字符串按照满足正则表达式的部分进行拆分,将拆分出的以String[]形式返回。,将当前字符串中满足正则表达式的部分给替换为指定字符串。当前字符串是否是以给定的定符串。:检索给定字符串在当前字符串中。的位置----根据字符串找位置。当前字符串中指定范围的字符串(静态方法valueOf()----根据位置找字符。转换为全大写/全小写。第一次/最后一次出现。
2023-06-04 13:44:57 45 1
原创 定时任务中的 cron 表达式
cron表达式是一个字符串,该字符串由6个空格分为7个域,每一个域代表一个时间含义。[秒] [分] [时] [日] [月] [周] [年]通常定义 “年” 的部分可以省略,实际常用的由 前六部分组成关于cron的各个域的定义如下表格所示域是否必填值以及范围通配符秒是0-59, - * /分是0-59, - * /时是0-23, - * /日是1-31, - *?/ L W月是1-12 或 JAN-DEC, - * /周是1-7 或 SUN-SAT。
2023-06-04 13:36:06 2425 1
原创 关于单点登录
在服务器端的任何服务都可以解析JWT数据,从而创建对应的Authentication对象,然后,将Authentication对象存入到SecurityContext中。客户端在后续的访问中,将自行携带JWT数据发起请求,通常,JWT数据会放在请求头的Authorization属性中。当客户端提交登录请求时,服务器端在验证登录成功后,将生成此用户对应的JWT数据,并响应到客户端。
2023-06-03 16:09:28 70
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人