池化思想的目的就是通过复用对象,以减少因创建和释放对象带来的资源消耗,进而提升系统性能
Mapper将接口交给springboot管理
优点
资源重用更佳。
由于数据库连接得到复用,减少了大量创建和关闭连接带来的开销,也大大减少了内存碎片和数据库临时进程、线程的数量,使得整体系统的运行更加平稳。
系统调优更简便。
使用了数据库连接池以后,由于资源重用,大大减少了频繁关闭连接的开销,大大降低了TIME_WAIT的出现频率。
系统响应更快。
数据库连接池在应用初始化的过程中一般都会提前准备好一些数据库连接,业务请求可以直接使用已经创建的连接,而不需要等待创建连接的开销。初始化数据库连接配合资源重用,使得数据库连接池可以大大缩短系统整体响应时间。
连接管理更灵活。
数据库连接池作为一款中间件,用户可以自行配置连接的最小数量、最大数量、最大空闲时间、获取连接超时间、心跳检测等。另外,用户也可以结合新的技术趋势,增加数据库连接池的动态配置、监控、故障演习等一系列实用的功能。
日志
1)项目中日志用的API是SLF4J
2)使用API的目的是为了定义日志的规范-程序中建议耦合规范-目的是提高可扩展性
3)API的实现用的是ch.qos.logback.classic.logger
4)为什么不用log4j:异步情况logback性能比它好,spring内置为logback
5)项目日志大部分的情况下是异步,目的是为了提高用户体验
日志的级别
分为OFF、FATAL、ERROR、WARN、INFO、DEBUG、TRACE、ALL或者自己定义的级别。Log4j建议只使用四个级别,优先级 从高到低分别是 ERROR、WARN、INFO、DEBUG。 日志记录器(Logger)的行为是分等级的:
日志记录器(Logger)是日志处理的核心组件。log4j具有5种正常级别(Level)。:
1.static Level DEBUG :
DEBUG Level指出细粒度信息事件对调试应用程序是非常有帮助的。
2.static Level INFO
INFO level表明 消息在粗粒度级别上突出强调应用程序的运行过程。
3.static Level WARN
WARN level表明会出现潜在错误的情形。
4.static Level ERROR
ERROR level指出虽然发生错误事件,但仍然不影响系统的继续运行。
5.static Level FATAL
FATAL level指出每个严重的错误事件将会导致应用程序的退出。
另外,还有两个可用的特别的日志记录级别:
1.static Level ALL
ALL Level是最低等级的,用于打开所有日志记录。
2.static Level OFF
OFF Level是最高等级的,用于关闭所有日志记录。
log的主要节点
log配置文件主要包含三个节点:Logger、Appender、Layout。
Logger:配置打印日志的级别,输出日志的程序范围,以及关联的Appender。
Appender:配置日志的输出形式,输出策略等。
Layout:配置每条日志的内容格式。
日志实现代
private static final logger log = loggerFactory.getLogger(测试类.class)
@Override
long t1 = System.currentTimeMillis();
List<Goods> list =goodsDao.findGoods();
long t2 = System.currentTimeMillis();
log.info(findGoods()->t2-t1={},t2-t1);
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。