Spring配置

一、别名

1
2
<!--别名,如果添加了别名,我们也可以使用别名获取到这个对象-->
<alias name="user" alias="userNew"/>

二、Bean的配置

1
2
3
4
5
6
7
8
<!--
id:bean的唯一标识符,也就是相当于我们学的对象名
class:bean对象所对应的全限定名:包名+类名
name:也是别名,而且name可以同时取多个别名
-->
<bean id="userT" class="com.kuang.pojo.UserT" name="user2 u2,u3;u4">
<property name="name" value="黑心白莲"/>
</bean>
阅读全文 »

HelloSpring

一、新建maven项目,编写实体类。

  1. 导包
1
2
3
4
5
6
<!-- https://mvnrepository.com/artifact/org.springframework/spring-webmvc -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>5.3.7</version>
</dependency>
阅读全文 »

IOC理论推导

IOC本质

控制反转IoC(Inversion of Control),是一种设计思想,DI(依赖注入) 是实现IoC的一种方法,也有人认为DI只是IoC的另一种说法。没有IoC的程序中,我们使用面向对象编程,对象的创建与对象间的依赖关系完全硬编码在程序中,对象的创建由程序自己控制,控制反转后将对象的创建转移给第三方,个人认为所谓控制反转就是:获得依赖对象的方式反转了。

阅读全文 »

iTerm2配置和美化

前言

近日换了新电脑,软件和环境需要重新配置,就关于iTerm2的配置和美化整理一份文章出来,方便自己之后的工作。

阅读全文 »

一、Spring简介

官方文档

  • Spring:春天—>给软件行业带来春天
  • 2002年首次推出spring雏形:interface 21架构
  • spring理念:使现有的技术更加容易使用,本身是一个大杂烩,整合了现有的技术框架!解决企业应用开发的复杂性。
  • SSH:Struct2+Spring+Hibernate
  • SSM:SpringMVC+Spring+Mybatis
阅读全文 »

Mybatis缓存

一、缓存

1. 什么是缓存【Cache】?

  • 存在内存中的临时数据
  • 将用户经常查询的数据放在缓存(内存)中,用户去查询数据就不用从磁盘上(关系型数据库数据文件)查询,从缓存中查询,从而提高查询效率,解决了高并发系统的性能问题

2. 为什么使用缓存?

  • 减少和数据库交互的次数,减少系统开销,提高系统的效率

3. 什么样的数据能使用缓存?

  • 经常查询并且不经常使用的数据
阅读全文 »

动态SQL详解

什么是动态SQL:动态SQL就是指根据不同的条件生成不同的SQL语句

1
2
3
4
5
如果你之前用过 JSTL 或任何基于类 XML 语言的文本处理器,你对动态 SQL 元素可能会感觉似曾相识。在 MyBatis 之前的版本中,需要花时间了解大量的元素。借助功能强大的基于 OGNL 的表达式,MyBatis 3 替换了之前的大部分元素,大大精简了元素种类,现在要学习的元素种类比原来的一半还要少。
if
choose (when, otherwise)
trim (where, set)
foreach

所谓的动态SQL本质上还是SQL语句,只是我们可以在SQL层面上,去执行逻辑代码。

阅读全文 »

Mybatis的一对多

一、对应关系

比如:一个老师拥有多个学生!对老师而言,就是一对多的关系!

阅读全文 »

Mybatis的多对一

一、对应关系

  • 多个学生,对应一个老师。
  • 对于学生这边而言, 关联: 多个学生关联一个老师。
  • 对于老师而言,集合: 一个老师有很多学生。
阅读全文 »

一、Lombok简介

Lombok是一个可以通过简单的注解形式来帮助我们简化消除一些必须有但显得很臃肿的Java代码的工具,通过使用对应的注解,可以在编译源码的时候生成对应的方法

二、IntelliJ IDEA 使用它的方法

引入lombok的jar包

1
2
3
4
5
6
<!-- https://mvnrepository.com/artifact/org.projectlombok/lombok -->
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.20</version>
</dependency>

三、Lombok的简单使用

  • @Getter / @Setter: 自动生成Getter/Setter方法。把@Getter / @Setter单独放在属性上,则只生成该属性的Getter和Setter。
  • @NoArgsConstructor: 自动生成无参数构造函数。
  • @AllArgsConstructor: 自动生成全参数构造函数。
  • @Data: 自动为所有字段添加@ToString, @EqualsAndHashCode,@Getter方法,为非final字段添加@Setter,和@RequiredArgsConstructor!