如何让自己早睡
一、给自己一个入睡过度期睡觉前,不要看太刺激的东西,不要玩太紧张,太激烈的游戏。在睡前要平复好情绪,如果不能,就做一写有助于睡眠活动。例如:你可以去听几首有助于睡眠的纯音乐,而不是听有歌词的歌曲。你也可以在喜马拉雅上听书,设定二十分钟后自动关闭,听个五到十分钟就睡着了。
二、不把晚上当成工作时间所有的工作,都要尽量在白天完成,晚上的时间,其实并没有我们想象的那么多,吃个饭,洗个澡,洗个衣服,再玩会手机,不知不觉就已经十一点了。我们要对晚上的时间心里有数,找一个时间作为睡觉截点,不管发生什么,都务必保证在这个点睡觉,除非工作不做第二天会被开除。当你长期坚持下去,就会形成一种固定的思维习惯,每到这个点就会觉得自己要睡觉了。
三、睡前半小时不碰手机你可以在睡前半小时设置一个闹钟或者设置手机自动关机,然后将手机放在离你很远的地方,控制你想继续玩下去的欲望。
也可以在床上发呆、冥想,让大脑平静舒缓下来,这样你就会慢慢入睡。
四、睡前不胡思乱想睡觉前不要胡思乱想,容易扰乱心智,扰乱大脑
睡前想一些导致心情很不好,或者太兴奋的事情,情绪太过激动会导致心情难以平静,除了难以入睡外,而且还会有多梦、睡不 ...
如何废掉一个大学生
沾染上这几条(尤其最后 1 条),基本算是爹妈白养。
接受碎片信息,拒绝深度思考
沉迷于迅速获得成就感的事
毫无意义的熬夜与自我透支
无法专注做一件事
丧失目标和方向
潜意识中认为人生还没真正开始。
1、接受碎片信息,拒绝深度思考每天不停地刷知乎、刷微博、刷抖音、刷朋友圈,被动接受信息密度低的资讯,如娱乐八卦、花边新闻、沙雕视频,网综热剧等无须动脑的东西。
并且对这些碎片化的信息:只灌入,不输出。厌恶深度思考,拒绝梳理与总结知识,没有能够内化成为自己的价值体系,并且输出独特的观点见解。
仅凭这条,有被戳中的请双击屏幕!
2、沉迷于迅速获得成就感的事随便举两个栗子:日夜浸泡在网游中,通过虚拟的胜利赢得成就感,寻求更高段位来获得自我认同。亦或是 不停钻研如何求欢,以暧昧对象的人数当做自己的勋章 。
久而久之,对于 需要长期投入来获得更高回报的事情产生厌恶。 比如每天运动、看书写作、专业能力的提升、对未来的规划等等。
3、毫无意义的熬夜与自我透支见过太多的人,明明没有什么事,手机刷着刷着,就到凌晨两点了。到了第二天早上,开始挣扎在「摆脱困意去上课」与「旷课继续睡大觉」的两难选择中。
最 ...
3. SpringBoot 整合第三方技术
1. 整合Junit一般来说是不需要进行处理的 ,因为在创建SpringBoot 工程时 ,会自动整合junit的
要说怎么配置的话?也可以写一下相关的配置:以下就是SpringBoot 整合 Junit 相关步骤
导入相关依赖
12345<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope></dependency>
写 @SpringBootTest注解 , 也可以使用 classes 属性指定引导类的字节码对象。如 @SpringBootTest(classes = Springboot07TestApplication.class)
测试结果显示:
2. 整合MyBatis整合步骤如下:
创建SpringBoot 工程的时候 ,勾选SQL 下的 MyBa ...
2. 基础配置
1. 配置文件格式1.1 配置文件自动提示功能消失解决方案
1.2 SpringBoot配置文件加载顺序(了解)application.properties > application.yml > application.yaml
1.3 注意事项SpringBoot核心配置文件名为application
SpringBoot内置属性过多,且所有属性集中在一起修改,在使用时,通过提示键 + 关键字修改属性
不同配置文件中相同配置按照加载优先级相互覆盖 ,不同配置文件中不容配置全部保留
2. yaml2.1 yaml 的简单说明
YAML(YAML Ain’t Markup Language),一种数据序列化格式
优点:
容易阅读
容易与脚本语言交互
以数据为核心,重数据轻格式
YAML文件扩展名
.yml(主流)
.yaml
2.2 yaml 语法规则
大小写敏感
属性层级关系使用多行描述,每行结尾使用冒号结束
使用缩进表示层级关系,同层级左侧对齐,只允许使用空格(不允许使用Tab键)
属性值前面添加空格(属性名与属性值之间使用冒号+空格作为分隔 ...
1. SpringBoot 入门
1. SpringBoot 简介SpringBoot是由Pivotal团队提供的全新框架,可以帮助我们开发基于Spring的、独立的、生产级的应用程序。
其中SpringBoot的官网是:Spring Boot Reference Documentation
SpringBoot的主要目标是:
为所有Spring开发提供更快的入门体验
开箱即用,提供了自动配置
提供一系列大型项目通用的非功能性特性
外部化配置、嵌入式服务器、安全性、健康检查、指标
完全不需要代码生成,也不需要XML配置
注意:SpringBoot 并不是Spring功能上的增强,而是提供了一种快速使用Spring的方式。
2. SpringBoot入门2.1 入门案例开发步骤这里先采用的是手动创建的方式
新建Maven项目
引入依赖
123456789101112<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-par ...
第09章 连接池
连接池的理解不使用连接池有啥问题Connection对象是重量级对象,创建Connection对象就是建立两个进程之间的通信,非常耗费资源。一次完整的数据库操作,大部分时间都耗费在连接对象的创建。第一个问题:每一次请求都创建一个Connection连接对象,效率较低。第二个问题:连接对象的数量无法限制。如果连接对象的数量过高,会导致mysql数据库服务器崩溃。
使用连接池来解决什么问题提前创建好N个连接对象,将其存放到一个集合中(这个集合就是一个缓存)。用户请求时,需要连接对象直接从连接池中获取,不需要创建连接对象,因此效率较高。另外,连接对象只能从连接池中获取,如果没有空闲的连接对象,只能等待,这样连接对象创建的数量就得到了控制。
javax.sql.DataSource连接池有很多,不过所有的连接池都实现了 javax.sql.DataSource 接口。也就是说我们程序员在使用连接池的时候,不管使用哪家的连接池产品,只要面向javax.sql.DataSource接口调用方法即可。
另外,实际上我们也可以自定义属于我们自己的连接池。只要实现DataSource接口即 ...
第08章 DAO
什么是DAODAO是:Data Access Object,翻译为:数据访问对象。一种JavaEE的设计模式,专门用来做数据增删改查的类。在实际的开发中,通常我们会将数据库的操作封装为一个单独的DAO去完成,这样做的目的是:提高代码的复用性,另外也可以降低程序的耦合度,提高扩展力。例如:操作用户数据的叫做UserDao,操作员工数据的叫做EmployeeDao,操作产品数据的叫做ProductDao,操作订单数据的叫做OrderDao等。
使用DAO改造员工信息管理定义Employee封装数据Employee类是一个Java Bean,专门用来封装员工的信息:
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990package com.powernode.jdbc.beans;/** * Cl ...
第07章 JDBC实现员工管理
数据库表的准备1234567891011121314151617181920drop table if exists t_employee;create table t_employee( id bigint primary key auto_increment, name varchar(255), job varchar(255), hiredate char(10), salary decimal(10,2), address varchar(255));insert into t_employee(name,job,hiredate,salary,address) values('张三','销售员','1999-10-11',5000.0,'北京朝阳');insert into t_employee(name,job,hiredate,salary,address) values('李四','编码人员','1998-02-12 ...
第06章 JDBC调用存储过程
在MySQL中创建存储过程1234567891011create procedure mypro(in n int, out sum int)begin set sum := 0; repeat if n % 2 = 0 then set sum := sum + n; end if; set n := n - 1; until n <= 0 end repeat;end;
使用JDBC代码调用存储过程1234567891011121314151617181920212223242526272829303132333435363738394041package com.powernode.jdbc;import com.powernode.jdbc.utils.DbUtils;import java.sql.CallableStatement;import java.sql.Connection;import java.sql.SQLException;import java.sql.Types;/** * ClassName: JDBCTest21 ...
第05章 JDBC事务
什么是事务事务是一个完整的业务,在这个业务中需要多条DML语句共同联合才能完成,而事务可以保证多条DML语句同时成功或者同时失败,从而保证数据的安全。例如A账户向B账户转账一万,A账户减去一万(update)和B账户加上一万(update),必须同时成功或者同时失败,才能保证数据是正确的。
另请参见老杜发布的2024版MySQL教学视频。在本套教程中详细讲解了数据库事务机制。
使用转账案例演示事务表和数据的准备t_act表:
实现转账功能1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950package com.powernode.jdbc;import com.powernode.jdbc.utils.DbUtils;import java.sql.Connection;import java.sql.PreparedStatement;import java.sql.SQLException;/** * ClassName: JDBCTest ...
第04章 SQL注入
SQL注入问题SQL注入问题说的是:用户输入的信息中含有SQL语句关键字,和程序中的SQL语句进行字符串拼接,导致程序中的SQL语句改变了原意。(SQL注入问题是一种系统安全问题)接下来我们来演示一下SQL注入问题。以用户登录为例。使用表:t_user业务描述:系统启动后,给出登录页面,用户可以输入用户名和密码,用户名和密码全部正确,则登录成功,反之,则登录失败。分析一下要执行怎样的SQL语句?是不是这样的?
1select * from t_user where name = 用户输入的用户名 and password = 用户输入的密码;
如果以上的SQL语句能够查询到结果,说明用户名和密码是正确的,则登录成功。如果查不到,说明是错误的,则登录失败。代码实现如下:
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475package com.powern ...
第03章 JDBC的查询
JDBC的查询操作ResultSet 是 JDBC (Java 数据库连接) API 提供的接口,它用于表示 SQL 查询的结果集。ResultSet 对象中包含了查询结果的所有行,可以通过 next() 方法逐行地获取并处理每一行的数据。它最常用于执行 SELECT 语句查询出来的结果集。
ResultSet 的遍历是基于 JDBC 的流式处理机制的,即一行一行地获取结果,避免将所有结果全部取出后再进行处理导致内存溢出问题。
在使用 ResultSet 遍历查询结果时,一般会采用以下步骤:
执行 SQL 查询,获取 ResultSet 对象。
使用 ResultSet 的 next() 方法移动游标指向结果集的下一行,判断是否有更多的数据行。
如果有更多的数据行,则使用 ResultSet 对象提供的 getXXX() 方法获取当前行的各个字段(XXX 表示不同的数据类型)。例如,getLong(“id”) 方法用于获取当前行的 id 列对应的 Long 类型的值。
处理当前行的数据,例如将其存入 Java 对象中。
重复执行步骤 2~4,直到结果集中的所有行都被遍历完毕。
调 ...