Spring boot
可以快速的构建Spring项目 免去大部分配置
SpringBoot中的几个含义定义
Bean: Spring IOC 容器管理的对象 是大多数应用程序的逻辑源码
Spring Bean的定义和管理:使用构造型 @Component 注释你的类
用@Bean:这个注解要加在方法上,然后返回值是要实例化的类。
如:1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17@Configuration
class Test{
@Autowired
TestClass testClass;
@Bean
public TestClass getTestClass(){
return new TestClass();
}
}
class TestClass{ }@Import:可以直接导入想要被Spring Boot管理的类
如:1
2
3
4
5
6
7
8
9
10@Configuration
@Import(TestClass.class)
class Test{
@Autowired
TestClass testClass;
}
class TestClass{ }
SpringMVC: 实现javaWeb SpringMVC底层就是Servlet,SpringMVC就是对Servlet进行深层次的封装。
Mybatis:持久层框架 免除了JDBC代码的重复性,通过提供dao层(数据访问层,实现对数据库增删改查等操作),将业务逻辑和数据访问逻辑分离
- 用法实例:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
public class User {
// TableID 标识主键(一定要标识主键,不然会影响更新和删除)
// IdType.NONE:不使用任何主键生成策略。
// IdType.INPUT:用户输入,适用于手动输入主键值。
// IdType.ID_WORKER:全局唯一ID,适用于分布式系统。
// IdType.UUID:全局唯一UUID,适用于分布式系统。
// IdType.ID_WORKER_STR:字符串类型的全局唯一ID,适用于分布式系统。
@TableId(value = "账号", type = IdType.AUTO)
private String userName;
// TableField 标识列
// 当exist = true(默认值)时,表示该实体类属性对应于数据库表中的一个字段12。
// 当exist = false时,表示该实体类属性在数据库表中没有对应的字段。这在你的实体类中有一些属性需要在Java代码中使用,但并不需要映射到数据库表时非常有用。
@TableField(value = "密码",exist = true)
private String passWord;
@TableField(value = "是否为管理员")
private String isAdmin;
}
@Mapper // 标记一个Mapper接口 将他们注册为Bean 这样就可以用 @Autowired来使用Mapper接口
public interface UserDataChange extends BaseMapper<User> {
// 继承BaseMapper接口 <User>是我的实体类 对应着数据库里面的一个表
// BaseMapper接口里面封装好了常用的数据库操作方法(增删改查)
}
Lombook: java开发的一种组件 可以帮助你快速的构建getter,setter,equals等方法
- 以下是Lombok的一些主要特性:
减少模板代码:Lombok可以用@Data注解自动生成getter、setter、equals、hashCode、toString等方法,从而减少模板代码。
支持链式编程:通过@Builder注解,Lombok可以为类生成builder API,从而支持链式编程。
简化变量日志声明:通过@Log等注解,Lombok可以为类自动生成日志变量。
自动生成构造函数:通过@NoArgsConstructor(无参构造)、@RequiredArgsConstructor、@AllArgsConstructor(全参构造)等注解,Lombok可以为类生成构造函数
- 以下是Lombok的一些主要特性:
Pojo:
POJO,全称为Plain Old Java Object,简单的说就是普通的Java对象。它没有继承任何类,也没有实现任何接口,更没有被其他框架侵入。
以下是POJO的一些主要特性:- 简单:POJO是简单的Java对象,它不需要继承或实现任何特定的类或接口。
- 灵活:由于POJO没有被任何框架侵入,因此它具有很高的灵活性,可以任意扩展,从而胜任多个场合。
- 易于测试:POJO让开发者可以专注于业务逻辑和脱离框架的单元测试。
- 无框架依赖:POJO并不需要继承框架的类或实现其接口,开发者能够极其灵活地搭建继承结构和建造应用。
SpringBoot的四个软件包(基于面向切面编程):
- Controller包: 接收web请求处理
- Service包: 业务层 (实现对数据库数据处理和提供需求数据)
- dao包: 抽象数据库行为(增删改查 )
- pojo包: 把数据抽象为类 供dao操作