成功配置tomcat的log4j日志系統,格式:HTML+每天以yyyy-mm-dd.log命名的日志文件
一、引言:
實習單位讓用log4j配置webapp的日志系統,要求產生的日志文件是html格式,而且是每天以yyyy-mm-dd日期格式命名的日志文件。
這個以前讓自己費神了一段時間,近期花了兩天時間總算配置成功了!只是配置成功的是tomcat的,不是單個webapp的,現把步驟記錄下來,晚上再配置webapp的。先寫一步一步的操作,后面再解說一些log4j的關鍵知識點。
二、一步一步配置tomcat log4j日志系統
第一步:下載log4j.jar,并把log4j.jar放入$CATALINA_HOME/common/lib.
第二步:新建log4j.properties文件,放到$CATALINA_HOME/common/classes/文件夾下.
第三步:寫配置文件log4j.properties:
#log4j.properties
log4j.rootLogger=warn, A1
log4j.appender.A1=org.apache.log4j.DailyRollingFileAppender
log4j.appender.A1.file=F:/UserWorkSpace/jiangcm/Tomcat 5.0/logs/tomcat_log_
log4j.appender.A1.DatePattern=yyyy-MM-dd'.html'
log4j.appender.A1.layout=org.apache.log4j.HTMLLayout
log4j.logger.org.apache=warn
注解:
1)你僅僅須要改動這一行:
log4j.appender.R.File=F:/UserWorkSpace/jiangcm/Tomcat 5.0/logs/tomcat_log_
將路徑改動為你的Tomcat的logs文件夾,假設你的系統環境配置了CATALINA_HOME環境變量,那么能夠使用${catalina.home}/logs/tomcat_log_進行配置就可以。
2)上面的log4j配置僅記錄比較重要的日志(警告warning、錯誤error、致命錯誤fatal)到Tomcat的logs文件夾下的tomcat_log_ 文件里,每天晚上過0點的第一條信息會觸發重命名tomcat_log_,將當前日期附加在tomcat_log_ 文件名稱中,并產生新的tomcat_log_ 文件。
3)使用FileAppender能夠將log信息輸出到文件里,可是假設文件太大了讀起來就不方便了。這時就能夠使用 DailyRollingAppender。DailyRollingAppender能夠把Log信息輸出到依照日期來區分的文件里。如上述log4j.properties配置文件就會每天產生一個html文件,每一個html文件僅僅記錄當天的log信息。
4)設置了DailyRollingAppender 以后假設配置項里面設置了文件的最大值,那么應該去掉,否則可能不能產生以天為單位的日志。
5)Log4j的org.apache.log4j.DailyRollingFileAppender源代碼223行
scheduledFilename = fileName+sdf.format(new Date(file.lastModified()));
也就是說備份的日至文件都是文件名稱后面加上你所配的DatePattern格式化后的字符串。除非你自己寫個appender。
6)上述log4j.properties生成的日志文件,名稱格式例如以下:tomcat_log_2007-02-24.html;
注意:生成的第一個日志文件格式例如以下:tomcat_log_,即僅僅是A1.file中設置的名稱;生成的第二個日志文件之后的文件命名才會加上所配的DatePattern格式化后的字符串。
7)配置DailyRollingFileAppender格式的日志系統,假設要驗證生成的日志文件結果,要注意一點,須要關閉tomcat,改動系統日期為第二天的日期,再重新啟動tomcat,這樣才干自己主動生成一個新的日志文件;由于要改動日期才干觸發產生新的日志文件。
第四步:重新啟動tomcat.
ok,如今就已經在tomcat中配置好log4j了。
第五步:驗證
驗證上述配置的log4j日志系統:
利用tomcat自帶的web應用程序jsp-examples,如今配置好了日志系統,那么假設在jsp-examples這個web應用程序的.java文件里使用了日志,則IE訪問這個web app的jsp文件時,就應該可以自己主動產生日志文件到配置的路徑中。
步驟:
a)進入文件夾“F:\UserWorkSpace\jiangcm\Tomcat 5.0\webapps\jsp-examples\WEB-INF\classes\dates”;
b)改動JspCalendar.java文件,在這個文件里加上日志的代碼,例如以下所看到的:
package dates;
import java.text.DateFormat;
import java.util.*;
import org.apache.log4j.Logger;
import org.apache.log4j.Level;
import org.apache.log4j.*;
public class JspCalendar {
Calendar calendar = null;
static Logger logger = Logger.getLogger(JspCalendar.class);
public JspCalendar() {
logger.debug("This is debug.");
logger.info("This is an info.");
logger.warn("This is a warning.");
logger.error("This is an error.");
logger.fatal("This is a fatal error.");
calendar = Calendar.getInstance();
Date trialTime = new Date();
calendar.setTime(trialTime);
}
public int getYear() {
return calendar.get(Calendar.YEAR);
}
……
}
凝視:
加上的代碼有兩部分,一是構造一個logger對象,一是輸出logger信息,例如以下所看到的,其它代碼沒動:
static Logger logger = Logger.getLogger(JspCalendar.class);
logger.debug("This is debug.");
logger.info("This is an info.");
logger.warn("This is a warning.");
logger.error("This is an error.");
logger.fatal("This is a fatal error.");
c)又一次編譯JspCalendar.java;
d)改動日期為2007-02-26;
e)重新啟動tomcat;
f)在IE中輸入“http://localhost:8086/jsp-examples/dates/date.jsp”,執行該jsp文件;
g)這時在文件夾“F:\UserWorkSpace\jiangcm\Tomcat 5.0\logs”下看到了新產生的日志文件:tomcat_log_2007-02-25.html.
ok!說明日志系統配置成功啦,啦~!!
三、遺留問題
3.1 上述配置的是tomcat的日志系統,應該是對tomcat下的全部webapp都起作用,如今自己僅僅驗證了jsp-examples這個webapp,還沒有驗證過其它的webapp。
3.2 配置的是tomcat的日志系統,輸出的應該都僅僅是tomcat的標準輸入/輸出信息等,感覺webapp的日志信息應該和tomcat的系統日志信息分開,可是應該怎么分開呢?假設對每一個webapp單獨配置日志系統,那么這些日志內容會輸出到tomcat的系統日志中嗎?
3.3 不需不論什么配置,tomcat5.0的默認日志文件夾“F:\UserWorkSpace\jiangcm\Tomcat 5.0\logs”下就有按日期產生的日志文件,文件命名格式例如以下:localhost_log.2007-02-26.txt,而且這個文件是自己主動生成的,上述配置在文件夾“F:\UserWorkSpace\jiangcm\Tomcat 5.0\logs”下生成了tomcat_log_2007-02-25.html文件,而且tomcat本身也自己主動生成了一個localhost_log.2007-02-26.txt文件,相當于自己主動生成了兩個日志文件。
當然這兩個日志文件的內容不同,tomcat_log_2007-02-25.html中的內容例如以下:
待貼圖
而localhost_log.2007-02-26.txt的內容例如以下:
2007-02-26 14:03:21 StandardContext[/balancer]org.apache.webapp.balancer.BalancerFilter: init(): ruleChain: [org.apache.webapp.balancer.RuleChain: [org.apache.webapp.balancer.rules.URLStringMatchRule: Target string: News / Redirect URL: http://www.cnn.com], [org.apache.webapp.balancer.rules.RequestParameterRule: Target param name: paramName / Target param value: paramValue / Redirect URL: http://www.yahoo.com], [org.apache.webapp.balancer.rules.AcceptEverythingRule: Redirect URL: http://jakarta.apache.org]]
2007-02-26 14:03:22 StandardContext[/jsp-examples]ContextListener: contextInitialized()
2007-02-26 14:03:22 StandardContext[/jsp-examples]SessionListener: contextInitialized()
2007-02-26 14:03:22 StandardContext[/servlets-examples]ContextListener: contextInitialized()
2007-02-26 14:03:22 StandardContext[/servlets-examples]SessionListener: contextInitialized()
感覺就是localhost_log.2007-02-26.txt中是tomcat的系統日志,而omcat_log_2007-02-25.html中是.java中自己寫的logger的內容。
那么,是不是tomcat5中系統日志就會自己主動按日生成,不需配置;開發者假設須要日志系統,那么就在自己的webapp中配置一個,而不須要管tomcat的系統日志了???
3.4 tomcat_log_2007-02-25.html與localhost_log.2007-02-26.txt內容不同的原因有沒有可能是由于:
自己的log4j.properties中設置apache的級別是warn:??
log4j.logger.org.apache=warn
剛驗證了一下,好像沒有關系,“log4j.logger.org.apache=warn”這句好像不僅對localhost_log.2007-02-26.txt無影響,并且對tomcat_log_2007-02-25.html的輸出也無影響。
那么“log4j.logger.org.apache=warn”這句的作用是什么呢???
3.5 webapp中怎樣配置日志系統,而且把webapp的日志信息與tomcat自身的系統日志分開???
四、參考資料:
1.我想每一天都產生一個以"yyyy-mm-dd.log"命名日志文件,請問該怎么配置file選項,謝謝了!
http://community.csdn.net/Expert/TopicView3.asp?id=4788993
2.使用log4j為Tomcat輸出日志
http://www.chinawin.net/myblog/archives/314-log4jTomcataeoeOE.html
1. 假設Tomcat當前正在執行,關閉Tomcat。
2. 從Apache的站點下載Commons Logging發行包。
3. 將壓縮包中的commons-logging.jar解壓縮到你Tomcat安裝路徑的common/lib文件夾中。
4. 從Apache的站點下載Log4j發行包。
5. 將壓縮包中的log4j-1.2.12.jar解壓縮到你Tomcat安裝路徑的common/lib文件夾中。
6. 在Tomcat安裝路徑的common/classes 創建log4j的配置文件log4j.properties(配置文件在隨后一節)。
7. 重起Tomcat
3.在Web應用中使用log4j
http://www.3doing.net/forums/printpage.asp?BoardID=11&ID=184
注意:上面的load-on-startup應設為1,以便在Web容器啟動時即裝入該Servlet。log4j.properties文件放在根的properties子文件夾中,也能夠把它放在其他文件夾中。應該把.properties文件集中存放,這樣方便管理。
4.og4j日志文件路徑的配置
http://wangluwww.spaces.live.com/blog/
解決log4j輸出的日志文件的位置的配置問題
我一直希望自己的web應用的配置可以簡化,最好的方式就是打個包后扔哪都能用,即使非得再做一些配置的話,也希望僅僅是一些連接池的配置信息。這個目標在如今手頭的這個項目中也差點兒達到了,除了log文件的位置。
在log4j的配置文件里對于log輸出的路徑一向都是使用絕對路徑,這樣就導致在不同的機器上部署時都得又一次定義一下log文件的輸出位置。雖說費時不多,可對于我這樣的寧可少一事,不愿多一事的人來說,總是認為有點郁悶。
踏破鐵鞋無覓,得來不費功夫。不經意見看到了一個文檔,介紹說log4j的配置文件支持windows的環境變量,格式類似velocity:${env},ok,問題解決:
一般來說我們會將一些初始化的信息放到web.xml中,以便在系統啟動時就執行。循此思路,將log文件的位置放到webapp以下的隨意處,如webapp/WEB-INF/conf/logs以下,則能夠在log4j.properties文件里做例如以下定義:
log4j.appender.R.File=${webappHome}/WEB-INF/conf/logs/sysout.log
當中的${webappHome}即是通過System.setProperty("webappHome", webappHome);實現的,此操作可通過一初始的servlet進行,詳細方法略。
5. Log4j優化
http://www.3doing.net/forums/printpage.asp?BoardID=11&ID=184
有多少人用Log4j的時候會在每個Debug/Info之前加一個推斷?
可能非常多人都說了,這有什么關系,我在執行的時候是把Log Level設置成Error的。
那么請看以下這個代碼:
String result;
...
...
...
logger.debug(”result is” + result );
再看看這個代碼:
String result;
...
...
...
if(logger.isDebugEnabled())
{
logger.debug(”result is” + result );
}
把Log Level設置成ERROR,執行結果又差別嗎?沒有!!
程序的性能有差別嗎?差別大了!!!
由于什么呢?
盡管第一段代碼也不產生Log輸出,可是debug()里面的字符串變量是實例化了,明確了嗎?
這個就是為什么非常多人抱怨Log4j占用非常大CPU時間的原因了,尤其是在大循環的時候。
趕快在你的程序中加上這種推斷條件吧。
一、引言:
實習單位讓用log4j配置webapp的日志系統,要求產生的日志文件是html格式,而且是每天以yyyy-mm-dd日期格式命名的日志文件。
這個以前讓自己費神了一段時間,近期花了兩天時間總算配置成功了!只是配置成功的是tomcat的,不是單個webapp的,現把步驟記錄下來,晚上再配置webapp的。先寫一步一步的操作,后面再解說一些log4j的關鍵知識點。
二、一步一步配置tomcat log4j日志系統
第一步:下載log4j.jar,并把log4j.jar放入$CATALINA_HOME/common/lib.
第二步:新建log4j.properties文件,放到$CATALINA_HOME/common/classes/文件夾下.
第三步:寫配置文件log4j.properties:
#log4j.properties
log4j.rootLogger=warn, A1
log4j.appender.A1=org.apache.log4j.DailyRollingFileAppender
log4j.appender.A1.file=F:/UserWorkSpace/jiangcm/Tomcat 5.0/logs/tomcat_log_
log4j.appender.A1.DatePattern=yyyy-MM-dd'.html'
log4j.appender.A1.layout=org.apache.log4j.HTMLLayout
log4j.logger.org.apache=warn
注解:
1)你僅僅須要改動這一行:
log4j.appender.R.File=F:/UserWorkSpace/jiangcm/Tomcat 5.0/logs/tomcat_log_
將路徑改動為你的Tomcat的logs文件夾,假設你的系統環境配置了CATALINA_HOME環境變量,那么能夠使用${catalina.home}/logs/tomcat_log_進行配置就可以。
2)上面的log4j配置僅記錄比較重要的日志(警告warning、錯誤error、致命錯誤fatal)到Tomcat的logs文件夾下的tomcat_log_ 文件里,每天晚上過0點的第一條信息會觸發重命名tomcat_log_,將當前日期附加在tomcat_log_ 文件名稱中,并產生新的tomcat_log_ 文件。
3)使用FileAppender能夠將log信息輸出到文件里,可是假設文件太大了讀起來就不方便了。這時就能夠使用 DailyRollingAppender。DailyRollingAppender能夠把Log信息輸出到依照日期來區分的文件里。如上述log4j.properties配置文件就會每天產生一個html文件,每一個html文件僅僅記錄當天的log信息。
4)設置了DailyRollingAppender 以后假設配置項里面設置了文件的最大值,那么應該去掉,否則可能不能產生以天為單位的日志。
5)Log4j的org.apache.log4j.DailyRollingFileAppender源代碼223行
scheduledFilename = fileName+sdf.format(new Date(file.lastModified()));
也就是說備份的日至文件都是文件名稱后面加上你所配的DatePattern格式化后的字符串。除非你自己寫個appender。
6)上述log4j.properties生成的日志文件,名稱格式例如以下:tomcat_log_2007-02-24.html;
注意:生成的第一個日志文件格式例如以下:tomcat_log_,即僅僅是A1.file中設置的名稱;生成的第二個日志文件之后的文件命名才會加上所配的DatePattern格式化后的字符串。
7)配置DailyRollingFileAppender格式的日志系統,假設要驗證生成的日志文件結果,要注意一點,須要關閉tomcat,改動系統日期為第二天的日期,再重新啟動tomcat,這樣才干自己主動生成一個新的日志文件;由于要改動日期才干觸發產生新的日志文件。
第四步:重新啟動tomcat.
ok,如今就已經在tomcat中配置好log4j了。
第五步:驗證
驗證上述配置的log4j日志系統:
利用tomcat自帶的web應用程序jsp-examples,如今配置好了日志系統,那么假設在jsp-examples這個web應用程序的.java文件里使用了日志,則IE訪問這個web app的jsp文件時,就應該可以自己主動產生日志文件到配置的路徑中。
步驟:
a)進入文件夾“F:\UserWorkSpace\jiangcm\Tomcat 5.0\webapps\jsp-examples\WEB-INF\classes\dates”;
b)改動JspCalendar.java文件,在這個文件里加上日志的代碼,例如以下所看到的:
package dates;
import java.text.DateFormat;
import java.util.*;
import org.apache.log4j.Logger;
import org.apache.log4j.Level;
import org.apache.log4j.*;
public class JspCalendar {
Calendar calendar = null;
static Logger logger = Logger.getLogger(JspCalendar.class);
public JspCalendar() {
logger.debug("This is debug.");
logger.info("This is an info.");
logger.warn("This is a warning.");
logger.error("This is an error.");
logger.fatal("This is a fatal error.");
calendar = Calendar.getInstance();
Date trialTime = new Date();
calendar.setTime(trialTime);
}
public int getYear() {
return calendar.get(Calendar.YEAR);
}
……
}
凝視:
加上的代碼有兩部分,一是構造一個logger對象,一是輸出logger信息,例如以下所看到的,其它代碼沒動:
static Logger logger = Logger.getLogger(JspCalendar.class);
logger.debug("This is debug.");
logger.info("This is an info.");
logger.warn("This is a warning.");
logger.error("This is an error.");
logger.fatal("This is a fatal error.");
c)又一次編譯JspCalendar.java;
d)改動日期為2007-02-26;
e)重新啟動tomcat;
f)在IE中輸入“http://localhost:8086/jsp-examples/dates/date.jsp”,執行該jsp文件;
g)這時在文件夾“F:\UserWorkSpace\jiangcm\Tomcat 5.0\logs”下看到了新產生的日志文件:tomcat_log_2007-02-25.html.
ok!說明日志系統配置成功啦,啦~!!
三、遺留問題
3.1 上述配置的是tomcat的日志系統,應該是對tomcat下的全部webapp都起作用,如今自己僅僅驗證了jsp-examples這個webapp,還沒有驗證過其它的webapp。
3.2 配置的是tomcat的日志系統,輸出的應該都僅僅是tomcat的標準輸入/輸出信息等,感覺webapp的日志信息應該和tomcat的系統日志信息分開,可是應該怎么分開呢?假設對每一個webapp單獨配置日志系統,那么這些日志內容會輸出到tomcat的系統日志中嗎?
3.3 不需不論什么配置,tomcat5.0的默認日志文件夾“F:\UserWorkSpace\jiangcm\Tomcat 5.0\logs”下就有按日期產生的日志文件,文件命名格式例如以下:localhost_log.2007-02-26.txt,而且這個文件是自己主動生成的,上述配置在文件夾“F:\UserWorkSpace\jiangcm\Tomcat 5.0\logs”下生成了tomcat_log_2007-02-25.html文件,而且tomcat本身也自己主動生成了一個localhost_log.2007-02-26.txt文件,相當于自己主動生成了兩個日志文件。
當然這兩個日志文件的內容不同,tomcat_log_2007-02-25.html中的內容例如以下:
待貼圖
而localhost_log.2007-02-26.txt的內容例如以下:
2007-02-26 14:03:21 StandardContext[/balancer]org.apache.webapp.balancer.BalancerFilter: init(): ruleChain: [org.apache.webapp.balancer.RuleChain: [org.apache.webapp.balancer.rules.URLStringMatchRule: Target string: News / Redirect URL: http://www.cnn.com], [org.apache.webapp.balancer.rules.RequestParameterRule: Target param name: paramName / Target param value: paramValue / Redirect URL: http://www.yahoo.com], [org.apache.webapp.balancer.rules.AcceptEverythingRule: Redirect URL: http://jakarta.apache.org]]
2007-02-26 14:03:22 StandardContext[/jsp-examples]ContextListener: contextInitialized()
2007-02-26 14:03:22 StandardContext[/jsp-examples]SessionListener: contextInitialized()
2007-02-26 14:03:22 StandardContext[/servlets-examples]ContextListener: contextInitialized()
2007-02-26 14:03:22 StandardContext[/servlets-examples]SessionListener: contextInitialized()
感覺就是localhost_log.2007-02-26.txt中是tomcat的系統日志,而omcat_log_2007-02-25.html中是.java中自己寫的logger的內容。
那么,是不是tomcat5中系統日志就會自己主動按日生成,不需配置;開發者假設須要日志系統,那么就在自己的webapp中配置一個,而不須要管tomcat的系統日志了???
3.4 tomcat_log_2007-02-25.html與localhost_log.2007-02-26.txt內容不同的原因有沒有可能是由于:
自己的log4j.properties中設置apache的級別是warn:??
log4j.logger.org.apache=warn
剛驗證了一下,好像沒有關系,“log4j.logger.org.apache=warn”這句好像不僅對localhost_log.2007-02-26.txt無影響,并且對tomcat_log_2007-02-25.html的輸出也無影響。
那么“log4j.logger.org.apache=warn”這句的作用是什么呢???
3.5 webapp中怎樣配置日志系統,而且把webapp的日志信息與tomcat自身的系統日志分開???
四、參考資料:
1.我想每一天都產生一個以"yyyy-mm-dd.log"命名日志文件,請問該怎么配置file選項,謝謝了!
http://community.csdn.net/Expert/TopicView3.asp?id=4788993
2.使用log4j為Tomcat輸出日志
http://www.chinawin.net/myblog/archives/314-log4jTomcataeoeOE.html
1. 假設Tomcat當前正在執行,關閉Tomcat。
2. 從Apache的站點下載Commons Logging發行包。
3. 將壓縮包中的commons-logging.jar解壓縮到你Tomcat安裝路徑的common/lib文件夾中。
4. 從Apache的站點下載Log4j發行包。
5. 將壓縮包中的log4j-1.2.12.jar解壓縮到你Tomcat安裝路徑的common/lib文件夾中。
6. 在Tomcat安裝路徑的common/classes 創建log4j的配置文件log4j.properties(配置文件在隨后一節)。
7. 重起Tomcat
3.在Web應用中使用log4j
http://www.3doing.net/forums/printpage.asp?BoardID=11&ID=184
注意:上面的load-on-startup應設為1,以便在Web容器啟動時即裝入該Servlet。log4j.properties文件放在根的properties子文件夾中,也能夠把它放在其他文件夾中。應該把.properties文件集中存放,這樣方便管理。
4.og4j日志文件路徑的配置
http://wangluwww.spaces.live.com/blog/
解決log4j輸出的日志文件的位置的配置問題
我一直希望自己的web應用的配置可以簡化,最好的方式就是打個包后扔哪都能用,即使非得再做一些配置的話,也希望僅僅是一些連接池的配置信息。這個目標在如今手頭的這個項目中也差點兒達到了,除了log文件的位置。
在log4j的配置文件里對于log輸出的路徑一向都是使用絕對路徑,這樣就導致在不同的機器上部署時都得又一次定義一下log文件的輸出位置。雖說費時不多,可對于我這樣的寧可少一事,不愿多一事的人來說,總是認為有點郁悶。
踏破鐵鞋無覓,得來不費功夫。不經意見看到了一個文檔,介紹說log4j的配置文件支持windows的環境變量,格式類似velocity:${env},ok,問題解決:
一般來說我們會將一些初始化的信息放到web.xml中,以便在系統啟動時就執行。循此思路,將log文件的位置放到webapp以下的隨意處,如webapp/WEB-INF/conf/logs以下,則能夠在log4j.properties文件里做例如以下定義:
log4j.appender.R.File=${webappHome}/WEB-INF/conf/logs/sysout.log
當中的${webappHome}即是通過System.setProperty("webappHome", webappHome);實現的,此操作可通過一初始的servlet進行,詳細方法略。
5. Log4j優化
http://www.3doing.net/forums/printpage.asp?BoardID=11&ID=184
有多少人用Log4j的時候會在每個Debug/Info之前加一個推斷?
可能非常多人都說了,這有什么關系,我在執行的時候是把Log Level設置成Error的。
那么請看以下這個代碼:
String result;
...
...
...
logger.debug(”result is” + result );
再看看這個代碼:
String result;
...
...
...
if(logger.isDebugEnabled())
{
logger.debug(”result is” + result );
}
把Log Level設置成ERROR,執行結果又差別嗎?沒有!!
程序的性能有差別嗎?差別大了!!!
由于什么呢?
盡管第一段代碼也不產生Log輸出,可是debug()里面的字符串變量是實例化了,明確了嗎?
這個就是為什么非常多人抱怨Log4j占用非常大CPU時間的原因了,尤其是在大循環的時候。
趕快在你的程序中加上這種推斷條件吧。
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
