自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 JDBC连接postgresql

1、在pom.xml中导入包。2、在Config中添加。

2023-04-24 15:13:56 1160 1

原创 IO传输文件(超级无敌极简版)

【代码】IO传输文件(超级无敌及简版)

2023-03-30 20:29:25 145

原创 反射的基本用法

一、什么是反射反射是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法和属性;这种动态获取的信息以及动态调用对象的方法的功能称为java语言的反射机制。二、反射的原理当我们编写完一个Java项目之后,每个java文件都会被编译成一个.class文件,这些Class对象承载了这个类的所有信息,包括父类、接口、构造函数、方法、属性等,这些class文件在程序运行时会被ClassLoader加载到虚拟机中。当一个类被加载以后,Java虚拟机就会在内存中自动

2023-03-18 18:31:43 134

原创 使用git中可能出现的问题

将本地test分支与本地dev分支合并(切换dev分支merge)合并完成后检查dev分支是否有文件。点击提交,此时本地库dev分支与test分支合并完成 提交dev代码去远程仓库->Push。(切分支test 选择merge 选择dev分支)同步完成后 test分支获取了最新的代码。下一步选择自己的test分支 合并dev分支的代码 以获取最新的代码。远程端dev分支有了新的文件(不同的人上传了新的文件到dev分支)此时我们分支的代码还不是最新的,需要切换到自己分支与本地dev合并。

2023-02-16 19:43:44 390 2

原创 Git的使用方法(保姆级)

就可以马上看到我们创建的dev分支了,dev分支的代码和master分支代码一致。切换到dev后,dev内的代码还没有和我们test的代码同步,我们需要合并代码。注:此时的本地dev代码和我们的test分支代码已经同步。然后在gitee仓库中,我们就能看到我们的test分支。3、推送本地dev,到远端的dev,实现代码上传至仓库。选择一个你需要创建项目的文件夹,右键选择git克隆。基于本地dev分支,创建个人分支test。六、管理克隆的项目,创建dev分支。选择切换分支,切换到本地dev分支。

2023-02-16 16:38:18 675

原创 SpringBoot整合Redis

默认情况下RedisTemplate模板只能支持字符串,我们自定义一个RedisTemplate,设置序列化器,这样我们可以很方便的操作实例对象。二、pom.xml文件中导包,导入需要的包。需要降版本,最好选择2.4.13。四、配置RedisConfig。一、创建spring项目。

2023-02-13 20:56:44 66

原创 Java连接Redis

2.限制某段时间内的访问次数,就比如我们登录的功能可以用手机获取验证码登录,但是我们发送验证码使用的第三方,是多少钱多少条的,肯定不能让他一直点,一直发短信,就算前端js做了校验,若有些人绕过前台就麻烦了,这时候可以用redis的incr命令和expire结合起来做一个解决方案。1.作为缓存 -- 数据分两类冷数据与热数据,热数据表示经常使用的时常发生变化的数据但是对数据一致性要求不高的数据,如一个视频的点击量,某文件的浏览次数,某商品的日月销量,系统消息以及用户消息这些热数据都可以用Redis来做。

2023-02-13 20:22:02 1700

原创 NoSQL和Redis

下标(index)参数 start 和 stop 都以 0 为底,也就是说,以 0 表示列表的第一个元素,以 1 表示列表的第二个元素,以此类推。:为键 key 储存的数字值加1/减1,如果键 key 不存在, 那么键 key 的值会先被初始化为 0 , 然后再执行加1/减1的操作。解决办法是异步写入数据库,即在高速读/写的场合单单使用 Redis 去应对,把这些需要高速读/写的数据缓存到 Redis 中,而在满足一定的条件下,触发这些缓存的数据写入数据库中。返回列表中下标为 index 的元素。

2023-02-13 19:02:17 502

原创 SpringAOP和声明式事务

1、execution * com.SleepAdvice.*(..): 匹配 SleepAdvice中声明的所有方法,第一个 * 代表任意修饰符及任意返回值. 第二个 * 代表任意方法. .. 匹配任意数量的参数. 若目标类与接口与该切面在同一个中, 可以省略包名。@Around: 环绕增强, 围绕着方法执行对于环绕通知来说, 连接点的参数类型必须是 ProceedingJoinPoint在环绕通知中需要明确调用 ProceedingJoinPoint 的 proceed() 方法来执行被代理的方法。

2023-02-12 17:20:15 138

原创 Spring框架和IOC

在Spring中任何的Java类和JavaBean都被当成Bean处理,这些Bean通过容器管理和使用Spring容器实现了IOC和AOP机制,这些机制可以简化Bean对象创建和Bean对象之间的解耦。若要使用某个对象,只需要从 Spring 容器中获取需要使用的对象,不关心对象的创建过程,也就是把创建对象的控制权反转给了Spring框架。指定扫描路径后,并不是该路径下所有组件类都扫描到Spring容器的,只有在组件类定义前面有以下注解标记时,才会扫描到Spring容器。也可以在注解标记中自定义id。

2023-02-11 23:17:24 137

原创 Shiro权限框架

二、在pom.xml文件中导入shiro核心包、 druid连接池、(log4j以及 junit)三、创建初始化内容,导入mybatisConfig,创建mapper文件夹,创建实体类。②在ShiroConfig中添加getShiroDialect()方法。八、在helloController的登录方法中添加 用户认证。③修改CustomRealm的认证方法(相比较单机的认证方法)四、创建CustomRealm(方法暂时不写)九、在CustomRealm编写认证方法。* authc:认证用户可访问。

2023-02-10 20:05:37 111

原创 Mybatis-Plus中Warpper条件构造器,代码生成器

①查询name不为空,email不为空,age>=25。③查询age在25-30岁之间的数据个数。④模糊查询 名字不包含o 邮箱包含cn。二、编写GeneratorCode文件。②查询name为laoli的唯一数据。一、在pom.xml中引入包。三、运行代码,生成相应文件。

2023-02-09 19:01:18 474

原创 MyBatis-Plus

(注意:mybatis-plus最好不要和myBatista的包一起引入进来,二者只存其一)十、自动填充 create_time,update_time(阿里开发手册中一定要求的字段)注意:添加的时间会相差8小时需要我们在controller.yml文件中修改一下时区。二、pom.xml中引入mybatista-plus的包,以及Druid连接池。③配置controller.yml文件(需要在mybatis-plus下)四、创建mapper,在启动类加上@MapperScan注解。

2023-02-09 16:44:29 136

原创 restful风格请求

1、使用客户/服务器模型(简称C/S结构,是一种网络架构,它把客户端 (Client) 与服务器(Server) 区分开来。例如服务端通过token缓存已登录过的用户信息,客户端请求会带一个token过来,后台服务通过带过来的token在缓存中取出用户信息,提高效率。③添加config.MybatisConfig.java(可以选择mybatis-config.xml)例如,一个项目的所有模块都整合到一起,all-in-one,打成一个包,多个服务,整合到一个端口下。①application.yml文件。

2023-02-09 14:13:58 392

原创 Boot整合JDBC、Druid、Mybatis

注:需要导入上log4j的jar包,因为在Druid的配置参数中(filters: stat,wall,log4j)需要用到log4j。二、在application.yml中添加mybatis对应的mapper文件。二、在application.yml中添加type属性,以及。二、在application.yml中配置数据库信息。五、在DruidConfig中配置druid监控中心。一、在原来的基础上,导入druid连接池。一、在原来基础上导入Mybatis的包。三、配置druid的config。

2023-02-07 20:46:20 102

原创 Thymeleaf创建方式

三、创建html文件,必须在 templates中(这是约定)四、在controller中写需要传输的内容,从html中接收。二、在pom.xml文件中加入jquery包。

2023-02-07 18:07:27 126

原创 MyBatis自动生成插件

二、在的下加入mybatis自动生成插件。三、创建generatorConfig.xml文件。②在Command line:中添加。

2023-02-02 18:20:00 290

原创 SSM框架整合

若 Spring 的 IOC 容器和 SpringMVC 的 IOC 容器扫描的包有重合的部分, 就会导致有的 bean 会被创建 2 次,需要使用 exclude-filter 和 include-filter 子节点来规定只能扫描的注解。添加springMVC的配置文件spring-mvc.xml。添加Spring配置文件spring-mybatis.xml。④使用spring整合mybatis框架。spring-mvc.xml配置文件。添加spring.xml配置文件。spring.xml配置文件。

2023-02-02 10:49:51 77

原创 Spring MVC 中的文件上传下载

二、springmvc.xml中配置multipartResolver。三、编写controller中的方法。一、pom.xml中导包。四、对应HTML中的代码。

2023-02-02 09:49:58 61

原创 Mysql(事物)

数据库的事务(Transaction)是一种机制、一个操作序列,包含了一组数据库操作命令。持久性 (Durability):事务一旦提交或回滚,它对数据库中的数据的改变就是永久的。原子性(Atomicity):事务是不可分割的最小操作单位,要么同时成功,要么同时失败。一致性(Consistency):事务完成时,必须使所有的数据都保持一致状态。隔离性(lsolation) :多个事务之间,操作的可见性。

2022-12-17 15:30:03 47

原创 web笔记(jQuery)

写法: $("#div1").load("demo_test.txt",function(responseTxt,statusTxt,xhr){ }$("[href$='.jpg']") 选取所有 href 值以 ".jpg" 结尾的元素。$("p.intro") 选取所有 class="intro" 的 元素。$("[href='#']") 选取所有带有 href 值等于 "#" 的元素。$("p#demo") 选取所有 id="demo" 的 元素。

2022-12-14 20:54:40 101

原创 web笔记(jspel表达式简介)

对于连字符(-)或者其它特殊字符的字符串只能用“[ ]”操作符,而不能用“.”操作符,这也是“[ ]”和“.”操作符的区别 如 ${header[“User-Agent”]}=(ne) =(ge)等效于:request.getAttribute("person")3) () 括号运算符 用来改变执行优先权,例如: ${ A * (B+C) }(3)、EL 逻辑运算符 &&(and) ||(or)!(1)、EL 算术运算符 + - * /(div) %(mod)

2022-12-12 20:57:54 164

原创 web笔记(web项目中对数据库的连接)

对应的db.properties。记得要导入mysql的jar包。

2022-12-12 18:05:13 659

原创 web笔记(AJAX、JSON)

Fastjson是阿里巴巴提供的一个Java语言编写的高性能功能完善的JSON库,是目前Java语言中最快的JSON库,可以实现Java对象和JSON字符串的相互转换。2.异步交互:可以在不重新加载整个页面的情况下,与服务器交换数据并更新部分网页的技术,如:搜索联想、用户名是否可用校验,等等...1.与服务器进行数据交换:通过AJAX可以给服务器发送请求,并获取服务器响应的数据。由于其语法简单,层次结构鲜明,现多用于作为数据载体,在网络中进行数据传输。4.获取服务器响应数据。3.向服务器发送请求。

2022-12-11 17:03:28 167

原创 web笔记(表格、表单)

表单项数据要想被提交,则必须指定其name属性method:指定表单提交的方式。get:浏览器会将数据直接附在表单的action URL之后。post:浏览器会将数据放到http请求消息体中。* 请求参数会在http请求协议的请求体中。* url的长度有限制4KB。action:规定当提交表单时向何处发送表单数据,URL。* 请求参数无限制的。method :规定用于发送表单数据的方式。无序列表: type设置列表符号。有序列表: type设置列表符号。点用户名实现光标选中输入框。

2022-12-11 16:46:20 133

原创 web笔记(MVC模型)

默认情况下,Cookie存储在浏览器内存中,当浏览器关闭,内存释放,则Cookie被销毁setMaxAge(int seconds):设置Cookie存活时间。1.创建Cookie对象,设置数据:Cookie cookie = new Cookie("key" ,"value");2.负数:默认值,Cookie在当前浏览器内存中,当浏览器关闭,则Cookie被销毁。//下面是定义的一个获取Cookie 的方法,可以直接通过Cookie的名字获取内容。

2022-12-10 16:08:05 155

原创 web笔记(关于jsp)

JSP的全称是Java Server Pages,即Java的服务器页面,主要作用是代替Servlet程序回传HTML页面的数据,JSP页面本质上是一个Servlet程序,第一次访问JSP页面时(运行Tomcat服务器后在浏览器地址栏输入路径),Tomcat服务器会将此JSP页面翻译成为一个Java源文件,并对其进行编译成为.class字节码文件(一个.java,一个.class)④(脚本)Scriptlet:可以写任何Java代码,在这里写的输出语句,会打印在控制台中。

2022-12-09 19:43:32 120

原创 web笔记 (上传、下载文件,过滤器基础使用)

设置response的字符串编码 可以选择这两种 效果应该是一样的。第一种 :response.setCharacterEncoding(或者 第二种:response.setContentType(#为了防止文件重名包装文件命名方法。#包装了copy方法进行文件的下载。一、文件上传upload。三、过滤器字符编码的过滤。四:过滤器的登录验证。

2022-12-08 20:53:45 180

原创 HTML(笔记)

id属性用于为 HTML 元素指定唯一的 idid属性的值在 HTML 文档中必须是唯一的CSS 和 JavaScript 可使用id属性来选取元素或设置特定元素的样式id属性的值区分大小写id属性还可用于创建 HTML 书签JavaScript 可以使用方法访问拥有特定 id 的元素iframe 用于在网页内显示网页,还可以设置长宽高。

2022-11-20 22:59:40 140

原创 JDBC简单使用

JDBC基础用法

2022-10-19 20:57:25 90

原创 Mysql中DDL,DML,DCL,DQL概念

数据库控制语言,如commit,revoke之类的,在默认状态下,只有sysadmin,dbcreator,db_owner或db_securityadmin等人员才有权力执行DCL。数据库定义语言,主要是建表、删除表、修改表字段等操作。数据操作语言,主要是数据库增删改三种操作。数据查询语言 select操作。

2022-10-19 14:56:29 187

原创 Mysql基础(多表查询,查询)

多表查询

2022-10-17 21:02:28 114

原创 Mysql数据库(约束)

当在父表中删除对应记录时,首先检查该记录是否有对应外键,如果有则设置子表中该外键值为null (这就要求该外键允许取null)。当在父表中删除/更新对应记录时,首先检查该记录是否有对应外键,如果有则不允许删除/更新。当在父表中删除/更新对应记录时,首先检查该记录是否有对应外键,如果有则不允许删除/更新。当在父表中删除/更新对应记录时,首先检查该记录是否有对应外键,如果有,则也删除/更新外键在子表中的记录。默认约束:保存数据时,如果未指定该字段的值,则采用默认值。-- 有外键的表叫子表,外键关联的表叫父表。

2022-10-15 21:55:40 142

原创 Mysql数据库函数(函数)

(case workaddress when '北京' then '一线城市' when '上海' then '一线城市' else '二线城市' end) as '工作地址'prad(str,n,pad):右填充,用字符串pad对str右边进行填充,达到n个字符串的长度。lpad(str,n,pad):左填充,用字符串pad对str左边进行填充,达到n个字符串的长度,concat(s1,s1,...,sn):字符串拼接,将s1,s1,...,sn拼接成一个字符串。rand():返回0~1内的随机数。

2022-10-15 16:13:21 514

原创 Mysql基础用法(用户管理)

alter user '用户名'@'主机名' identified with mysql_native_password by '新密码';greate user '用户名'@'%' identified by '密码';revoke 权限列表 on 数据库.表名 from '用户名'@'主机名';greate user '用户名'@'主机名' identified by '密码';grant 权限列表 on 数据库.表名 to '用户名'@'主机名';drop user '用户名'@'主机名';

2022-10-15 14:35:04 822

原创 Mysql基础用法(查询)

执行时机不同:where是分组之前进行过滤,不满足where条件,不参与分组;编写顺序:select->from->where->group by->having->order by->limit。执行顺序:form->where->group by->having->select->order by->limit。in(...):在in之后的列表值中,多选一。-- 如果多字段排序,当第一个字段相同的时候,才会根据第二个字段排序。-- 起始索引从0开始,起始索引=(查询页码-1)*每页显示记录数。

2022-10-15 11:31:34 248

原创 文件流IO流的方法

转换输出流:BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(new FileWriterStream("d:/a.txt"));转换输入流:BufferedReader br = new BufferedReader(new InputStreamReader (new FileInputStream("d:/a.txt"));System.out.println("abcde哈哈哈哈");记住:所有流在最后都需要关闭!

2022-10-14 20:41:13 165

原创 Mysql数据库的基础用法(创建数据库、数据表)

mysqldump -u [数据库用户名] -p [要备份的数据库名称]>[备份文件的保存路径]alter table modify alter table rename [to] ;alter table add ;mysql -u用户名 -p 数据库名 < 数据库名.sql。alter table drop ;-- 显示Mysql所有引擎。-- 导入导出数据库数据。-- 修改字段数据类型。

2022-10-14 20:38:30 162

原创 idea笔记八(String、static、Arrays类、math类)

(1)java.util.Arrays是一个与数组相关的工具类,里面提供了大量的静态方法,用来实现数 组的常见的操作。:截取从begin开始,一直到end结束,中间的 字符串 #[begin,end),包含左边,不包含右边。(2)一旦使用static关键字,那么这就成为了静态方法,静态方法不属于对象,而是属于类。(1)java.util.Math类是数学相关工具类,提供里面的大量静态方法,完成与数学相关的操作。

2022-09-14 19:53:52 441

原创 idea笔记七(final、权限、内部类)

【外部类名称.内部类名称 对象名 = new 外部类名称().new 内部类名称();注意事项:对于类、方法来说,abstract关键字和final关键字不能同时使用,因为矛盾、①间接方式:在外部类的方法当中,使用内部类;②对于final的成员变量,要么直接赋值,要么通过构造方法赋值,二者选其一。③匿名内部类是省略了【实现类/子类】,但是匿名对象省略了【对象名称 】如果出现了重名现象,那么格式是:外部类.this.外部类成员变量名。局部内部类,如果希望访问所在方法的局部变量,那么这个局部变量必须是。

2022-09-11 19:19:06 251

空空如也

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

TA关注的人

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