数据库连接池druid和maven和Lombok(用于@Data)
数据库连接池
连接断开每一次都是资源的浪费
数据库连接池是个容器,负责分配、管理数据库连接(Connection)
它允许应用程序重复使用一个现有的数据库连接,而不是再重新建立一个
释放空闲时间超过最大空闲时间的连接,来避免因为没有释放连接而引起的数据库连接遗漏
连接池最常用的就是druid和Hikari(springboot默认)
Druid (德鲁伊)
Druid连接池是阿里巴巴开源的数据库连接池项目
功能强大,性能优秀,是]ava语言最好的数据库连接池之一
DruidDemo
//导入jar包 druid.jar
//定义配置文件
psvm
//
Properties prop = new Properties();
prop.Load(new FileInputStream("jdbc-demo/src/druid.properties"));
//4. 获取连接池对象
DataSource dataSource = DruidDataSourceFactory.credteDataSource(prop);
//5.获取数据库连接 Connection
Connection connection = dataSource.getConnection():
System.out.println(connection);
System.out.println(System.getProperty("user.dir")); //打印本地目录路径
**Maven**
按住shift点右键。获取shell窗口
配阿里云私服,就不必去中央仓库。下载maven会很快。
maven项目mvn compile编译项目
应该编辑setting文件来修改本地仓库的位置path/conf那个
**配置环境**
Maven home path:选择本地maven
User settings file:选择本地maven的conf的setting.xml
Local repository:选择本地仓库的位置
**pom文件依赖坐标**
groupld:定义当前Maven项目隶属组织名称 (通常是域名反写,例如: comitheima)
artifactld: 定义当前Maven项目名称 (通常是模块名称,例如 order-service、goods-service)
version:定义当前项目版本最
**插件**
导入maven项目add maven project选择pom.xml view->appearance->tool window Bars
maven-helper插件
建议使用jdk11版本,高版本自动向下一致
**log back依赖**
maven官网搜索logback日志依赖
通过指定坐标,重点是指定artifactid来指定模块名称来依赖传递。这里可以理解为继承
pom文件右键->diagrams->show dependencies
**排除依赖**
A依赖B,B依赖jar,默认jar传递给A。 如果说A不需要jar,可以主动断开依赖资源/用exclusions><exclusion标签框起来这个依赖坐标就可以隔离了
排除依赖的时候是不需要指定版本的,也就只有groupid和artifactid
**依赖范围scope**
关于依赖配置如果有scope>test<就表示只生效于测试环境中
scope依赖范围有6种依赖范围
一般只用四种compile、test、provided、runtime
一般junit作用范围是test
****
**Maven 常用命令**
mvn 命令
maven的生命周期阶段clean。compile。test。package。install
compile : 编译clean:清理test: 测试package:打包install: 安装
在同一套生命周期中,当运行后面的阶段时,前面的阶段都会运行,但是运行install前面的clean不会运行。别的不说就clean特殊
Lombok
依赖,不用指定版本号、因为springboot的父工程已经继承了Lombok已经集成,对他依赖进行了统一的管理
@Getter/@Setter
@ToString
@EqualsAndHashCode
@Data
提供了更综合的生成代码功能(@Getter+ @Setter + @ToString + @EqualsAndHashCode)
@NoArgsConstructor
为实体类生成无参的构造器方法
@AllArgsConstructor全参数构造
为实体类生成除了static修饰的字段之外带有各参数的构造器方法