Java
只恨天高
这个作者很懒,什么都没留下…
展开
-
SpringBoot-配置文件中使用随机值和使用变量
如果没定义还可以设置默认值原创 2024-06-24 15:14:38 · 56 阅读 · 0 评论 -
SpringBoot-注解@ImportResource引入自定义spring的配置xml文件和配置类
用这个配置类代替spring.xml,所有他们之间存在一个一一对应的关系。原创 2024-06-23 16:30:53 · 183 阅读 · 0 评论 -
SpringBoot-注解@PropertiySource读取外部属性文件
ConfigurationProperties和@Value两个注解能从配置文件中获取数据,但是前面讲了他们是从。把原本在全局配置文件中的配置数据移动到user.propertis文件里,然后在User类上的。中获取,那么如果是一些。原创 2024-06-23 16:26:27 · 136 阅读 · 0 评论 -
SpringBoot-通过注解@Vuale从全局配置文件中获取数据
让JavaBean的所有属性和全局配置文件中配置项建立关联关系外,我们spring提供了一个@Value注解,获取全局配置文件中的某个配置项的数据。① 当我们有JavaBean与全局配置文件里的数据对应的时候,我们就用。② 当我们只是需要配置文件中某一个值的时候,就用@Value注解。不支持复杂的类型绑定,比如${user.map}是读不出数据的。支持spring的表达式的写法,#{12+13}支持复杂的类型绑定,比如Map,List。是和JavaBean的所有属性绑定。不支持spring表示式的写法。原创 2024-06-23 16:21:58 · 211 阅读 · 0 评论 -
通过注解@ConfigurationProperties和全局配置文件中配置数据绑定
注意:读属性文件出现中文出现乱码的解决办法在settings里。需要一个依赖,这个依赖会给我们自动代码提示。原创 2024-06-23 16:19:24 · 109 阅读 · 0 评论 -
通过注解@ConfigurationProperties和全局配置文件中配置数据绑定
注意:如果加上了依赖,但是仍然没有在yml配置文件里提示,解决办法,重新Build一下项目。(springboot的单元测试支持对象注入比junit安逸多了)注意:读属性文件出现中文出现乱码的解决办法在settings里。需要一个依赖,这个依赖会给我们自动代码提示。原创 2024-06-20 13:29:50 · 155 阅读 · 0 评论 -
SpringBoot的配置文件和YAML文件的语法
除了properties文件可以做为SpringBoot的配置文件以外,SpringBoot还支持一种我们以前没接触过的配置文件,这就是YAML配置文件。④ 字符串默认不用引号引起来,在值里用“不会转义特殊字符,\n会换行”,‘会转义特殊字符,\n会输出’, 这个是默认Spring initializr默认自动生成的配置文件,也是我们属性的文件格式。⑤ 对象或Map集合的表示方法有两种,一种是用换行+缩进,另一种是利用大括号。注意:键值对中的值前面必须有空格,多少个无所谓,但必须有,这是语法。原创 2024-06-20 13:21:32 · 223 阅读 · 0 评论 -
快速创建SpringBoot项目
(3)application.properties: SpringBoot的配置文件,在这里可以修改SpringBoot的默认配置。(2)templates:用来存放freemarker或者thymeleaf的模板。使用new spring starter project来创建,其他的和上面一样。(1)static:是用来存放静态资源的,比如css,js,img....使用Spring Initializr。原创 2024-06-19 14:10:33 · 246 阅读 · 0 评论 -
对SpringBoot入门案例的关键点
的第一个参数的意义:让spring boot知道ApplicationMain所在的包以及这个包下的所有子包,是spring的扫描组件范围,只有在这个范围的controller,service,dao里的组件类才能被spring扫描到,并且初始化对象,放入到spring的ioc容器里!①注解@SpringBootApplication声明有这个注解的类是主类,是spring boot的执行的入口,没有这个注解注解的类,就没有入口,没有入口,应用就启动不了。原创 2024-06-18 16:55:40 · 221 阅读 · 0 评论 -
SpringBoot的入门案例
遇到8080端口被占用的处理方法,在dos输入指令:netstat -ano | findstr 8080 ,然后在输入指令:taskkill -pid 3168 -f,执行。打出的jar包,可以直接用java -jar xxxx.jar命令运行。因为pom.xml中引入了maven的插件,可以直接用maven打包。双击package打包。原创 2024-06-18 16:42:26 · 196 阅读 · 0 评论 -
SpringBoot的简单介绍
简单的说,spring boot就是整合了很多优秀的框架,不用我们自己手动的去写一堆xml来进行配置。从本质上来说,Spring Boot就是Spring,它做了那些没有它你也会去做的Spring Bean配置。它使用“习惯优于配置”(项目中存在大量的配置,此外还内置了一个习惯性的配置,让你无需手动进行配置)的理念让你的项目快速运行起来。原创 2024-06-17 12:37:04 · 308 阅读 · 0 评论 -
编写一个简单的Mybatis插件
1.编写一个类,实现Intercepter这个接口2.完成这个类的方法,并通过注解@Intercepts来告诉Mybatis这个插件拦截哪个类和哪个方法3.在Mybatis的全局配置文件里注册这个插件,让插件生效4.玩一个实际功能的插件原创 2024-06-16 19:20:09 · 208 阅读 · 1 评论 -
Mybatis工作流程和插件开发
获取到对应的Mapper接口的代理对象,MapperProxy(代理对象),这个代理对象里包含有Mapper接口里的所有方法以及和数据库之间的会话DefaultSqlSession对象,而这个对象又包含:对象DefaultSqlSession(configuration(所有配置信息), executor(执行sql的执行器), autoCommit);:先根据配置文件(包含了全局配置文件和映射配置文件)初始化一个对象Configuration(这里对象里包含了所有配置文件里的标签信息,这里包含的每个。原创 2024-06-16 19:17:39 · 787 阅读 · 0 评论 -
Mybatis调用存储过程
在Mapper接口里创建方法,和普通的查询数据方法没区别。原创 2024-06-15 14:28:15 · 172 阅读 · 1 评论 -
Mybatis做批量操作
动态标签foreach,做过批量操作,但是foreach只能处理记录数不多的批量操作,数据量大了后,先不说效率,能不能成功操作都是问题,所以这里讲一讲Mybatis正确的批量操作方法:在获取opensession对象的时候,我们可以传入参数,告诉Mybatis我要批量操作测试批量插入10000条记录原创 2024-06-15 14:24:47 · 1047 阅读 · 0 评论 -
Mybatis做批量操作
foreach只能处理记录数不多的批量操作,数据量大了后,先不说效率,能不能成功操作都是问题,所以这里讲一讲Mybatis正确的批量操作方法。原创 2024-06-13 15:41:32 · 125 阅读 · 0 评论 -
Mybatis的分页插件
/PageInfo包含了非常全面的分页属性 assertEquals(1, page.getPageNum());原创 2024-06-13 15:39:19 · 266 阅读 · 0 评论 -
Bybatis动态SQL的绑定和公共sql语句片段
讲到这里,就单纯的Mybatis的基本使用的知识点,基本讲完了,也就是说凭着前面讲过的知识点,你就可以将Mybatis用起来了,但是实际上想要真正在项目开发上用好Mybatis需要的知识点还有很多,比如它的第三方插件通用Mapper,增强工具插件mybatis-plus,分页插件Mybatis_PageHelper,调用存储过程,和spring框架的整合,根据特殊的项目需要编写自己的插件,还有官方提供的自动生成xml和pojo类的Mybatis Generator工具等等,这些知识点。原创 2024-06-12 16:52:54 · 309 阅读 · 1 评论 -
Mybatis-动态SQL的绑定和公共sql语句片段
讲到这里,就单纯的Mybatis的基本使用的知识点,基本讲完了,也就是说凭着前面讲过的知识点,你就可以将Mybatis用起来了,但是实际上想要真正在项目开发上用好Mybatis需要的知识点还有很多,比如它的第三方插件通用Mapper,增强工具插件mybatis-plus,分页插件Mybatis_PageHelper,调用存储过程,和spring框架的整合,根据特殊的项目需要编写自己的插件,还有官方提供的自动生成xml和pojo类的Mybatis Generator工具等等,这些知识点。原创 2024-06-12 01:21:08 · 221 阅读 · 2 评论 -
Mybatis-动态SQL内置参数
这个内置参数是接口方法传过来的参数的整体的应用,两种情况,一是如果接口方法传来的是单个参数,_parameter就是这个单参数的值,另一种情况是接口方法传来了多个参数的时候会被封装为一个map对象,_parameter就是这个map对象的引用变量。①前面为了适应多数据库查询,我们在写sql的select语句的时候,每个数据库对应写一个单独的标签,然后用databaseId来指定它所属数据库,现在用_databaseId内置参数和动态sql结合,我们就可以只写一个标签。原创 2024-06-12 01:17:15 · 316 阅读 · 0 评论 -
Mybatis-使用缓存的配置总结
false:哪怕上面1和2开启了二级缓存,二级缓存在这个select也会失效,查false(默认):如果在查询标签上把它设置为true,等于禁用所有缓存。增改删true(默认):执行增改删操作后,刷新缓存,把原来的缓存干掉,true(默认):上面1和2开启二级缓存后,二级缓存生效。STATEMENT:如果设置为这里,相当于关闭一级缓存。注意这个设置有点特殊,干掉的缓存包括一、二级缓存。false:关闭二级缓存,但一级缓存不受影响。没配置有:关闭二级缓存,一级缓存不受影响。ture(默认):开启二级缓存,原创 2024-06-11 17:59:32 · 184 阅读 · 0 评论 -
【Mybatis】关联查询的对象是集合的处理
前面我们假设的是一个用户只能绑定一个角色,但实际上权限管理模型中,用户和角色之间是多对多的关系,也就是说,一个用户可以有多个角色与之绑定,所以在User对象中,角色的属性就必须是一个集合。把前面的三表联合查询,变量两段,先查出user对象,然后在根据user_id查询出对应的角色list集合。原创 2024-05-30 13:48:37 · 230 阅读 · 0 评论 -
【Mybatis】在分步查询的基础上配置懒加载
Mybatis作为一个优秀的ORM框架当然也支持懒加载,和Hibernate不同是,它默认情况下是禁止了懒加载的,要使用懒加载需要手动的开启,开启的方法就是配置两个全局变量:原创 2024-05-30 13:43:02 · 201 阅读 · 0 评论 -
【Mybatis】映射文件中#{}里的其他属性
表示:如果这个字段为null,对应的数据类型也是null,oracle就能识别了。解决办法在对应的接收参数的#{}里设置jdbcType属性值为NULL。原创 2024-05-29 02:49:08 · 320 阅读 · 0 评论 -
【Mybatis】映射文件中获取参数的符号#{}和${}的区别
烦是原生的jdbc不能使用占位符的地方,就只能使用它,因为PreparedStatementd中,可以用占位符的地方之后,where条件语句的参数中,其他地方不能用,比用表名称,order by 排序字段,这些地方是不能用?在xml映射文件中获取参数的符号都是用的#{}的方式,其实Mybatis还支持另一种符号来接收传递过来的参数值,就是${},他们是区别就在与底层使用jdbc的statement不一样。反应在sql语句的异同就是用不用。原创 2024-05-29 02:45:50 · 289 阅读 · 0 评论 -
Mybatis-全局配置文件多数据库支持
这个工作,将已经完成的应用上修改,工作量就有点大了,所以我前面说mybatis灵活,但它是半自动ORM框架,所以夸数据库上麻烦一些!就这么简单到变态,其他什么都不用更改,更换底层使用的数据库就完成了!2.在mapper映射文件里,为每条sql语句标注属于哪个数据产品的。3.hibernate.cfg.xml中的数据库方言换了。4.mapping映射文件中的主键自增长策略换了。3.在全局配置文件中为每个数据库配置一个环境。2.spring.xml中把相应的值换了。1.在全局配置文件中配置数据库厂商标记。原创 2024-05-20 20:07:41 · 210 阅读 · 0 评论 -
【Java】spring+springmvc+hibernate最完整整合配置教程
【Java】spring+springmvc+hibernate最完整整合配置教程。SpringMVC只扫描Controller和ControllerAdvice。Spring排除扫描Controller和ControllerAdvice。原创 2024-04-17 04:21:28 · 409 阅读 · 0 评论 -
【Java】Spring的概述
举例来说,在之前的操作中,比方说有一个类,我们想要调用类里面的方法(不是静态方法),就要创建类的对象,使用对象调用方法实现。对于Spring来说,Spring创建对象的过程,不是在代码里面实现的,而是交给Spring来进行配置实现的。首先轻量级:轻量级不是指Spring框架的模块少,数量很轻,这里的轻量级是指Spring框架的非侵入性,意思是说开发应用中的对象可以不必依赖Spring的API类。Spring就是一个大工厂,可以将所有对象的创建和依赖关系的维护,交给Spring管理。为什么用Spring。原创 2024-04-15 02:55:29 · 348 阅读 · 1 评论 -
【Java】maven传递依赖冲突解决
传递依赖可能会产生冲突: 联系着上面, 新导入一个jar包D.jar, D依赖C.jar, 但是B依赖的1.1版本, 而D依赖的是1.2版本, 这时候C这个jar包的两个版本, 如果同时被Maven导入工程, 冲突就出现了!A.jar 依赖 B.jar, B.jar 依赖 C.jar, 这个时候我们就说B是A的直接依赖, C是A传递依赖;知道B在A项目中的scope,那么怎么知道C在A中的scope呢?否则A依赖C,C的scope继承于B的scope。直接依赖的优先级别要高于传递依赖。原创 2024-04-08 21:41:15 · 399 阅读 · 0 评论