Springboot学习三--junit测试,启动类,日志

1,junit测试

	<dependency>
		<groupId>org.springframework.boot</groupId>
		<artifactId>spring-boot-starter-test</artifactId>
		<scope>test</scope>
	</dependency>
	<dependency>
		<groupId>junit</groupId>
		<artifactId>junit</artifactId>
		<scope>test</scope>
	</dependency>

2,JunitTest类

@SpringBootTest(classes=PageHomeController .class)
@RunWith(SpringJUnit4ClassRunner.class)
@WebAppConfiguration
public class JunitTest {
	@Autowired
	private PageHomeController test;
	
	@Test
	public void testJunit() {
		String s = test.junitTest("哩哩啦啦");
		System.out.println(s);
	}
}
@Controller
public class PageHomeController {
	public String junitTest(String values) {
		return values;
	}
}

3,启动类

//@EnableAutoConfiguration
//@ComponentScan("com.yu.controller")
//默认情况扫描当前包以及当前包子包
//@SpringBootApplication(scanBasePackages= {"com.yu.controller"}) 
@SpringBootApplication//组合注解
public class Application {
	public static void main(String[] args) {
		SpringApplication.run(Application.class, args);
	}
}

4,支持Rest风格

@RequestMapping("/req/{msg}")
@ResponseBody
public String testRestful(@PathVariable String msg) {
	
	return "hello:"+msg;
}

如果一个类中返回的都是restful内容可以用@RestController代替@Controller,不用再写@Responsebody

5,默认日志
SpringBoot使用的默认日志框架是Logback,并用INFO级别输出到控制台
7个日志级别从低到高:
TRACE<DEBUG<INFO<WARN<ERROR<FATAL<OFF
设置为WARN,低于WARN的信息不会输出
例子:
logging.level.root=warn(root日志的级别为warn)
logging.level.org.hibernate=ERROR

默认情况下,SpringBoot将日志输出到控制台,不会写到日志文件。如果要编写到控制台以外的日志文件,则需要在application.properties中设置logging.file 或logging.path属性。默认情况下,日志大小达到10MB时会切分一次,产生新的日志文件,默认级别:ERROR、WARN、INFO

logging.level.root=INFO
logging.level.org.org.springframework.web=debug
logging.file=e:\\springboot\\info.log
logging.pattern.console=%d{yyyy/MM/dd-HH:mm:ss} [%thread] %-5level %logger- %msg%n
logging.pattern.file=%d{yyyy/MM/dd-HH:mm} [%thread] %-5level %logger- %msg%n

6,log4j使用
pom

<!-- 排除Logback -->
<dependency>
	<groupId>org.springframework.boot</groupId>
	<artifactId>spring-boot-starter</artifactId>
	<exclusions>
		<exclusion>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-logging</artifactId>
		</exclusion>
	</exclusions>
</dependency>
<!-- 添加log4j依赖 -->
<dependency>
	<groupId>org.springframework.boot</groupId>
	<artifactId>spring-boot-starter-log4j</artifactId>
	<version>1.3.8.RELEASE</version>
</dependency>

log4j.properties

#OFF,systemOut,logFile,logDailyFile,logRollingFile,logMail,logDB,ALL 
log4j.rootLogger=INFO,systemOut,logFile,logDailyFile,logRollingFile,logMail,logDB 

#输出到控制台 
log4j.appender.systemOut= org.apache.log4j.ConsoleAppender 
log4j.appender.systemOut.layout= org.apache.log4j.PatternLayout 
log4j.appender.systemOut.layout.ConversionPattern= [%-5p][%-22d{yyyy/MM/dd HH:mm:ssS}][%l]%n%m%n 
log4j.appender.systemOut.Threshold= DEBUG 
log4j.appender.systemOut.ImmediateFlush= TRUE 
log4j.appender.systemOut.Target= System.out 

#输出到文件 
log4j.appender.logFile= org.apache.log4j.FileAppender 
log4j.appender.logFile.layout= org.apache.log4j.PatternLayout 
log4j.appender.logFile.layout.ConversionPattern= [%-5p][%-22d{yyyy/MM/dd HH:mm:ssS}][%l]%n%m%n 
log4j.appender.logFile.Threshold= DEBUG 
log4j.appender.logFile.ImmediateFlush= TRUE 
log4j.appender.logFile.Append= TRUE 
log4j.appender.logFile.File= E://eclipse/log/log-info.log
log4j.appender.logFile.Encoding= UTF-8 

#按DatePattern输出到文件 
log4j.appender.logDailyFile= org.apache.log4j.DailyRollingFileAppender 
log4j.appender.logDailyFile.layout= org.apache.log4j.PatternLayout 
log4j.appender.logDailyFile.layout.ConversionPattern= [%-5p][%-22d{yyyy/MM/dd HH:mm:ssS}][%l]%n%m%n 
log4j.appender.logDailyFile.Threshold= INFO 
log4j.appender.logDailyFile.ImmediateFlush= TRUE 
log4j.appender.logDailyFile.Append= TRUE 
log4j.appender.logDailyFile.File= E://eclipse/log/log-info.log
log4j.appender.logDailyFile.DatePattern= '.'yyyy-MM-dd-HH-mm'.log' 
log4j.appender.logDailyFile.Encoding= UTF-8 

#设定文件大小输出到文件 
log4j.appender.logRollingFile= org.apache.log4j.RollingFileAppender 
log4j.appender.logRollingFile.layout= org.apache.log4j.PatternLayout 
log4j.appender.logRollingFile.layout.ConversionPattern= [%-5p][%-22d{yyyy/MM/dd HH:mm:ssS}][%l]%n%m%n 
log4j.appender.logRollingFile.Threshold= DEBUG 
log4j.appender.logRollingFile.ImmediateFlush= TRUE 
log4j.appender.logRollingFile.Append= TRUE 
log4j.appender.logRollingFile.File= E://eclipse/log/log-info.log
log4j.appender.logRollingFile.MaxFileSize= 10kb 
log4j.appender.logRollingFile.MaxBackupIndex= 10 
log4j.appender.logRollingFile.Encoding= UTF-8 

#用Email发送日志 
#log4j.appender.logMail= org.apache.log4j.net.SMTPAppender 
#log4j.appender.logMail.layout= org.apache.log4j.HTMLLayout 
#log4j.appender.logMail.layout.LocationInfo= TRUE 
#log4j.appender.logMail.layout.Title= Struts2 Mail LogFile 
#log4j.appender.logMail.Threshold= DEBUG 
#log4j.appender.logMail.SMTPDebug= FALSE 
#log4j.appender.logMail.SMTPHost= SMTP.163.com 
#log4j.appender.logMail.From= xly3000@163.com 
#log4j.appender.logMail.To= xly3000@gmail.com 
#log4j.appender.logMail.Cc= xly3000@gmail.com 
#log4j.appender.logMail.Bcc= xly3000@gmail.com 
#log4j.appender.logMail.SMTPUsername= xly3000 
#log4j.appender.logMail.SMTPPassword= 1234567 
#log4j.appender.logMail.Subject= Log4j Log Messages 
#log4j.appender.logMail.BufferSize= 1024 
#log4j.appender.logMail.SMTPAuth= TRUE 

#将日志登录到MySQL数据库 
#log4j.appender.logDB= org.apache.log4j.jdbc.JDBCAppender 
#log4j.appender.logDB.layout= org.apache.log4j.PatternLayout 
#log4j.appender.logDB.Driver= com.mysql.jdbc.Driver 
#log4j.appender.logDB.URL= jdbc:mysql://127.0.0.1:3306/xly 
#log4j.appender.logDB.User= root 
#log4j.appender.logDB.Password= 123456 
#log4j.appender.logDB.Sql= INSERT INTOT_log4j(project_name,create_date,level,category,file_name,thread_name,line,all_category,message)values('Struts2','%d{yyyy-MM-ddHH:mm:ss}','%p','%c','%F','%t','%L','%l','%m')
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值