2018-03-22 10:57:47,567 %1 INFO - Starting Shiro environment initialization.
2018-03-22 10:57:47,575 %1 DEBUG - Checking any specified config locations.
2018-03-22 10:57:47,575 %1 DEBUG - No INI instance or config locations specified. Trying default config locations.
2018-03-22 10:57:47,579 %1 DEBUG - Opening resource from class path [shiro.ini]
2018-03-22 10:57:47,582 %1 DEBUG - Parsing [main]
2018-03-22 10:57:47,582 %1 DEBUG - Parsing [urls]
2018-03-22 10:57:47,583 %1 DEBUG - Discovered non-empty INI configuration at location 'classpath:shiro.ini'. Using for configuration.
2018-03-22 10:57:47,586 %1 DEBUG - Creating instance from Ini [sections=urls]
2018-03-22 10:57:47,715 %1 DEBUG - Creating instance from Ini [sections=urls]
2018-03-22 10:57:47,718 %1 DEBUG - Creating chain [/*] from String definition [anon]
2018-03-22 10:57:47,718 %1 DEBUG - Attempting to apply path [/*] to filter [anon] with config [null]
2018-03-22 10:57:47,718 %1 DEBUG - Published WebEnvironment as ServletContext attribute with name [org.apache.shiro.web.env.EnvironmentLoader.ENVIRONMENT_ATTRIBUTE_KEY]
2018-03-22 10:57:47,718 %1 INFO - Shiro environment initialized in 151 ms.
2018-03-22 10:57:47,735 %1 INFO - NutFilter[nutz] starting ...
2018-03-22 10:57:47,861 %1 DEBUG - Locations for Scans:
[Dir[path=D:\eclipse], Jar[path=E:\newworkspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp1\wtpwebapps\nutzbook\WEB-INF\lib\nutz-1.r.60.jar], Dir[path=E:\newworkspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp1\wtpwebapps\nutzbook\WEB-INF\classes], Jar[path=D:\apache-tomcat-7.0.78\bin\bootstrap.jar], Jar[path=D:\apache-tomcat-7.0.78\bin\tomcat-juli.jar], Jar[path=C:\Java\jdk1.7.0_79\lib\tools.jar]]
2018-03-22 10:57:47,944 %1 DEBUG - Locations for Scans:
{D:\eclipse=Dir[path=D:\eclipse], E:\newworkspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp1\wtpwebapps\nutzbook\WEB-INF\lib\nutz-1.r.60.jar=Jar[path=E:\newworkspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp1\wtpwebapps\nutzbook\WEB-INF\lib\nutz-1.r.60.jar], E:\newworkspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp1\wtpwebapps\nutzbook\WEB-INF\classes=Dir[path=E:\newworkspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp1\wtpwebapps\nutzbook\WEB-INF\classes], D:\apache-tomcat-7.0.78\bin\bootstrap.jar=Jar[path=D:\apache-tomcat-7.0.78\bin\bootstrap.jar], D:\apache-tomcat-7.0.78\bin\tomcat-juli.jar=Jar[path=D:\apache-tomcat-7.0.78\bin\tomcat-juli.jar], C:\Java\jdk1.7.0_79\lib\tools.jar=Jar[path=C:\Java\jdk1.7.0_79\lib\tools.jar], E:\newworkspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp1\wtpwebapps\nutzbook\WEB-INF\lib\slf4j-api-1.7.25.jar=Jar[path=E:\newworkspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp1\wtpwebapps\nutzbook\WEB-INF\lib\slf4j-api-1.7.25.jar], E:\newworkspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp1\wtpwebapps\nutzbook\WEB-INF\lib\druid-1.0.26.jar=Jar[path=E:\newworkspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp1\wtpwebapps\nutzbook\WEB-INF\lib\druid-1.0.26.jar], E:\newworkspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp1\wtpwebapps\nutzbook\WEB-INF\lib\commons-email-1.3.3.jar=Jar[path=E:\newworkspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp1\wtpwebapps\nutzbook\WEB-INF\lib\commons-email-1.3.3.jar], E:\newworkspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp1\wtpwebapps\nutzbook\WEB-INF\lib\quartz-2.2.3.jar=Jar[path=E:\newworkspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp1\wtpwebapps\nutzbook\WEB-INF\lib\quartz-2.2.3.jar], E:\newworkspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp1\wtpwebapps\nutzbook\WEB-INF\lib\slf4j-log4j12-1.7.25.jar=Jar[path=E:\newworkspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp1\wtpwebapps\nutzbook\WEB-INF\lib\slf4j-log4j12-1.7.25.jar], E:\newworkspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp1\wtpwebapps\nutzbook\WEB-INF\lib\taglibs-standard-jstlel-1.2.5.jar=Jar[path=E:\newworkspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp1\wtpwebapps\nutzbook\WEB-INF\lib\taglibs-standard-jstlel-1.2.5.jar], E:\newworkspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp1\wtpwebapps\nutzbook\WEB-INF\lib\taglibs-standard-spec-1.2.5.jar=Jar[path=E:\newworkspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp1\wtpwebapps\nutzbook\WEB-INF\lib\taglibs-standard-spec-1.2.5.jar], E:\newworkspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp1\wtpwebapps\nutzbook\WEB-INF\lib\nutz-integration-shiro-1.r.60.r2.jar=Jar[path=E:\newworkspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp1\wtpwebapps\nutzbook\WEB-INF\lib\nutz-integration-shiro-1.r.60.r2.jar], E:\newworkspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp1\wtpwebapps\nutzbook\WEB-INF\lib\shiro-all-1.3.2.jar=Jar[path=E:\newworkspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp1\wtpwebapps\nutzbook\WEB-INF\lib\shiro-all-1.3.2.jar], E:\newworkspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp1\wtpwebapps\nutzbook\WEB-INF\lib\taglibs-standard-impl-1.2.5.jar=Jar[path=E:\newworkspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp1\wtpwebapps\nutzbook\WEB-INF\lib\taglibs-standard-impl-1.2.5.jar], E:\newworkspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp1\wtpwebapps\nutzbook\WEB-INF\lib\jstl-api-1.2.jar=Jar[path=E:\newworkspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp1\wtpwebapps\nutzbook\WEB-INF\lib\jstl-api-1.2.jar], E:\newworkspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp1\wtpwebapps\nutzbook\WEB-INF\lib\mysql-connector-java-5.1.40.jar=Jar[path=E:\newworkspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp1\wtpwebapps\nutzbook\WEB-INF\lib\mysql-connector-java-5.1.40.jar], E:\newworkspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp1\wtpwebapps\nutzbook\WEB-INF\lib\simplecaptcha-1.2.2.jar=Jar[path=E:\newworkspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp1\wtpwebapps\nutzbook\WEB-INF\lib\simplecaptcha-1.2.2.jar], E:\newworkspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp1\wtpwebapps\nutzbook\WEB-INF\lib\log4j-1.2.17.jar=Jar[path=E:\newworkspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp1\wtpwebapps\nutzbook\WEB-INF\lib\log4j-1.2.17.jar], E:\newworkspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp1\wtpwebapps\nutzbook\WEB-INF\lib\commons-logging-1.2.jar=Jar[path=E:\newworkspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp1\wtpwebapps\nutzbook\WEB-INF\lib\commons-logging-1.2.jar], E:\newworkspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp1\wtpwebapps\nutzbook\WEB-INF\lib\javax.mail-1.5.2.jar=Jar[path=E:\newworkspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp1\wtpwebapps\nutzbook\WEB-INF\lib\javax.mail-1.5.2.jar], E:\newworkspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp1\wtpwebapps\nutzbook\WEB-INF\lib\commons-beanutils-1.9.3.jar=Jar[path=E:\newworkspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp1\wtpwebapps\nutzbook\WEB-INF\lib\commons-beanutils-1.9.3.jar], E:\newworkspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp1\wtpwebapps\nutzbook\WEB-INF\lib\nutz-integration-quartz-1.r.60.r2.jar=Jar[path=E:\newworkspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp1\wtpwebapps\nutzbook\WEB-INF\lib\nutz-integration-quartz-1.r.60.r2.jar]}
2018-03-22 10:57:47,995 %1 DEBUG - Using 95 castor for Castors
2018-03-22 10:57:48,021 %1 DEBUG - Loading by class org.nutz.mvc.impl.NutLoading
2018-03-22 10:57:48,023 %1 INFO - Nutz Version : 1.r.60
2018-03-22 10:57:48,023 %1 INFO - Nutz.Mvc[nutz] is initializing ...
2018-03-22 10:57:48,023 %1 DEBUG - Web Container Information:
2018-03-22 10:57:48,024 %1 DEBUG - - Default Charset : UTF-8
2018-03-22 10:57:48,024 %1 DEBUG - - Current . path : D:\eclipse\.
2018-03-22 10:57:48,024 %1 DEBUG - - Java Version : 1.7.0_79
2018-03-22 10:57:48,024 %1 DEBUG - - File separator : \
2018-03-22 10:57:48,024 %1 DEBUG - - Timezone : Asia/Shanghai
2018-03-22 10:57:48,024 %1 DEBUG - - OS : Windows 8.1 amd64
2018-03-22 10:57:48,024 %1 DEBUG - - ServerInfo : Apache Tomcat/7.0.78
2018-03-22 10:57:48,024 %1 DEBUG - - Servlet API : 3.0
2018-03-22 10:57:48,024 %1 DEBUG - - ContextPath : /nutzbook
2018-03-22 10:57:48,024 %1 DEBUG - - context.tempdir : E:\newworkspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp1\work\Catalina\localhost\nutzbook
2018-03-22 10:57:48,024 %1 DEBUG - - MainModule : net.wendal.nutzbook.MainModule
2018-03-22 10:57:48,025 %1 DEBUG - >> app.root = E:/newworkspace/.metadata/.plugins/org.eclipse.wst.server.core/tmp1/wtpwebapps/nutzbook
2018-03-22 10:57:48,027 %1 DEBUG - @IocBy(type=org.nutz.mvc.ioc.provider.ComboIocProvider, args=["*js", "ioc/", "*anno", "net.wendal.nutzbook", "*tx", "*quartz"],init=[])
2018-03-22 10:57:48,047 %1 DEBUG - Found 2 resource by src( ioc/ ) , regex( ^(.+[.])(js|json)$ )
2018-03-22 10:57:48,047 %1 DEBUG - loading ioc js config from [dao.js]
2018-03-22 10:57:48,050 %1 DEBUG - loading ioc js config from [mail.js]
2018-03-22 10:57:48,051 %1 DEBUG - Loaded 5 bean define from path=[ioc/] --> [htmlEmail, dataSource, dao, conf, emailAuthenticator]
2018-03-22 10:57:48,059 %1 DEBUG - Found 17 resource by src( net/wendal/nutzbook/ ) , regex( ^.+[.]class$ )
2018-03-22 10:57:48,092 %1 WARN - class(net.wendal.nutzbook.module.BaseModule) don't has @IocBean, but field(dao) has @Inject! Miss @IocBean ??
2018-03-22 10:57:48,096 %1 DEBUG - Found @IocBean : class net.wendal.nutzbook.module.CaptchaModule
2018-03-22 10:57:48,106 %1 DEBUG - Found @IocBean : class net.wendal.nutzbook.module.UserModule
2018-03-22 10:57:48,109 %1 DEBUG - Found @IocBean : class net.wendal.nutzbook.module.UserProfileModule
2018-03-22 10:57:48,121 %1 DEBUG - Found @IocBean : class net.wendal.nutzbook.quartz.job.CleanNonActiveUserJob
2018-03-22 10:57:48,124 %1 DEBUG - Found @IocBean : class net.wendal.nutzbook.service.EmailServiceImpl
2018-03-22 10:57:48,125 %1 DEBUG - Found @IocBean : class net.wendal.nutzbook.service.UserService
2018-03-22 10:57:48,128 %1 INFO - Found 6 classes in 1 base-packages!
beans = ["captchaModule", "EmailService", "cleanNonActiveUserJob", "userProfileModule", "userService", "userModule"]
2018-03-22 10:57:48,130 %1 DEBUG - Loaded 5 bean define from reader --
[txREPEATABLE_READ, txREAD_COMMITTED, txNONE, txSERIALIZABLE, txREAD_UNCOMMITTED]
2018-03-22 10:57:48,131 %1 DEBUG - found org.nutz.integration.quartz.QuartzIocLoader -- org.nutz.integration.quartz.QuartzIocLoader
2018-03-22 10:57:48,131 %1 DEBUG - Loaded 0 bean define from path=[] --> []
2018-03-22 10:57:48,135 %1 INFO - NutIoc init begin ...
2018-03-22 10:57:48,136 %1 INFO - ... NutIoc init complete
2018-03-22 10:57:48,140 %1 INFO - Build URL mapping by org.nutz.mvc.impl.UrlMappingImpl ...
2018-03-22 10:57:48,142 %1 DEBUG - @Views(DefaultViewMaker.class)
2018-03-22 10:57:48,148 %1 DEBUG - Found 1 resource by src( mvc/nutzbook-mvc-chain.js ) , regex( ^(.+[.])(js|json)$ )
2018-03-22 10:57:48,153 %1 DEBUG - ActionChain Config:
{
"default": {
"ps": ["net.wendal.nutzbook.mvc.LogTimeProcessor", "org.nutz.mvc.impl.processor.UpdateRequestAttributesProcessor", "org.nutz.mvc.impl.processor.EncodingProcessor", "org.nutz.mvc.impl.processor.ModuleProcessor", "!org.nutz.integration.shiro.NutShiroProcessor", "org.nutz.mvc.impl.processor.ActionFiltersProcessor", "org.nutz.mvc.impl.processor.AdaptorProcessor", "org.nutz.mvc.impl.processor.MethodInvokeProcessor", "org.nutz.mvc.impl.processor.ViewProcessor"],
"error": "org.nutz.mvc.impl.processor.FailProcessor"
}
}
2018-03-22 10:57:48,153 %1 DEBUG - @ChainBy(org.nutz.mvc.impl.NutActionChainMaker)
2018-03-22 10:57:48,158 %1 DEBUG - module class location 'file:/E:/newworkspace/.metadata/.plugins/org.eclipse.wst.server.core/tmp1/wtpwebapps/nutzbook/WEB-INF/classes/'
2018-03-22 10:57:48,159 %1 DEBUG - > scan 'net.wendal.nutzbook'
2018-03-22 10:57:48,166 %1 DEBUG - Found 17 resource by src( net/wendal/nutzbook/ ) , regex( ^.+[.]class$ )
2018-03-22 10:57:48,167 %1 DEBUG - >> add 'net.wendal.nutzbook.module.CaptchaModule'
2018-03-22 10:57:48,168 %1 DEBUG - >> add 'net.wendal.nutzbook.module.UserModule'
2018-03-22 10:57:48,168 %1 DEBUG - >> add 'net.wendal.nutzbook.module.UserProfileModule'
2018-03-22 10:57:48,214 %1 DEBUG - '/captcha/next' >> (CaptchaModule.java:25).next : BufferedImage | @Ok(raw:png) @Fail(jsp:jsp.500) | by 0 Filters | (I:UTF-8/O:UTF-8)
2018-03-22 10:57:48,228 %1 DEBUG - '/user/add' >> (UserModule.java:74).add : Object | @Ok(json:{locked:'password|salt',ignoreNull:true}) @Fail(http:500) | by 1 Filters | (I:UTF-8/O:UTF-8)
2018-03-22 10:57:48,229 %1 DEBUG - '/user/count' >> (UserModule.java:41).count : int | @Ok(json:{locked:'password|salt',ignoreNull:true}) @Fail(http:500) | by 1 Filters | (I:UTF-8/O:UTF-8)
2018-03-22 10:57:48,229 %1 DEBUG - '/user/' >> (UserModule.java:132).index : void | @Ok(jsp:jsp.user.list) @Fail(http:500) | by 1 Filters | (I:UTF-8/O:UTF-8)
2018-03-22 10:57:48,232 %1 DEBUG - '/user/delete' >> (UserModule.java:112).delete : Object | @Ok(json:{locked:'password|salt',ignoreNull:true}) @Fail(http:500) | by 1 Filters | (I:UTF-8/O:UTF-8)
2018-03-22 10:57:48,234 %1 DEBUG - '/user/query' >> (UserModule.java:121).query : Object | @Ok(json:{locked:'password|salt',ignoreNull:true}) @Fail(http:500) | by 1 Filters | (I:UTF-8/O:UTF-8)
2018-03-22 10:57:48,235 %1 DEBUG - '/user/update' >> (UserModule.java:102).update : Object | @Ok(json:{locked:'password|salt',ignoreNull:true}) @Fail(http:500) | by 1 Filters | (I:UTF-8/O:UTF-8)
2018-03-22 10:57:48,236 %1 DEBUG - '/user/logout' >> (UserModule.java:69).logout : void | @Ok(>>:/ ) @Fail(http:500) | by 1 Filters | (I:UTF-8/O:UTF-8)
2018-03-22 10:57:48,237 %1 DEBUG - '/user/login' >> (UserModule.java:49).login : Object | @Ok(json:{locked:'password|salt',ignoreNull:true}) @Fail(http:500) | by 0 Filters | (I:UTF-8/O:UTF-8)
2018-03-22 10:57:48,240 %1 DEBUG - '/user/profile/get' >> (UserProfileModule.java:55).get : UserProfile | @Ok(json:full) @Fail(jsp:jsp.500) | by 1 Filters | (I:UTF-8/O:UTF-8)
2018-03-22 10:57:48,240 %1 DEBUG - '/user/profile/' >> (UserProfileModule.java:201).index : UserProfile | @Ok(jsp:jsp.user.profile) @Fail(jsp:jsp.500) | by 1 Filters | (I:UTF-8/O:UTF-8)
2018-03-22 10:57:48,242 %1 DEBUG - '/user/profile/update' >> (UserProfileModule.java:130).update : void | @Ok(void ) @Fail(jsp:jsp.500) | by 1 Filters | (I:UTF-8/O:UTF-8)
2018-03-22 10:57:48,246 %1 INFO - Init file-pool by: E:/newworkspace/.metadata/.plugins/org.eclipse.wst.server.core/tmp1/wtpwebapps/nutzbook/WEB-INF/tmp/user_avatar [20000]
2018-03-22 10:57:48,248 %1 DEBUG - file-pool.home: 'E:\newworkspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp1\wtpwebapps\nutzbook\WEB-INF\tmp\user_avatar'
2018-03-22 10:57:48,250 %1 INFO - file-pool.cursor: 4
2018-03-22 10:57:48,255 %1 DEBUG - '/user/profile/avatar' >> (UserProfileModule.java:161).uploadAvatar : void | @Ok(>>:/user/profile) @Fail(jsp:jsp.500) | by 1 Filters | (I:UTF-8/O:UTF-8)
2018-03-22 10:57:48,256 %1 DEBUG - '/user/profile/avatar' >> (UserProfileModule.java:190).readAvatar : Object | @Ok(raw:jpg) @Fail(jsp:jsp.500) | by 1 Filters | (I:UTF-8/O:UTF-8)
2018-03-22 10:57:48,257 %1 DEBUG - '/user/profile/active/mail' >> (UserProfileModule.java:104).activeMail : Object | @Ok(json:full) @Fail(jsp:jsp.500) | by 1 Filters | (I:UTF-8/O:UTF-8)
2018-03-22 10:57:48,260 %1 DEBUG - '/user/profile/active/mail' >> (UserProfileModule.java:70).activeMailCallback : String | @Ok(raw ) @Fail(jsp:jsp.500) | by 0 Filters | (I:UTF-8/O:UTF-8)
2018-03-22 10:57:48,260 %1 INFO - Found 16 module methods
2018-03-22 10:57:48,260 %1 DEBUG - Localization: org.nutz.mvc.impl.NutMessageLoader('msg/') dft<zh_CN>
2018-03-22 10:57:48,262 %1 DEBUG - Found 1 resource by src( msg/ ) , regex( ^.+[.]properties$ )
2018-03-22 10:57:48,262 %1 DEBUG - Load Messages in 1 resource : [[NutResource[zh_CN/user.properties]]]
2018-03-22 10:57:48,263 %1 DEBUG - Message Loaded, size = 2
2018-03-22 10:57:48,264 %1 INFO - SessionBy --> org.nutz.integration.shiro.ShiroSessionProvider@7c03fde4
2018-03-22 10:57:48,264 %1 INFO - Setup application...
2018-03-22 10:57:48,264 %1 DEBUG - Get 'dao'<interface org.nutz.dao.Dao>
2018-03-22 10:57:48,265 %1 DEBUG - Load AopConfigure for anno=org.nutz.ioc.aop.Aop by type=org.nutz.ioc.aop.config.impl.AnnotationAopConfigration
2018-03-22 10:57:48,266 %1 DEBUG - >> Load definition name=dao
2018-03-22 10:57:48,267 %1 DEBUG - Loading define for name=dao
2018-03-22 10:57:48,269 %1 DEBUG - Found IocObject(dao) in JsonLoader(paths=[ioc/])
2018-03-22 10:57:48,269 %1 DEBUG - >> Make...'dao'<interface org.nutz.dao.Dao>
2018-03-22 10:57:48,277 %1 DEBUG - Load class org.nutz.dao.impl.NutDao without AOP
2018-03-22 10:57:48,277 %1 DEBUG - Save object 'dao' to [app]
2018-03-22 10:57:48,280 %1 DEBUG - Get 'dataSource'<>
2018-03-22 10:57:48,280 %1 DEBUG - >> Load definition name=dataSource
2018-03-22 10:57:48,280 %1 DEBUG - Loading define for name=dataSource
2018-03-22 10:57:48,284 %1 DEBUG - Found IocObject(dataSource) in JsonLoader(paths=[ioc/])
2018-03-22 10:57:48,284 %1 DEBUG - >> Make...'dataSource'<>
2018-03-22 10:57:48,301 %1 DEBUG - Load class com.alibaba.druid.pool.DruidDataSource without AOP
2018-03-22 10:57:48,301 %1 DEBUG - Save object 'dataSource' to [app]
2018-03-22 10:57:48,303 %1 DEBUG - Get 'conf'<>
2018-03-22 10:57:48,303 %1 DEBUG - >> Load definition name=conf
2018-03-22 10:57:48,303 %1 DEBUG - Loading define for name=conf
2018-03-22 10:57:48,304 %1 DEBUG - Found IocObject(conf) in JsonLoader(paths=[ioc/])
2018-03-22 10:57:48,304 %1 DEBUG - >> Make...'conf'<>
2018-03-22 10:57:48,305 %1 DEBUG - Load class org.nutz.ioc.impl.PropertiesProxy without AOP
2018-03-22 10:57:48,306 %1 DEBUG - Save object 'conf' to [app]
2018-03-22 10:57:48,310 %1 DEBUG - Found 3 resource by src( custom/ ) , regex( ^.+[.]properties$ )
2018-03-22 10:57:48,375 %1 INFO - {dataSource-1} inited
2018-03-22 10:57:48,376 %1 DEBUG - Get 'dataSource'<>
2018-03-22 10:57:48,400 %1 INFO - Init file-pool by: C:\Users\Administrator/.nutz/tmp/dao/ [200000]
2018-03-22 10:57:48,400 %1 DEBUG - file-pool.home: 'C:\Users\Administrator\.nutz\tmp\dao'
2018-03-22 10:57:48,401 %1 INFO - file-pool.cursor: 0
2018-03-22 10:57:48,408 %1 DEBUG - Jdbcs init complete
2018-03-22 10:57:48,408 %1 INFO - Get Connection from DataSource for JdbcExpert, if you lock at here, check your database server and configure
2018-03-22 10:57:48,576 %1 DEBUG - select expert : org.nutz.dao.impl.jdbc.mysql.MysqlJdbcExpert
2018-03-22 10:57:48,581 %1 DEBUG - JDBC Driver --> mysql-connector-java-5.1.40 ( Revision: 402933ef52cad9aa82624e80acbea46e3a701ce6 )
2018-03-22 10:57:48,581 %1 DEBUG - JDBC Name --> MySQL Connector Java
2018-03-22 10:57:48,581 %1 DEBUG - JDBC URL --> jdbc:mysql://127.0.0.1:3306/nutzbook
2018-03-22 10:57:48,662 %1 DEBUG - Mysql : character_set_client=utf8
2018-03-22 10:57:48,662 %1 DEBUG - Mysql : character_set_connection=utf8
2018-03-22 10:57:48,662 %1 DEBUG - Mysql : character_set_database=utf8
2018-03-22 10:57:48,662 %1 DEBUG - Mysql : character_set_filesystem=binary
2018-03-22 10:57:48,662 %1 DEBUG - Mysql : character_set_results=
2018-03-22 10:57:48,662 %1 DEBUG - Mysql : character_set_server=utf8
2018-03-22 10:57:48,662 %1 DEBUG - Mysql : character_set_system=utf8
2018-03-22 10:57:48,662 %1 DEBUG - Mysql : character_sets_dir=C:\Program Files\MySQL\MySQL Server 5.5\share\charsets\
2018-03-22 10:57:48,663 %1 DEBUG - Mysql : binlog_format=STATEMENT
2018-03-22 10:57:48,664 %1 DEBUG - Mysql : database=nutzbook
2018-03-22 10:57:48,664 %1 DEBUG - Mysql : user=root@localhost
2018-03-22 10:57:48,690 %1 DEBUG - Database info --> MYSQL:[MySQL - 5.5.44]
2018-03-22 10:57:48,699 %1 DEBUG - Found 17 resource by src( net/wendal/nutzbook/ ) , regex( ^.+[.]class$ )
2018-03-22 10:57:48,785 %1 DEBUG - SELECT COUNT(*) FROM t_user
2018-03-22 10:57:48,786 %1 DEBUG - Get 'nutQuartzCronJobFactory'<class org.nutz.integration.quartz.NutQuartzCronJobFactory>
2018-03-22 10:57:48,786 %1 DEBUG - >> Load definition name=nutQuartzCronJobFactory
2018-03-22 10:57:48,786 %1 DEBUG - Loading define for name=nutQuartzCronJobFactory
2018-03-22 10:57:48,787 %1 DEBUG - Found IocObject(nutQuartzCronJobFactory) in QuartzIocLoader@475413882
2018-03-22 10:57:48,787 %1 DEBUG - >> Make...'nutQuartzCronJobFactory'<class org.nutz.integration.quartz.NutQuartzCronJobFactory>
2018-03-22 10:57:48,789 %1 DEBUG - Load class org.nutz.integration.quartz.NutQuartzCronJobFactory without AOP
2018-03-22 10:57:48,789 %1 DEBUG - Save object 'nutQuartzCronJobFactory' to [app]
2018-03-22 10:57:48,790 %1 DEBUG - Get 'scheduler'<>
2018-03-22 10:57:48,790 %1 DEBUG - >> Load definition name=scheduler
2018-03-22 10:57:48,790 %1 DEBUG - Loading define for name=scheduler
2018-03-22 10:57:48,790 %1 DEBUG - Found IocObject(scheduler) in QuartzIocLoader@475413882
2018-03-22 10:57:48,790 %1 DEBUG - >> Make...'scheduler'<>
2018-03-22 10:57:48,790 %1 DEBUG - Save object 'scheduler' to [app]
2018-03-22 10:57:48,820 %1 INFO - Using default implementation for ThreadExecutor
2018-03-22 10:57:48,835 %1 INFO - Initialized Scheduler Signaller of type: class org.quartz.core.SchedulerSignalerImpl
2018-03-22 10:57:48,835 %1 INFO - Quartz Scheduler v.2.2.3 created.
2018-03-22 10:57:48,836 %1 INFO - RAMJobStore initialized.
2018-03-22 10:57:48,836 %1 INFO - Scheduler meta-data: Quartz Scheduler (v2.2.3) 'NutzbookScheduler' with instanceId 'NON_CLUSTERED'
Scheduler class: 'org.quartz.core.QuartzScheduler' - running locally.
NOT STARTED.
Currently in standby mode.
Number of jobs executed: 0
Using thread pool 'org.quartz.simpl.SimpleThreadPool' - with 3 threads.
Using job-store 'org.quartz.simpl.RAMJobStore' - which does not support persistence. and is not clustered.
2018-03-22 10:57:48,836 %1 INFO - Quartz scheduler 'NutzbookScheduler' initialized from default resource file in Quartz package: 'quartz.properties'
2018-03-22 10:57:48,836 %1 INFO - Quartz scheduler version: 2.2.3
2018-03-22 10:57:48,837 %1 DEBUG - Get 'jobFactory'<>
2018-03-22 10:57:48,837 %1 DEBUG - >> Load definition name=jobFactory
2018-03-22 10:57:48,837 %1 DEBUG - Loading define for name=jobFactory
2018-03-22 10:57:48,837 %1 DEBUG - Found IocObject(jobFactory) in QuartzIocLoader@475413882
2018-03-22 10:57:48,838 %1 DEBUG - >> Make...'jobFactory'<>
2018-03-22 10:57:48,838 %1 DEBUG - Load class org.nutz.integration.quartz.NutQuartzJobFactory without AOP
2018-03-22 10:57:48,838 %1 DEBUG - Save object 'jobFactory' to [app]
2018-03-22 10:57:48,839 %1 INFO - JobFactory set to: org.nutz.integration.quartz.NutQuartzJobFactory@66d606b4
2018-03-22 10:57:48,839 %1 INFO - Scheduler NutzbookScheduler_$_NON_CLUSTERED started.
2018-03-22 10:57:48,839 %1 DEBUG - batch acquisition of 0 triggers
2018-03-22 10:57:48,839 %1 DEBUG - Get 'conf'<>
2018-03-22 10:57:48,839 %1 DEBUG - job define name=net.wendal.nutzbook.quartz.job.CleanNonActiveUserJob cron=0 0/2 * * * ?
2018-03-22 10:57:48,846 %1 DEBUG - found cron job packages = net.wendal.nutzbook.quartz.job
2018-03-22 10:57:48,847 %1 DEBUG - batch acquisition of 1 triggers
2018-03-22 10:57:48,848 %1 DEBUG - Found 1 resource by src( net/wendal/nutzbook/quartz/job/ ) , regex( ^.+[.]class$ )
2018-03-22 10:57:48,848 %1 INFO - Nutz.Mvc[nutz] is up in 823ms
2018-03-22 10:57:48,849 %1 INFO - exclusionsPrefix = ^(/rs/|/druid/)
三月 22, 2018 10:57:48 上午 org.apache.coyote.AbstractProtocol start
信息: Starting ProtocolHandler ["http-bio-8080"]
三月 22, 2018 10:57:48 上午 org.apache.coyote.AbstractProtocol start
信息: Starting ProtocolHandler ["ajp-bio-8009"]
三月 22, 2018 10:57:48 上午 org.apache.catalina.startup.Catalina start
信息: Server startup in 2613 ms
2018-03-22 10:58:00,004 %1 DEBUG - Get 'cleanNonActiveUserJob'<class net.wendal.nutzbook.quartz.job.CleanNonActiveUserJob>
2018-03-22 10:58:00,004 %1 DEBUG - >> Load definition name=cleanNonActiveUserJob
2018-03-22 10:58:00,005 %1 DEBUG - Found IocObject(cleanNonActiveUserJob) in AnnotationIocLoader(packages=[net.wendal.nutzbook])
2018-03-22 10:58:00,005 %1 DEBUG - >> Make...'cleanNonActiveUserJob'<class net.wendal.nutzbook.quartz.job.CleanNonActiveUserJob>
2018-03-22 10:58:00,005 %1 DEBUG - Load class net.wendal.nutzbook.quartz.job.CleanNonActiveUserJob without AOP
2018-03-22 10:58:00,005 %1 DEBUG - Save object 'cleanNonActiveUserJob' to [app]
2018-03-22 10:58:00,006 %1 DEBUG - Get 'dao'<interface org.nutz.dao.Dao>
2018-03-22 10:58:00,006 %1 DEBUG - batch acquisition of 0 triggers
2018-03-22 10:58:00,006 %1 DEBUG - Calling execute on job DEFAULT.net.wendal.nutzbook.quartz.job.CleanNonActiveUserJob
2018-03-22 10:58:00,006 %1 DEBUG - clean Non-Active User , start
2018-03-22 10:58:00,018 %1 DEBUG - DELETE FROM user_profile WHERE uid>? AND ct<? AND (email_checked=? OR email IS NULL )
| 1 | 2 | 3 |
|----|---------------------|-------|
| 10 | 2018-03-21 10:58:00 | false |
For example:> "DELETE FROM user_profile WHERE uid>10 AND ct<'2018-03-21 10:58:00' AND (email_checked=false OR email IS NULL )"
2018-03-22 10:58:00,021 %1 DEBUG - delete 0 UserProfile
2018-03-22 10:58:00,024 %1 DEBUG - delete from t_user where id > 10 and not exists (select 1 from user_profile where t_user.id = uid ) and ct < ?
| 1 |
|---------------------|
| 2018-03-21 10:58:00 |
For example:> "delete from t_user where id > 10 and not exists (select 1 from user_profile where t_user.id = uid ) and ct < '2018-03-21 10:58:00'"
2018-03-22 10:58:00,026 %1 DEBUG - delete 0 User
2018-03-22 10:58:00,026 %1 DEBUG - clean Non-Active User , Done
3 回复
public class MainSetup implements Setup {
// 特别留意一下,是init方法,不是destroy方法!!!!!
public void init(NutConfig nc) {
Ioc ioc = nc.getIoc();
Dao dao = ioc.get(Dao.class);
// 如果没有createTablesInPackage,请检查nutz版本
Daos.createTablesInPackage(dao, "net.wendal.nutzbook", false);
Daos.migration(dao, User.class, true, false, false);
添加回复
请先登陆