- 博客(145)
- 收藏
- 关注
原创 JDBC事务
是并发控制的单元,是用户定义的一个操作序列。这些操作要么都成功,要么都失败,是一个不可分割的工作单位。通过事务,SqlServer能将逻辑相关的一组操作绑定在一起,以便服务器保持数据的完整性。事务通常是以begin transaction开始,以commit或rollback结束。Commit表示提交,即提交事务的所有操作。具体地说就是将事务中所有对数据的更新写到磁盘上的物理数据库中去,事务正常结束。
2025-03-05 15:02:43
936
原创 JDBC数据库连接
(Java Database Connectivity)是一种用于执行SQL语句的JavaAPI,是Java和数据库之间的桥梁。它提供了一种标准化的方式来连接不同的数据库驱动程序,并通过Java程序执行SQL操作。JDBC由一组用Java语言编写的类和接口组成,主要包括以下几个部分:驱动管理:负责加载和注册数据库驱动。Connection接口:用于代表数据库的连接,所有的数据库操作都通过这个接口完成。Statement接口:用于执行SQL语句。ResultSet接口:用于处理SQL查询的结果。
2025-03-05 13:31:24
649
原创 二十三、Java的回调机制
回调函数,顾名思义,用于回调的函数。回调函数只是一个功能片段,由用户按照回调函数调用约定来实现的一个函数。回调函数是一个工作流的一部分,由工作流来决定函数的调用(回调)时机。回调函数包含下面几个特性:(1)属于工作流的一个部分(2)必须按照工作流指定的调用约定来申明(定义);(3)它的调用时机由工作流决定,回调函数的实现者不能直接调用回调函数来实现工作流的功能。
2025-03-04 19:12:49
156
原创 二十二、Java递归
递归算法设计的基本思想是:对于一个复杂的问题,把原问题分解为若干个相对简单类同的子问题,继续下去直到子问题简单到能够直接求解,也就是说到了递推的出口,这样原问题就有递推得解。
2025-03-04 16:34:01
26
原创 阿里巴巴的数据库连接池Druid报Failed to look up JNDI DataSource with name ‘slaveDataSource‘
哈哈,这些其实都不是太大的问题,关键是我们要抓住关键点,从这些一大堆的内容中找出关键点,那就是Caused by: org.springframework.jdbc.datasource.lookup.DataSourceLookupFailureException: Failed to look up JNDI DataSource with name 'slaveDataSource';其实最开始我也是一头雾水,最后实在没有办法,进行了Debug模式调试,逐句代码排除,最后找到原因了。
2024-10-21 14:29:17
600
1
原创 项目启动过程中,项目加载并初始化bean时报空指针
一个类如何才能在项目启动过程中进行加载并初始化呢,那就是我们经常用到的注解@Componet,@Componet注解表明一个类会作为组件类,表示将此类标记为Spring容器中的一个bean。其实对于调试开发项目中的bug很简单,我们要一针见血地发现问题所在,上述就是问题所在BeanCreationException,java.lang.NullPointerException。找到问题所在,我们就使用Debug模式(俗称甲壳虫)去读源码,看看在项目启动并初始化的过程中哪个类文件的哪行代码出现了问题。
2024-10-18 14:35:38
302
原创 Caused by: org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)
项目启动时,一直报错Caused by: org.apache.ibatis.binding.BindingException: Invalid bound statement (not found): com.kangning.system.mapper.SysDictDataMapper.selectDictDataList,是Mybatis中的映射文件跟接口文件SysDictDataMapper绑定错误,我反复检查了很多遍关于Mapper与映射文件的细节之处,没有发现任何问题!
2024-10-16 14:15:14
1425
原创 Spring的依赖注入问题APPLICATION FAILED TO START
3、控制器层,大家有时称它为Controller层即控制器层,在该类上经常用到@RestController注解相当于@Controller和@ResponseBody注解的组合,表示该类是一个控制器,使得控制器方法返回的对象会自动通过消息转换器(如Jackson)转换为JSON或XML格式,并写入HTTP响应体中。1、在业务逻辑层中,类的实例化需要在实现类上添加@Service实例化该类,代码如下。总结,对于上述我描述的问题,直接使用业务逻辑层中的@Service即可解决。
2024-10-15 13:38:58
503
原创 method ‘sqlSessionFactory‘ threw exception; nested exception is java.lang.NullPointerException
2024年10月14日下午15:15分,今天调试了kangning框架,该框架基于开源框架ruoyi,遇到了一些问题,这个问题目前说是sqlSessionFactory为空,报了空指针。
2024-10-14 15:17:26
431
1
原创 手写MySQL笔记
mysql> insert into temp(id,gender) values(id,'男');(1)使用DDL(Database Difinion Language)语言将非空约束建立。alter table temp drop index(关键字) name(约束名称);foreign key(外键字段) references 主表名称(主表中的。第一种:采用默认约束名称建立外键约束。第二种:通过指定约束名建立外键约束名。(1)建立默认约束名称的外键。(2)建立指定约束名称的外键。
2024-06-07 08:07:31
1020
原创 MySQL(四)查询
当主表的记录被从表参照时,主表的记录将不允许删除,如果要删除数据,需要先删除从表中依赖该记录的数据,然后才可以删除主表的数据。级联删除:删除主表的数据时,关联的从表数据也删除,则需要在建立外键约束的后面增加on delete cascade 或 on delete set null,前者是级联删除,后者是将从表的关联列的值设置为null。注意:外键约束的参照列,在主表中引用的只能是主键或唯一键约束的列,假定引用的主表列不是唯一的记录,那么从表引用的数据就不确定记录的位置。
2024-06-07 08:00:03
229
原创 MySQL(三)查询
查询语句中你可以使用一个或者多个表,表之间使用逗号(,)分割,并使用WHERE语句来设定查询条件。WHERE 子句类似于程序语言中的if条件,根据 MySQL 表中的字段值来读取指定的数据。select e.ename,(select d.dname from dept d where d.deptno = e.deptno) 部门名称 from emp e;where型子查询把内层查询结果当作外层查询的比较条件。from子查询 把内层的查询结果供外层再次查询。3)where子查询。
2024-05-28 16:10:05
259
原创 MySQL(二)基本SQL语句以及基本函数应用
EXP(x) 返回e(自然对数的底)的x次方(数学中的e, e 约等于 2.71828 59045 23536 02874 71352 66249 77572)。下面的表显示了需要的每个整数类型的存储和范围。——数学函数、聚合函数(常用于GROUP BY从句的SELECT查询中)、字符串函数、日期和时间函数、格式化函数、类型转换函数、系统信息函数。3)字符串类型指CHAR、VARCHAR、BINARY、VARBINARY、BLOB、TEXT、ENUM和SET。
2024-05-27 20:05:23
908
原创 MySQL(一)
1、记在心里2、写在纸上3、使用内存4、使用磁盘1)数据库就是存放数据的仓库,是按照数据结构来组织、存储和管理数据的仓库,是数据持久化的工具。2)使用数据库的优点存储大量数据保持数据信息的完整、一致性数据的共享和安全3)数据库与应用程序的关系4)数据库发展历史萌芽阶段------文件系统数据库- 使用磁盘等载体记录数据初始阶段-----网状,层次型数据库-DBMS的诞生,IBM的IDS,IMS数据库。现级阶段----关系对象型数据库-SQL的诞生、加强了数据存储的依赖性。
2024-05-23 17:00:46
833
原创 mysql工具中表结构没有乱码,而cmd命令行插入数据有乱码怎么解决?
2、设置编码,此时输入 set character_set_client = gbk;3、再输入 set character_set_results = gbk;1、cmd命令行默认的是gbk,而mySQL一般是utf8;
2024-05-23 16:28:08
153
原创 Type ‘help;‘ or ‘\h‘ for help. Type ‘\c‘ to clear the current input statement.
its。
2024-05-21 18:07:03
463
原创 MySQL如何创建用户?
(3)修改密码:update mysql.user set password=password('lining') where user='li';(2)删除用户:delete from mysql.user where user='li' and host='localhost';(1)登陆数据库:mysql -u root -p;输入密码:a123 或者这样: mysql -u;(1)以Root身份登陆:mysql -u root -p;(1)以root身份登陆:mysql -u root -p;
2024-05-21 18:00:07
740
原创 MySQL的管理员用户名为root,密码默认为空,如何修改root密码?
当前user和priviligeS表中的用户信息/权限设置从mysql库(MySQL数据库的内置。MYSQL配置好后,启动成功,默认密码是空,但是为了安全,设置密码(mysql有。出现 Enter password: 这个,还是按enter键,这样成功进入。怕重启后无法再登录进来,那么直接flush之后就可以看权限设置是否生效。MySQL用户数据和权限有修改后,希望在"不重启MySQL服务"的情况下直接生效,MySQL的管理员用户名为root,密码默认为空。一个默认的用户名为root,密码自己定。
2024-05-21 17:58:16
888
原创 TCP和UDP的区别是什么?
TCP(传输控制协议)和UDP(用户数据报协议)是互联网协议族中的两个重要传输层协议。本文将从工作原理、特点、优缺点以及适用的应用场景,帮助读者更好地理解和应用者两种协议。
2024-05-13 15:35:04
513
原创 JDK动态代理与CGLIB动态代理的有什么区别?
了解了JDK动态代理和CGLIB动态代理的原理后,现在来比较下两者的区别,这也是面试时几乎必问的一道面试题。JDK动态代理生成的代理继承了java.lang.reflect.Proxy,因为Java是单继承的,如果不通过实现接口的形式,无法对类进行扩展。CGLIB动态代理生成的代理类实际上是被代理的子类,所以被代理类可以不实现接口。
2024-05-13 09:38:02
1128
原创 二十一、JDK代理和Java注解
代理类和委托类之间通常会存在关联关系,一个代理类的对象与一个委托类的对象关联,代理类的对象本身并不真正实现服务,而是通过调用委托类的对象的相关方法,来提供特定的服务。假如我们的程序中某个方法已有更好的方法可以替代,我们已经不需要此方法了,而为了防止其他调用此方法的类不至于崩溃,我们没有必要删除它,而只需在其前面加上此@Deprecated注解,就表示此方法已经过时,以后那个程序调用它,编译时便会显示过时信息。注解@Retention可以用来修饰注解,是注解的注解,称为元注解。
2024-05-08 08:30:36
209
原创 二十、Java的反射机制
反射的概念是由Smith在1982年首次提出的,主要是指程序可以访问、检测和修改它本身状态或行为的一种能力。Java反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法;这种动态获取的信息以及动态调用对象的方法的功能称为java语言的反射机制。
2024-05-08 07:30:08
247
原创 ReflectionMethod can not access a member of class com.ruoyi.web.controller.test.bean.Student
因此,我将Student类中的方法,改为public,再次运行代码正常执行。首先声明我的方法sayHello,在Student这个类中是私有的方法。获取类中声明的方法代码如下,这时就报上面的错误。
2024-05-07 14:14:26
405
原创 java.lang.NoSuchMethodException: com.ruoyi.web.controller.test.bean.HeadTeacher
反复分析给出的错误提示,发现实例化HeadTeacher对象时,该类中并不存在带参构造器,因此。软件开发过程中使用Java反射机制时遇到了下面的问题。bean对象中添加如下代码。
2024-05-07 13:20:12
540
原创 Activity工作流基本知识点
Activiti5是由Alfresco软件在2010年5月17日发布的业务流程管理(BPM)框架,它是覆盖了业务流程管理、工作流、服务协作等领域的一个开源的、灵活的、易扩展的可执行流程语言框架。Activiti基于Apache许可的开源BPM平台,创始人Tom Baeyens是JBoss jBPM的项目架构师,它特色是提供了eclipse插件,开发人员可以通过插件直接绘画出业务流程图。
2024-05-06 09:54:01
899
原创 Springboot整合Activity的完整示例
{activityDemoServiceImpl.updateBizStatus(execution,"tj")} 表示将使用activityDemoServiceImpl服务的updateBizStatus方法,里面有两个参数,execution是当前流程节点对象,可获取流程信息及业务key等,"tj"字符串参数。功能包括:退回/通过(节点条件)、指定办理人、生成流程图、高亮显示已办节点、查询任务列表(办理人)等。四、增加2、3设置的服务方法(ActivityDemoServiceImpl)
2024-05-06 09:42:38
1613
原创 十九、XML Extensible Markup Language
如果XML内容写错了怎么办?如何校验XML语法的正确与否?DTD(文档类型定义)可以定义合法的XML文档结构,它使用一系列合法元素来定义文档的结构。DTD分别为内部DTD和外部DTD,所谓内部DTD是指该DTD在某个文档的内部,只被该文档使用。外部DTD是指该DTD不在文档内部,可以被其他所有的文档来共享。DTD文档与XML文档实例的关系可以看成是类和对象的关系。根元素的声明每个XML文档都只有一个根元素,其它的子元素都包含在该根元素中。因此在DTD中对根元素的声明是必不可少的。
2024-04-29 15:39:53
702
原创 十八、Java解析XML文件
XML即可扩展的标记语言,可以定义语义标记(标签),是元标记语言。XML不像超文本标记语言HTML,HTML只能使用规定的标记,对于XML,用户可以定义自己需要的标记。XML(Extensible Markup Language)和HTML(Hyper Text Markup Language)师出同门,都是从SGML(Standard Generalized Markup Language)延伸而出的标记语言。
2024-04-29 14:22:37
335
原创 在MySQL中isnull()函数不能作为替代null值!
如下:首先有个名字为business的表:SELECTASbus_isnullFROMbusinessWHEREid=2直接运行就会报错:错误代码:1582tonativefunction'isnull'如下:使用ifnull()函数:SELECTASbus_ifnullFROMbusinessWHEREid=2运行结果:当查询的值不为null时:SELECTASbus_ifnullFROMbusinessWHEREid=
2024-04-27 18:16:28
471
1
原创 MySQL数据库中Delete语句和Truncate table 语句的区别
如果delete不加where 子句,那么它和truncate table是一样的,但他们有点不同,那就是delete可以返回被删除的记录数,而truncate table返回的是0。在内存中,用delete删除数据,表空间中其被删除数据的表占用的空间还在,便于以后得使用,另外它是“假象”的删除,相当于windows中用delete删除数据是把数据放到回收站中,还可以恢复,当然如果这个时候重新启动系统,它也就不能恢复了。7、truncate和delete只删除数据,而drop则删除整个表(结构和数据)。
2024-04-27 10:10:56
609
原创 URLConnection程序报java.net.ConnectException: Connection refused: connect
java.nect.ConnectionException:Connection refused:connect 是指客户端与服务端连接失败,可能是服务端没有启动,或者服务器端的端口号与客户端的不一致,或者服务器的防火墙拦截了客户端的请求。我这边是忘记的启动服务端。
2024-04-26 17:01:24
629
1
原创 十七、Java网络编程(一)
1、Java网络编程的基本概念2、两类传输协议TCP、UDP3、基于URL的网络编程4、基于Socket(套接字的基本步骤)、初步知识
2024-04-25 16:28:26
391
1
原创 十六、Java多线程
一个进程在运行态时调用sleep(),进入等待态,睡眠结束后,并不是直接回到运行态,而是进入就绪队列,要等到其他进程放弃时间片后才能重新进入运行态。这就只能有一个线程可以访问这个方法,在当前线程调用这个方法时,此方法是被锁状态,同步监视器是this。当线程被启动后,它不可能一直使用CPU独自运行,还有更多的线程需要使用到CPU,所以CPU会在多条线程之间切换执行命令,于是线程状态也会多次在运行,阻塞之间切换。当线程获得到JVM中线程调度器的调度时,线程就会处于运行状态,开始执行run()方法的线程执行体。
2024-04-25 14:54:58
364
1
原创 十五、Java中I/O流
转换流(InputStreamReader和OutputStreamWriter)是Java中用于在字节流和字符流之间进行转换的桥梁。它们可以将字节流转换为字符流,并提供了字符编码的功能。转换流的主要作用是将字节流解析成字符流,在读取字节数据或写入字符数据时完成字符编码和解码的过程。这样可以处理特定编码格式的文本数据,例如将字节流转换为字符流以支持UTF-8或GBK编码。BufferedReader是Java中的一个输入流类,用于从字符流中读取文本。
2024-04-24 16:44:18
528
1
原创 十四、集合框架和枚举
但是调用方法可以直接通过类名调用Collections类的方法,因为Collections类中的方法都是被static修饰了,可以直接用类名调用。Collections类提供了一系列的静态方法,可以实现对集合元素的排序,添加一些元素,随机排序,替换操作等。在实际编程中,往往存在着这样的“数据集”,它们的数值在程序中是稳定的,而且“数据集”中的元素是有限的。例如星期一到星期日七个数据元素组成了一周的“数据集”,春夏秋冬四个数据元素成了四季的“数据集”。在以前的学习中使用什么来记录多个相同类型的数据?
2024-04-24 14:20:39
391
Servlet+JSP+Struts+SpringMVC+考试题+练习题
2025-03-05
二分查找算法代码高级版本+二分查找算法思想
2024-05-13
二分查找算法代码+二分查找算法思想
2024-05-13
CGLIB动态代理+CGLIB动态代理完整代码
2024-05-13
JDK动态代理+JDK动态代理完整代码+JDK动态代理代码实现逻辑
2024-05-13
Java基础核心+File对象相关操作方法
2024-04-24
Java基础核心+文件输入流+文件输出流
2024-04-23
Java基础核心+InputStream输入流+OutputStream输出流
2024-04-23
报文响应+获取会话公钥(SessionKey)+RAS加密+AES加密+MD5加密
2024-04-23
Java核心基础+Java中的数据在内存中的存储
2024-04-23
Java面向对象编程+可授课使用+没有答案
2024-04-10
《Java练习题》面向对象
2024-04-10
快速排序基本思想+排序过程
2024-04-08
冒泡排序原理过程解析图
2024-04-08
增强for(part1:part2)part3;
2024-04-08
Java基础编程100道题
2024-03-29
Java实例变量、类变量、局部变量
2024-03-29
使用Java技术来开发Web应用程序的技术框架,使用该技术实现用户登录验证码功能,后台功能代码+前端JSP页面代码
2024-03-26
Spring下的子框架SpringMVC实现多文件上传完整代码
2024-03-25
Spring下的子框架SpringMVC实现单个文件上传功能
2024-03-25
web服务器nginx+部署前端vue项目
2024-03-22
ASCII码表即美国信息互换标准代码
2024-03-22
DBCP( Database Connection Pool )数据库连接池
2024-03-22
Spring框架+SpringAOP动态代理
2024-03-22
Spring框架+Spring中的事务
2024-03-22
Java基础核心理解+什么是回调即回调机制讲解
2024-03-21
SSH框架整合开发项目详情步骤
2024-03-21
Mybatis框架+Mapper代理
2024-03-21
Java核心算法+插入排序+冒泡排序+选择排序+快速排序
2024-03-13
Spring框架+Spring工作原理+AOP面向切面编程+JDK代理+Cglib代理
2024-03-13
开发工具+接口测试工具Postman+一款功能超级强大用于HTTP请求的测试工具
2024-03-13
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人