# springtest
**Repository Path**: MarkPolaris/springtest
## Basic Information
- **Project Name**: springtest
- **Description**: No description available
- **Primary Language**: Unknown
- **License**: Not specified
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2019-07-22
- **Last Updated**: 2020-12-19
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
### git使用
##### 1.Git 全局设置:
```
git config --global user.name "Mark"
git config --global user.email "1453537503@qq.com"
```
##### 2.创建 git 仓库:
```
mkdir JavaNote
cd JavaNote
git init
touch README.md
git add README.md
git commit -m "first commit"
git remote add origin git@gitee.com:MarkPolaris/JavaNote.git
git push -u origin master
```
##### 3.已有仓库?
```
cd existing_git_repo
git remote add origin git@gitee.com:MarkPolaris/JavaNote.git
git push -u origin master
```
## 写第一个spring项目
1. 添加依赖
```xml
org.projectlombok
lombok
1.18.4
provided
org.springframework
spring-core
${spring.version}
org.springframework
spring-context
${spring.version}
```
2. 实体类
```java
package com.neuedu.entity;
import lombok.Data;
/**
* @Author: MARK
* @Date: 2019/7/22 18:19
* @version: 1.0.0
* @Description:
*/
@Data
public class User {
private Integer id;
private String password;
private String username;
}
```
3. 添加spring配置文件spring-config.xml,并添加一个User 的 bean
```xml
```
4. 测试类
```java
package com.neuedu;
import static org.junit.Assert.assertTrue;
import com.neuedu.entity.User;
import lombok.extern.slf4j.Slf4j;
import org.junit.*;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import java.util.ArrayList;
import java.util.List;
/**
* Unit test for simple App.
*/
public class AppTest
{
private static ApplicationContext applicationContext;
@BeforeClass
public static void beforeClass(){
System.out.println("before class");
applicationContext = new ClassPathXmlApplicationContext("spring-config.xml");
}
@Test
public void test(){
User user = new User();
System.out.println(user.getPassword());
}
@Test
public void testSpring(){
User user = (User)applicationContext.getBean("user");
System.out.println(user);
System.out.println(user.getUsername());
System.out.println(user.getPassword());
}
@Before
public void before(){
System.out.println("before method");
}
@After
public void after(){
System.out.println("after method");
}
@AfterClass
public static void afterClass(){
System.out.println("after class");
}
@Test
public void testList(){
}
}
```
## 配置log4j日志输出
1. 添加maven依赖
```xml
log4j
log4j
1.2.17
org.slf4j
slf4j-log4j12
1.7.25
test
```
2. 添加注解@Slf4j
```java
@Slf4j
public class AppTest
{}
```
3. 添加配置文件log4j.properties
```properties
### 设置###
# root日志类型
log4j.rootLogger = debug,stdout
### 定义控制台输出格式 ###
log4j.appender.stdout = org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target = System.out
log4j.appender.stdout.layout = org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern = [%-5p] %d{yyyy-MM-dd HH:mm:ss,SSS} method:%l%n%m%n
### 输出DEBUG 级别以上的日志到=D:/JAVA/logs/spring.log ###
log4j.appender.D = org.apache.log4j.DailyRollingFileAppender
log4j.appender.D.File = D:/JAVA/z_logs/spring.log
log4j.appender.D.Append = true
log4j.appender.D.Threshold = DEBUG
log4j.appender.D.layout = org.apache.log4j.PatternLayout
log4j.appender.D.layout.ConversionPattern = %-d{yyyy-MM-dd HH:mm:ss} [ %t:%r ] - [ %p ] %m%n
### 输出ERROR 级别以上的日志到=E://logs/error.log ###
#log4j.appender.E = org.apache.log4j.DailyRollingFileAppender
#log4j.appender.E.File =E://logs/error.log
#log4j.appender.E.Append = true
#log4j.appender.E.Threshold = ERROR
#log4j.appender.E.layout = org.apache.log4j.PatternLayout
#log4j.appender.E.layout.ConversionPattern = %-d{yyyy-MM-dd HH:mm:ss} [ %t:%r ] - [ %p ]
```
4. 调用log.info
```java
log.info(user.getPassword());
```
5. 输出结果
```
before class
[DEBUG] 2019-07-23 10:51:56,927 method:org.springframework.context.support.AbstractApplicationContext.prepareRefresh(AbstractApplicationContext.java:594)
Refreshing org.springframework.context.support.ClassPathXmlApplicationContext@3834d63f
[DEBUG] 2019-07-23 10:51:57,299 method:org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDefinitions(XmlBeanDefinitionReader.java:395)
Loaded 1 bean definitions from class path resource [spring-config.xml]
[DEBUG] 2019-07-23 10:51:57,410 method:org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:213)
Creating shared instance of singleton bean 'user'
before method
User(id=null, password=null, username=my first spring)
my first spring
null
[INFO ] 2019-07-23 10:51:57,554 method:com.neuedu.AppTest.testSpring(AppTest.java:42)
after method
after class
```