首页 > 其他分享 >MyBatis、LogBack XML文件模板

MyBatis、LogBack XML文件模板

时间:2023-02-17 12:24:50浏览次数:50  
标签:XML MM dd yyyy MyBatis LogBack 模板

xxxMapper模板

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
  PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
  "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.mybatis.example.BlogMapper">
  <select id="selectBlog" resultType="Blog">
    select * from Blog where id = #{id}
  </select>
</mapper>

MyBatis核心配置文件模板

```
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
  PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
  "http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
  <environments default="development">
    <environment id="development">
      <transactionManager type="JDBC"/>
      <dataSource type="POOLED">
        <property name="driver" value="${driver}"/>
        <property name="url" value="${url}"/>
        <property name="username" value="${username}"/>
        <property name="password" value="${password}"/>
      </dataSource>
    </environment>
  </environments>
  <mappers>
    <mapper resource="org/mybatis/example/BlogMapper.xml"/>
  </mappers>
</configuration>

LogBack模板

<?xml version="1.0" encoding="UTF-8"?>
<!-- scan:当此属性设置为true时,配置文件如果发生改变,将会被重新加载,默认值为true。 scanPeriod:设置监测配置文件是否有修改的时间间隔,如果没有给出时间单位,默认单位是毫秒当scan为true时,此属性生效。默认的时间间隔为1分钟。 
	debug:当此属性设置为true时,将打印出logback内部日志信息,实时查看logback运行状态。默认值为false。 -->
<configuration scan="false" scanPeriod="60 seconds" debug="false">
	<!-- 定义日志的根目录 value表示的是打印到哪里的-->
	<property name="LOG_HOME" value="${catalina.base}/logs/" />
	<!-- 定义日志文件名称  value表示的是log的名称-->
	<property name="appName" value="u-plan"></property>
	<!-- ch.qos.logback.core.ConsoleAppender 表示控制台输出 -->
	<appender name="stdout" class="ch.qos.logback.core.ConsoleAppender">
		<Encoding>UTF-8</Encoding>
		<!-- 日志输出格式:%d表示日期时间,%thread表示线程名,%-5level:级别从左显示5个字符宽度 %logger{50} 表示logger名字最长50个字符,否则按照句点分割。 
			%msg:日志消息,%n是换行符 -->
		<layout class="ch.qos.logback.classic.PatternLayout">
			<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
		</layout>
	</appender>

	<!-- 滚动记录文件,先将日志记录到指定文件,当符合某个条件时,将日志记录到其他文件 -->
	<appender name="appLogAppender"
		class="ch.qos.logback.core.rolling.RollingFileAppender">
		<Encoding>UTF-8</Encoding>
		<!-- 指定日志文件的名称 -->
		<file>${LOG_HOME}/${appName}.log</file>
		<!-- 当发生滚动时,决定 RollingFileAppender 的行为,涉及文件移动和重命名 TimeBasedRollingPolicy: 
			最常用的滚动策略,它根据时间来制定滚动策略,既负责滚动也负责出发滚动。 -->
		<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
			<!-- 滚动时产生的文件的存放位置及文件名称 %d{yyyy-MM-dd}:按天进行日志滚动 %i:当文件大小超过maxFileSize时,按照i进行文件滚动 -->
			<fileNamePattern>${LOG_HOME}/${appName}-%d{yyyy-MM-dd}-%i.log
			</fileNamePattern>
			<!-- 可选节点,控制保留的归档文件的最大数量,超出数量就删除旧文件。假设设置每天滚动, 且maxHistory是365,则只保存最近365天的文件,删除之前的旧文件。注意,删除旧文件是, 
				那些为了归档而创建的目录也会被删除。 -->
			<MaxHistory>30</MaxHistory>
			<!-- 当日志文件超过maxFileSize指定的大小是,根据上面提到的%i进行日志文件滚动 注意此处配置SizeBasedTriggeringPolicy是无法实现按文件大小进行滚动的,必须配置timeBasedFileNamingAndTriggeringPolicy -->
			<timeBasedFileNamingAndTriggeringPolicy
				class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
				<maxFileSize>512MB</maxFileSize>
			</timeBasedFileNamingAndTriggeringPolicy>
		</rollingPolicy>
		<!-- 日志输出格式:%d表示日期时间,%thread表示线程名,%-5level:级别从左显示5个字符宽度 %logger{50} 表示logger名字最长50个字符,否则按照句点分割。 
			%msg:日志消息,%n是换行符 -->
		<layout class="ch.qos.logback.classic.PatternLayout">
			<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [ %thread ] - [ %-5level ] [%logger{50} : %line ] - %msg%n</pattern>
		</layout>
	</appender>

	<!-- logger主要用于存放日志对象,也可以定义日志类型、级别 name:表示匹配的logger类型前缀,也就是包的前半部分 level:要记录的日志级别,包括 
		TRACE < DEBUG < INFO < WARN < ERROR additivity:作用在于children-logger是否使用 rootLogger配置的appender进行输出,false:表示只用当前logger的appender-ref,true:表示当前logger的appender-ref和rootLogger的appender-ref都有效 -->
	<!-- hibernate logger -->
	<logger name="org.hibernate" level="error" />
	<!-- Spring framework logger -->
	<logger name="org.springframework" level="error" additivity="false"></logger>
	<logger name="com.fairyland" level="info" additivity="true">
		<appender-ref ref="appLogAppender" />
	</logger>

	<!-- root与logger是父子关系,没有特别定义则默认为root,任何一个类只会和一个logger对应, 要么是定义的logger,要么是root,判断的关键在于找到这个logger,然后判断这个logger的appender和level。 -->
	<root level="info">
		<appender-ref ref="stdout" />
		<appender-ref ref="appLogAppender" />
	</root>
</configuration>

标签:XML,MM,dd,yyyy,MyBatis,LogBack,模板
From: https://www.cnblogs.com/lkj1223456/p/17129730.html

相关文章

  • MybatisPlus之LambdaQueryWrapper简单用法
    简单查询(推荐)LambdaQueryWrapper<User>wrapper=newLambdaQueryWrapper<>();wrapper.eq(User::getUserId,id);wrapper.like(User::getUserName,userName);List......
  • dom4j解析和生成xml文件
    解析xml大致步骤:1:创建SAXReader;2:使用SAXReader解析指定的xml文档信息,并返回对应Document对象。Document对象中就包含了该xml文中的所有信息以及结构了。3:根据文档......
  • python处理xml文件
    #pipinstallpyyaml环境里先安装包importxml.dom.minidomdom=xml.dom.minidom.parse('config.xml')root=dom.documentElementdefxml(suser):suser=......
  • 二、MyBatis的Dao层实现方式
    传统开发方式编写UserDao接口publicinterfaceUserDao{ List<User>findAll()throwsIOException;}编写UserDaoImpl实现publicclassUserDaoImplimplement......
  • MyBatis_基本使用
    MyBatis是一款优秀的持久层框架,它支持自定义SQL、存储过程以及高级映射。MyBatis免除了几乎所有的JDBC代码以及设置参数和获取结果集的工作。 一、导入jar包并......
  • MyBatis入门操作
    MyBatis的简介原始jdbc操作(查询数据)原始jdbc操作(插入数据)原始jdbc操作的分析原始jdbc开发存在的问题如下:①数据库连接创建、释放频繁造成系统资源浪费从而影响系统......
  • SpringBoot集成MybatisPlus
    SpringBoot集成MybatisPlus一、依赖<properties><mybatis.plus.version>3.4.0</mybatis.plus.version></properties> <dependencies> ......
  • MyBatis-Plus获取刚刚新建数据的自增id(重点在最后两张图片)
    实体类:User  数据交互类:UserDao  Service类:UserTableService   Service实现类:UserTableImpl    Controller层(重点在最后一段代码)  完成......
  • Mybatis逆向工程
    Mybatis逆向工程Mybatis框架需要:实体类,自定义Mapper接口,Mapper.xml传统的开发中上述的三个组件都需要开发者手动创建,逆向工程可以帮助开发者自动创建三个组件,提高效率......
  • MyBatis中的resultMap
    场景查询论坛项目首页的帖子列表首先需要从MySQL数据库中多表查询到帖子信息和作者信息,并得到一个List,为了更规范我定义了一个对象DiscussPostDTO来定义每一项但......