Java
_CoolWind
大学生
展开
-
MyBatis学习笔记——MyBatis的映射文件
MyBatis 的真正强大在于它的映射语句,这是它的魔力所在。由于它的异常强大,映射器的 XML 文件就显得相对简单。如果拿它跟具有相同功能的 JDBC 代码进行对比,你会立即发现省掉了将近 95% 的代码。MyBatis 为聚焦于 SQL 而构建,以尽可能地为你减少麻烦。输入映射Parameter指定输入参数的java类型,可以使用别名或者类的全限定名。它可以接收简单类型,POJO对象、Ha...原创 2019-08-18 19:16:34 · 151 阅读 · 0 评论 -
MyBatis学习笔记——关联查询
关联查询一对一 是通过在任意一方的主键,引入对方主键作为外键来实现的,就是说主键与外键为同一字段一对多 是通过在“多”的一方,添加“一”的一方的主键作为外键多对多 是通过一张中间关系表,引入两张表的主键作为外键,两个主键成为联合主键或使用新的字段作为主键user和orders:User 与orders:一个用户可以创建多个订单,一对多orders和order...原创 2019-08-20 17:05:59 · 222 阅读 · 0 评论 -
MyBatis学习笔记——Mybatis延迟加载
Mybatis延迟加载延迟加载延迟加载又叫懒加载,也叫按需加载。也就是说先加载主信息,在需要的时候,再去加载从信息。在mybatis中,resultMap标签 的association标签和collection标签具有延迟加载的功能。默认情况下是即时加载,如需要延迟加载,则需要在全局配置文件中配置<!--配置允许懒加载--> <settings> ...原创 2019-08-20 18:50:01 · 119 阅读 · 0 评论 -
MyBatis学习笔记—— javatype和ofType
javatype和ofTypejavatype和ofType 都是用来指明对象类型, 区别在于使用的场合不一样,javaType是在指定pojo属性类型使用,也就是一对一映射的时候使用,ofType指定是当对象需要Collection进行list集合映射对象的时候使用,也就是一对多映射的时候使用...原创 2019-08-20 18:56:34 · 472 阅读 · 0 评论 -
《深入理解mybatis原理》 MyBatis的一级缓存实现详解 及使用注意事项(转)
0.写在前面 MyBatis是一个简单,小巧但功能非常强大的ORM开源框架,它的功能强大也体现在它的缓存机制上。MyBatis提供了一级缓存、二级缓存 这两个缓存机制,能够很好地处理和维护缓存,以提高系统的性能。本文的目的则是向读者详细介绍MyBatis的一级缓存,深入源码,解析MyBatis一级缓存的实现原理,...转载 2019-08-22 08:26:53 · 113 阅读 · 0 评论 -
《深入理解mybatis原理》 MyBatis的二级缓存的设计原理(转)
MyBatis的二级缓存是Application级别的缓存,它可以提高对数据库查询的效率,以提高应用的性能。本文将全面分析MyBatis的二级缓存的设计原理。1.MyBatis的缓存机制整体设计以及二级缓存的工作模式 如上...转载 2019-08-22 08:53:34 · 74 阅读 · 0 评论 -
MSql共享锁(Lock in share mode)和排他锁(for update)
共享锁(Lock in share mode)允许其他事务也增加共享锁读取不允许其他事务增加排他锁当事务同时增加共享锁的时候,事务的更新必须等待先执行的事务提交之后才行,如果同时并发太大很容易造成死锁共享锁,事务都能加,都能读取,但修改是唯一的,必须等待前一个事务提交之后才能执行。排他锁事务之间不允许其他排他锁或共享锁读取,不允许修改一次只有一个排他锁执行提交之后,其他事务才可...原创 2019-08-31 19:24:06 · 452 阅读 · 0 评论 -
Spring中bean的生命周期
Spring中Bean的生命周期首先说一下Servlet的生命周期:实例化,初始init,接收请求service,销毁destroy;Spring上下文中的Bean生命周期也类似,如下:(1)实例化Bean:对于BeanFactory容器,当客户向容器请求一个尚未初始化的bean时,或初始化bean的时候需要注入另一个尚未初始化的依赖时,容器就会调用createBean进行实例化。对于Ap...转载 2019-08-31 19:41:35 · 81 阅读 · 0 评论 -
JDK8 集合按某字段排序
JDK8 集合按某字段排序 List list = new ArrayList(); list.sort(Comparator.comparing("排序的字段"));//升序 list.sort(Comparator.comparing("排序的字段").reversed());//降序 list.sort(Comparator.comparing("字段1").thenCo...原创 2019-09-25 14:06:30 · 3266 阅读 · 0 评论 -
Mybatis学习笔记——逆向工程
逆向工程mybatis是目前很流行的持久层框架,其逆向工程更是大大缩减了我们的开发时间。所谓mybatis逆向工程,就是mybatis会根据我们设计好的数据表,自动生成pojo、mapper以及mapper.xml。mybatis逆向工程的下载github下载地址新建一个Java项目,导入Mybatis逆向工程的包和数据库驱动包编写配置文件 generator.xml<?xml...原创 2019-08-24 09:52:10 · 155 阅读 · 0 评论 -
MyBatis学习笔记——Mybatis与hibernate的区别(转载)
Mybatis与hibernate的区别第一方面:开发速度的对比就开发速度而言,Hibernate的真正掌握要比Mybatis来得难些。Mybatis框架相对简单很容易上手,但也相对简陋些。个人觉得要用好Mybatis还是首先要先理解好Hibernate。比起两者的开发速度,不仅仅要考虑到两者的特性及性能,更要根据项目需求去考虑究竟哪一个更适合项目开发,比如:一个项目中用到的复杂查询基本没有...转载 2019-08-19 16:44:36 · 111 阅读 · 0 评论 -
MyBatis学习笔记——MyBatis的Dao编写(mapper代理方式实现)
MyBatis的Dao编写(mapper代理方式实现)Mapper代理的开发方式,程序员只需要编写mapper接口(相当于dao接口)即 可。Mybatis会自动的为mapper接口生成动态代理实现类。不过要实现mapper代理的开发方式,需要遵循一些开发规范。开发规范mapper接口的全限定名要和mapper映射文件的namespace的值相同。mapper接口的方法名称要和ma...原创 2019-08-16 20:03:18 · 175 阅读 · 0 评论 -
MyBatis学习笔记——MyBatis入门(一)
创建一个简单项目并对数据库进行增删改查操作下载Mybatis下载地址: Mybatis创建一个简单项目导包导入mybatis目录下的包导入mysql连接驱动和日志包添加log4j.propertiesmybatis使用的日志包是log4j,所以在src下添加一个log4j.properties配置文件# Global logging configuratio...原创 2019-08-16 18:20:27 · 142 阅读 · 0 评论 -
解决Tomcat7中文乱码问题
使用tomcat7,post和get请求会出现中文乱码的为问题,spring框架下提供了一个CharacterEncodingFilter类来解决post中文乱码的问题在web.xml里配置过滤器<filter> <filter-name>characterEncodingFilter</filter-name> <filter-class...原创 2019-08-05 10:35:13 · 5737 阅读 · 0 评论 -
Spring学习笔记day04——AOP(二)
AspectJ简介AspectJ是一个基于Java语言的AOP框架Spring2.0以后新增了对AspectJ切点表达式支持@AspectJ 是AspectJ1.5新增功能,通过JDK5注解技术,允许直接在Bean类中定义切面新版本Spring框架,建议使用AspectJ方式来开发AOP主要用途:自定义开发AspectJ通知类型aop联盟定义通知类型,具有特性接口,必须实现,从而...原创 2019-07-26 19:27:22 · 122 阅读 · 0 评论 -
Spring学习笔记day03——AOP(一)
AOPAOP概述在软件业,AOP为Aspect Oriented Programming的缩写,意为:面向切面编程,通过预编译方式和运行期动态代理实现程序功能的统一维护的一种技术。AOP是OOP(面向对象编程)的延续,是软件开发中的一个热点,也是Spring框架中的一个重要内容,是函数式编程的一种衍生范型。利用AOP可以对业务逻辑的各个部分进行隔离,从而使得业务逻辑各部分之间的耦合度降低...原创 2019-07-25 17:53:18 · 156 阅读 · 0 评论 -
Spring学习笔记day02——注解注入
注解注入注解是一个类,使用@注解名称开发中使用注解取代xml配置文件@Component@component取代<bean class="">@Component(“id”)取代<bean id="" class="">web开发,提供三个@Component注解衍生注解@Respository(“名称”) :dao层@Service(“名称”):s...原创 2019-07-25 09:44:45 · 153 阅读 · 0 评论 -
Spring学习笔记day01——Spring入门
Spring学习Spring介绍##1.1Spring概述Spring是一个开源框架,Spring是于2003 年兴起的一个轻量级的Java 开发框架,由Rod Johnson 在其著作Expert One-On-One J2EE Development and Design中阐述的部分理念和原型衍生而来。它是为了解决企业应用开发的复杂性而创建的。Spring使用基本的JavaBean来完成...原创 2019-07-24 22:36:30 · 256 阅读 · 0 评论 -
MyBatis学习笔记——动态SQL
站位原创 2019-08-19 16:02:12 · 169 阅读 · 0 评论 -
Non-terminating decimal expansion; no exact representable decimal result
最近在需求中需要用到精度比较高的浮点数,使用BigDecimal类来处理在使用除法的时候遇到了Non-terminating decimal expansion; no exact representable decimal result这个错误,经过网上查阅资料解决了这个问题错误是 无法结束的除法表达式;没有精确的除结果,原因是被除数无法被除尽,类似10/3 = 3.33333······...转载 2019-09-30 11:05:20 · 533 阅读 · 0 评论