comment configurer log4j pour Mybatis pour imprimer mon SQL
Mon projet est mis en place avec spring mvc+Mybatis+EXTJS4. C'est ma configuration:
# Rules reminder:
# DEBUG < INFO < WARN < ERROR < FATAL
# Global logging configuration
log4j.rootLogger=DEBUG,stdout
log4j.logger.org.apache.ibatis=DEBUG,stdout
log4j.logger.java.sql=DEBUG,stdout
#log4j.additivity.com.ibatis = false
#log4j.additivity.java.sql = false
## Console output...
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%5p %d %C: %m%n
mais il n'a pas l'impression SQL dans la Console,quelqu'un peut-il m'aider? merci beaucoup
source d'informationauteur sence
Vous devez vous connecter pour publier un commentaire.
Jaradinor la réponse sera probablement travailler. Mais, je pense que le problème sous-jacent est dû à la façon dont le MyBatis LogFactory classe est mis en œuvre. Dans un bloc statique, il tente de charger slf4j, puis commmons d'enregistrement, puis log4j. Donc, si vous avez commons-logging dans votre classpath, il va l'utiliser. Puisque vous êtes à l'aide de Printemps, vous n'avez probablement que commons-logging.
C'est à cause de questions de ce genre que j'ai déménagé à slf4j. Utilisation
slf4j-log4j12
avoir slf4j appel à log4j. Utilisationjcl-over-slf4j
de la route tout le Printemps (et d'autres) commons-logging de slf4j (et puis à log4j). Assurez-vous d'exclure le "vrai" commons-logging fichier jar à partir de votre classpath lorsque vous faites cela - peut-être avec un<exclude>
si vous utilisez Maven.J'ai rencontré un problème similaire. Le code suivant m'a aidé
(je l'ai utilisé dans le mybatis classe de configuration):
Peut causer des problèmes de devenir autre système de journalisation dans votre
classpath.
Vous avez besoin de mettre slf4j-api-xxx.jar, slf4j-log4j12-xxx.jar, log4j-over-slf4j-xxx.jar, log4j-xxx.jar (remplacer xxx par le numéro de version, par exemple 1.6.3) dans votre classpath et dans votre package "src", mettre le log4j.propriétés (voir ci-dessous).
avec cette .propriétés, vous pouvez vous connecter à toutes les étapes mybatis et sql comme connexion ouverte, aller chercher les résultats, à proximité des connexions et etc.
cheers!