
Spring家族
文章平均质量分 81
Spring是一个贯穿各层为javaEE提供一站式解决方案的框架
Spring中主要有容器模块,AOP模块,ORM和DAO模块,Web模块等等
MinggeQingchun
这个作者很懒,什么都没留下…
展开
-
Java - Maven编译打包项目报错:Failed to execute goal org.apache.maven.plugins:maven-resources-plugin:3.3.1:
默认为false,只有在一个公共配置文件+多个环境变量替换配置文件方式下才有效,如果是我这种在不同环境的文件夹名称下各有各的公共配置文件的话,是完全不需要管这个参数的。MAVEN提供了一种过滤机制,这种机制能够在资源文件被复制到目标目录的同时,当filtering = true时替换资源文件中的占位符;:如果你使用了自定义的过滤器,确保它们被正确配置,并且所有需要替换的属性都是可用的。:确保你使用的Maven版本和相关插件是最新的,或者至少是与你的项目兼容的版本。文件的路径是否正确,是否确实位于。原创 2024-10-08 08:55:09 · 1817 阅读 · 0 评论 -
Java - SpringBoot整合Xxl-job实现定时任务
XXL-JOB是一个分布式任务调度平台,其核心设计目标是开发迅速、学习简单、轻量级、易扩展。现已开放源代码并接入多家公司线上产品线,开箱即用。如果是单机并且定时任务不多的情况,可以选择Timer注解@Scheduled或者Cron工具类等方式来实现,但是这有个缺点,那就是定时任务会写死在代码中,一旦启动,就不能暂停或者修改。如果修改的话,整个还项目要重新编译,这属实非常的麻烦。原创 2024-10-08 08:53:02 · 1155 阅读 · 0 评论 -
Java - SpringBoot Maven打包失败报错:class lombok.javac.apt.LombokProcessor (in unnamed module @0x7cxx)
这样配置之后,当你运行mvn clean install或其他Maven编译命令时,编译器将使用指定的参数,从而解决Lombok与JDK模块化系统之间的兼容性问题。确保你使用的是最新版本的Lombok,因为最新版本可能已经解决了这个问题。在编译时添加特定的JVM参数,让JDK将需要的包导出给未命名模块。将lombok升级到1.18.20或以上即可。文件中添加这些参数。如果使用的是Maven,可以在你的。解决这个问题的方法之一是通过。版本引入了模块系统,导致。原创 2024-09-18 10:31:58 · 1107 阅读 · 0 评论 -
SpringBoot - com.microsoft.sqlserver.jdbc.SQLServerException: 对象名 ‘DUAL‘ 无效 | Druid双数据源MySQL+SQL ser
但是SQL server 没有对象DUAL,也就是这个语句在SQL server下面是不能运行的,所以报错了。我们在自己的代码里面全局搜索这个DUAL,只有在Druid里面使用了这个语句去验证数据库的连接信息。检查sql 有效性,在application.prppertis 文件添加如下配置。在SpringBoot项目中使用双数据源MySQL和SQLserver时,运行报错。在MySQL下面可以正常的使用返回1,MySQL有对象DUAL。导入salserver驱动包。原创 2023-12-15 21:25:06 · 2449 阅读 · 0 评论 -
Java - LambdaQueryWrapper 的常用方法
【1】分页参数1是分页起始位置,一般是1,参数2:结束位置, 一般都是前端传过来的,查询的数量Page page1 = new Page(参数1,参数2);条件 eq 指的是相等执行page方法 page(参数1,参数2)参数1:上面的new的分页对象,参数2是lambda表达式查询条件(一)PageHelper和IPage区别。原创 2023-09-17 22:14:36 · 11905 阅读 · 1 评论 -
Mybatis - 统计SQL执行时间
由于系统数据量较大,SQL执行十分低效,我们在做数据库优化时,想在日志中看到每个SQL执行的时间,以方便针对性的优化。原创 2023-07-02 09:47:39 · 3918 阅读 · 0 评论 -
Spring - Error creating bean with name ‘XX‘: Unsatisfied dependency expressed through field ‘XX‘
报错:不满足依赖异常。创建名为’xx’的bean时出错,通过字段’sqlSessionFactory’表达的不满足的依赖项。原创 2023-01-25 21:55:17 · 6306 阅读 · 0 评论 -
Java--Spring事务
事务原本是数据库中的概念,在Dao层。但Spring框架将事务提升到业务层,即 Service 层Spring事务的本质其实就是数据库对事务的支持Spring支持编程式事务管理以及声明式事务管理两种方式一、编程式事务管理编程式事务管理是侵入性事务管理,使用TransactionTemplate或者直接使用PlatformTransactionManager,对于编程式事务管理,Spring推荐使用TransactionTemplate二、声明式事务管理声明式事务管理建立在AOP之.原创 2022-08-31 21:58:53 · 1069 阅读 · 0 评论 -
Java--MybatisPlus Wrapper构造器;分页;MP代码生成器(四)
*** last : 拼接sql语句到MP的sql语句的最后*/@TestOR age =?limit 1qw.eq("name","张三").or()}原创 2022-09-02 22:21:59 · 1727 阅读 · 0 评论 -
Java--MybatisPlus表和列;自定义SQL(三)
1、建表id int(11) NOT NULL AUTO_INCREMENT COMMENT '主键ID',name varchar(50) NULL DEFAULT NULL COMMENT '学生名字',age int(11) NULL DEFAULT NULL COMMENT '年龄',email varchar(50) NULL DEFAULT NULL COMMENT '邮箱',status int(11) NULL DEFAULT NULL COMMENT '状态',原创 2022-09-02 21:41:32 · 2911 阅读 · 0 评论 -
Java--MybatisPlus日志;CRUD用法;Active Record(AR)(二)
在application.yml 配置文件中添加如下配置。注:此配置只是将日志输出到控制台。原创 2022-09-01 21:28:55 · 1498 阅读 · 0 评论 -
Java--MyBatis批量插入、批量更新和批量删除
MyBatis批量插入数据[Mybatis 插入与批量插入以及多参数批量删除](http://www.cnblogs.com/liaojie970/p/5577018.html)注意项:需要注意id是varchar类型还是bigint/int类型1、批量插入WaterEleMapper.xml部分代码<!--批量增加测试--> <insert id="insertList" parameterType="java.util.List"> in转载 2021-10-21 11:08:57 · 5881 阅读 · 0 评论 -
Java--MybatisPlus入门;与Mybatis区别;简单使用(一)
MyBatis-Plus在 MyBatis之上进行了封装,单表CURD的操作几乎都可以由MyBatis-Plus 代替执行。而且提供了各种查询方式,分页行为。作为使用者无需编写xml,直接调用MyBatis-Plus提供的API即可。的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。(简称 MP)是一个。...............原创 2022-09-01 20:58:31 · 747 阅读 · 0 评论 -
Shiro - Shiro简介;Shiro与Spring Security区别;Spring Boot集成Shiro
以下引自百度百科Apache Shiro是一个强大且易用的Java安全框架,执行身份验证、授权、密码和会话管理。使用Shiro的易于理解的API,可以快速、轻松地获得任何应用程序,从最小的移动应用程序到最大的网络和企业应用程序。三个核心组件:Subject,SecurityManager 和 Realms。...原创 2022-08-27 20:10:07 · 39713 阅读 · 12 评论 -
Java--Spring应用在Web项目
域名1、创建web的maven项目;类型maven-archetype-webapp 2、加入maven的依赖(1)spring依赖(2)mybatis依赖(3)mysql驱动(4)spring的事务依赖(5)mybatis和spring集成依赖(6)加入jsp,servlet依赖pom.xml文件<dependencies> <!-- 单元测试依赖 --> <dependency> <g.原创 2022-08-18 21:04:38 · 643 阅读 · 0 评论 -
Java--MyBatis传入参数parameterType
parameterType:MyBatis的传入参数一、参数类型主要分为两种 (1)基本数据类型:int,string,long,Date (2)复杂数据类型:类和Map二、获取参数中的值 (1)基本数据类型:#{参数} 获取参数中的值 (2)复杂数据类型:#{属性名} ,map中则是#{key}.........原创 2022-08-18 11:58:42 · 1091 阅读 · 0 评论 -
Java--Mybatis中 #{} 和 ${} 的区别
# 和 $ 区别1、#:占位符(#{}是预编译处理),告诉 mybatis 使用实际的参数值代替。并使用PrepareStatement 对象执行 sql 语句, #{…} 代替 sql 语句的 “?”。这样做更安全,更迅速,通常也是首选做法Mybatis在处理#{}时,会将sql中的#{}替换为?号,调用PreparedStatement的set方法来赋值;Mybatis在处理{}时,就是把{}替换成变量的值使用#{}可以有效的防止SQL注入,提高系统安全性select user_.原创 2022-08-18 11:57:12 · 714 阅读 · 0 评论 -
Java--Spring和MyBatis集成
Spring集成Mybatis主要使用的spring的IOC技术创建项目步骤:1、新建普通的maven项目2、加入maven的依赖(1)spring依赖(2)mybatis依赖(3)mysql驱动(4)spring的事务依赖(5)mybatis和spring集成依赖<dependencies> <!-- 单元测试依赖 --> <dependency> <groupI.原创 2022-08-18 11:55:54 · 328 阅读 · 0 评论 -
Java--MyBatis动态SQL;<if>,<where>,<foreach>标签;判断集合数组长度
1、对应注解@lSelect2、对应注解@Update3、对应注解@Insert4、对应注解@Delete5、在某些条件根据入参有无决定是可使用以避免1=1这种写法,也会根据是否为where条件后第一个条件参数自动去除and6、:类似于java中的条件判断if,没有标签7、标签8、:可以对数组、Map或实现了Iterable接口(如List、Set)的对象遍历。可实现in、批量更新、批量插入等。9、:映射结果集10、:映射结果类型,可是java实体类或Map、List等类型。原创 2022-08-17 22:11:33 · 7068 阅读 · 3 评论 -
Java--web.xml加载过程;文件标签详解
一、web.xml加载过程我们在启动Javaweb项目时,首先需要启动一个容器(如Tomcat,JBoss)WEB加载web.xml过程如下:1、在启动Web项目时,容器(如Tomcat,JBoss)会读web.xml配置文件中的两个节点<listener> 和 <context-param>2、接着容器会创建一个ServletContext(上下文),应用范围内即整个WEB项目都能够使用这个上下文3、接着容器以<context-param>的na原创 2022-08-15 21:14:02 · 1706 阅读 · 0 评论 -
Java--Spring之IoC控制反转;基于注解的DI
基于XML配置文件的DI请参考上文https://blog.csdn.net/MinggeQingchun/article/details/122880488二、基于注解的DI原创 2022-08-13 10:46:13 · 269 阅读 · 0 评论 -
Java--Spring之AOP面向切面编程
一、JDK动态代理具体可参考之前博文Java--JDK动态代理(AOP)在这里只做简单说明动态代理是指代理类在程序运行时进行创建的代理方式。这种情况下,代理类并不是在Java代码中定义的,而是在运行时根据Java代码中的“指示”动态生成的。(动态代理中的代理类并不要求在编译期就确定,而是可以在运行期动态生成,从而实现对目标对象的代理功能)相比于静态代理,动态代理的优势在于可以很方便的对代理类的函数进行统一的处理,而不用修改每个代理类的函数动态代理又分为两种方式(1)JDK动态代...原创 2022-08-13 06:58:02 · 2018 阅读 · 0 评论 -
Java--Spring之IoC控制反转;基于XML配置文件的DI
Spring是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器框架控制反转(Inversion of Control,缩写IoC),是面向对象编程中的一种设计原则,可以用来减低计算机代码之间的耦合度。控制反转就是对对象控制权的转移,从程序代码本身反转到了外部容器。通过容器实现对象的创建,属性赋值,依赖的管理。依赖:classA 类中含有 classB 的实例,在 classA 中调用 classB 的方法完成功能,即 classA 对 classB 有依赖Ioc 的实现:1、依赖原创 2022-08-13 06:49:21 · 278 阅读 · 0 评论 -
SpringBoot - SpringBoot集成RabbitMQ
创建两个模块,一个命名springboot-send,一个命名springboot-receive在两个工程的 pom.xml配置文件中引入AMQP依赖核心配置文件application.properties文件中1、direct交换机消息发送方消息接收方2、fanout交换机消息发送方消息接收方3、topic交换机消息发送方消息接收方运行测试Send消息发送,编写Application.java类 运行测试Receive消原创 2022-06-09 08:41:44 · 378 阅读 · 0 评论 -
Java--MyBatis传出参数resultType和resultMap
一、MyBatis输出参数 resultType 和 resultMap我们需要在 mybatis-config.xml 文件中加如下配置<!--定义别名--> <typeAliases> <!-- 第一种方式: 指定一个类型一个自定义别名 type:自定义类型的全限定名称 alias:别名 --> <ty原创 2022-06-05 21:48:07 · 903 阅读 · 0 评论 -
Java--MyBatis配置文件
mybatis的主配置文件:主要定义了数据库的配置信息,SQL映射文件的位置,如mybatis-config.xml;mybatis.xml1、xml 文件,需要在头部使用约束文件<?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/myba原创 2022-06-05 20:33:54 · 844 阅读 · 0 评论 -
Java--MyBatis的Dao方式以及Dao动态代理
一、MyBatis传统Dao方式以及Dao动态代理二、MyBatis传参parameterType三、MyBatis输出参数 resultType 和 resultMap四、MyBatis动态SQL原创 2022-06-04 22:00:42 · 888 阅读 · 0 评论 -
Java--Spring入门
一、Spring简介(一)简介Spring 是于 2003 年兴起的一个轻量级的 Java 开发框架,它是为了解决企业应用开发的复杂性而创建的Spring 的核心是控制反转(IoC)和面向切面编程(AOP)。Spring 是可以在 Java SE/EE 中使用的轻量级开源框架简而言之:Spring是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器框架Spring 的主要作用就是为代码“解耦”,降低代码间的耦合度Spring官网:https://spring.io/.原创 2022-06-03 15:40:44 · 1075 阅读 · 0 评论 -
SpringBoot - Thymeleaf 模版
Thymeleaf 简介Thymeleaf 是一款用于渲染 XML/XHTML/HTML5 内容的模板引擎。它与 JSP,Velocity,FreeMaker 等模板引擎类似,也可以轻易地与 Spring MVC 等 Web 框架集成。与其它模板引擎相比,Thymeleaf 最大的特点是,即使不启动 Web 应用,也可以直接在浏览器中打开并正确显示模板页面 。Thymeleaf 是新一代 Java 模板引擎,支持 HTML 原型,以直接被浏览器打开,此时浏览器会忽略未定义的 Thymeleaf 标签原创 2022-05-28 21:50:40 · 511 阅读 · 0 评论 -
SpringBoot - 打包,war包,jar包
一、war包1、创建一个springboot的web应用在src目录下创建一个 webapp目录我们选择 file ----> Project Structure ----> 选择模块,选择 Web Resource Directories ,新建webapp 目录即可即可看到webapp被设为web项目的根目录,并有一个蓝点的标志2、在application.properties中配置服务端口,上下文路径;以及视图解析器server.port=8081...原创 2022-05-28 21:51:27 · 1936 阅读 · 0 评论 -
Java--MyBatis入门
一、三层架构Java中的三层架构指1、界面层(User Interface layer;表示层,视图层):接受用户的数据,显示请求的处理结果。使用 web 页面或者手机 app和 用户交互2、业务逻辑层(Business Logic Layer):接收表示传递过来的数据,检查数据,计算业务逻辑,调用数据访问层获取数据3、数据访问层(Data access layer):与数据库打交道;主要实现对数据的增、删、改、查。将存储在数据库中的数据提交 给业务层,同时将业务层处理的数据保存到数据库原创 2022-04-10 21:50:23 · 4424 阅读 · 0 评论 -
Java--SSH,SSM和Spring Boot框架区别优缺点
一、SSH(Struts + Spring + Hibernate)1、基本概念SSH框架是JAVA EE中三种框架所集成,分别是Struts,Spring,Hibernate框架所组成集成SSH框架的系统从职责上分为(Struts2--控制;spring--解耦;hibernate--操作数据库),以帮助开发人员在短期内搭建结构清晰、可服用好、维护方便的web应用程序。使用Struts作为系统的整体基础框架,负责MVC的分离,在Struts框架的模型部分,控制业务跳转,利用hibernate框原创 2021-08-03 08:05:01 · 5083 阅读 · 0 评论 -
Java--IDEA中Spring配置错误:class path resource [.xml] cannot be opened because it does not exist
一、报错运行 Spring 项目时报错如下:class path resource [beans.xml] cannot be opened because it does not exist没有找到beans.xml 配置文件二、报错原因使用ClassPathXmlApplicationContext( ) 方法获取配置文件beans.xmlApplicationContext applicationContext = new ClassPathXmlApplicatio.原创 2021-07-11 22:59:13 · 22406 阅读 · 11 评论 -
Java--IDEA找不到包;如:Java:程序包org.springframework.beans.factory.annotation不存在
修改maven的版本为3.6.0,之前用的是3.6.3版本。5、Build Module和Rebuild Module。4、mvn -U idea:idea下载完整包。maven版本修改之后,IDEA会自动下载包。2、jar包问题(删除再下载)3、jar包版本问题。原创 2022-04-03 22:07:31 · 3391 阅读 · 2 评论 -
Java--SpringMVC配置,原理
本文主要讲解SpringMVC的配置以及工作原理1、创建dynamic web project项目,本项目名:SpringMVC(注意项目名)2、导入jar包3、在WEB-INF目录下创建 web.xml;配置Spring MVC的入口DispatcherServlet,把所有的请求都提交到该Servlet注意:<servlet-name>SpringMVC</servlet-name>SpringMVC这个名字在下一步会用到<?xml vers.原创 2020-11-05 10:54:15 · 417 阅读 · 1 评论 -
Java--Servlet[springmvc]的Servlet.init()引发异常;Could not open ServletContext resource
Servlet[springmvc]的Servlet.init()引发异常Could not open ServletContext resource[/WEB-INF/SpringMVC-servlet.xml]原创 2020-11-05 09:26:31 · 2277 阅读 · 0 评论 -
Java--Mybatis中insert一条记录之后将主键ID返回给实体对象
我们在insert一条数据之后,需要返回该实体对象的主键ID1、xml文件里添加useGeneratedKeys=“true” keyProperty="id" <!-- useGeneratedKeys="true" keyProperty="userId" --> <insert id="insertUser" parameterType="User" useGeneratedKeys="true" keyProperty="userId">原创 2022-04-02 14:00:33 · 6723 阅读 · 0 评论 -
Java--请求转发;重定向;异常处理;拦截器
一、请求转发当处理器对请求处理完毕后,向其它资源进行跳转时,有两种跳转方式:请求转发与重定向,两者区别如下:forward:表示转发,实现 request.getRequestDispatcher("xx.jsp").forward() /** * 处理器方法返回ModelAndView,实现转发forward * 语法:setViewName("forward:视图文件完整路径") * forward:不和视图解析器一同使用(忽略视图解析器)原创 2022-08-17 21:06:21 · 3653 阅读 · 0 评论 -
Java--SSM
SSM架构,是三层结合所成的框架,分别是Spring、SpringMVC、MyBatis所组成SpringMVC:视图层,界面层;负责接收请求,显示处理结果,管理Controller控制器对;Spring:业务层,管理service,dao,工具类对象;依赖注入来管理各层,面向切面编程管理事务,日志和权限MyBatis:持久层;访问数据库;基于jdbc的框架,主要用来操作数据库,并且将业务实体和数据表联系起来1、Spring(1)基本概念Spring是一个开源开发框架,是一个轻量级控原创 2022-05-29 20:37:18 · 4189 阅读 · 0 评论 -
Java--SpringMVC之url-pattern,静态资源;URL相对路径,绝对路径
一、url-pattern二、路径原创 2022-08-17 08:05:54 · 1174 阅读 · 0 评论