20170317_ssh日志处理

 

log4j错误级别:

fatal:严重错误信息

error:错误信息

warn:警告信息

info:一般信息

debug:调试信息

 

log4j.properties

 1 ### direct log messages to stdout ###
 2 log4j.appender.stdout=org.apache.log4j.ConsoleAppender
 3 log4j.appender.stdout.Target=System.out
 4 log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
 5 log4j.appender.stdout.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L - %m%n
 6 
 7 ### direct messages to file hibernate.log ###
 8 #log4j.appender.file=org.apache.log4j.FileAppender
 9 #log4j.appender.file.File=hibernate.log
10 #log4j.appender.file.layout=org.apache.log4j.PatternLayout
11 #log4j.appender.file.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L - %m%n
12 
13 ### set log levels - for more verbose logging change 'info' to 'debug' ###
14 
15 log4j.rootLogger=error, stdout
16 
17 #log4j.logger.org.hibernate=info
18 #log4j.logger.org.hibernate=debug
19 
20 ### log HQL query parser activity
21 #log4j.logger.org.hibernate.hql.ast.AST=debug
22 
23 ### log just the SQL
24 #log4j.logger.org.hibernate.SQL=debug
25 
26 ### log JDBC bind parameters ###
27 #log4j.logger.org.hibernate.type=info
28 #log4j.logger.org.hibernate.type=debug
29 
30 ### log schema export/update ###
31 #log4j.logger.org.hibernate.tool.hbm2ddl=debug
32 
33 ### log HQL parse trees
34 #log4j.logger.org.hibernate.hql=debug
35 
36 ### log cache activity ###
37 #log4j.logger.org.hibernate.cache=debug
38 
39 ### log transaction activity
40 #log4j.logger.org.hibernate.transaction=debug
41 
42 ### log JDBC resource acquisition
43 #log4j.logger.org.hibernate.jdbc=debug
44 
45 ### enable the following line if you want to track down connection ###
46 ### leakages when using DriverManagerConnectionProvider ###
47 #log4j.logger.org.hibernate.connection.DriverManagerConnectionProvider=trace

springTest.java

 1 package cn.itcast.oa.test;
 2 
 3 import org.apache.commons.logging.Log;
 4 import org.apache.commons.logging.LogFactory;
 5 import org.hibernate.SessionFactory;
 6 import org.junit.Test;
 7 import org.springframework.context.ApplicationContext;
 8 import org.springframework.context.support.ClassPathXmlApplicationContext;
 9 
10 public class SpringTest {
11 
12     private ApplicationContext ac = new ClassPathXmlApplicationContext("applicationContext.xml");
13     
14     private Log log = LogFactory.getLog(getClass());
15     
16     @Test
17     public void testLog() throws Exception {
18         log.debug("这是debug信息");
19         log.info("这是info信息");
20         log.warn("这是warn信息");
21         log.error("这是error信息");
22         log.fatal("这是fatal信息");
23     }
24     
25     //测试SessionFactory
26     @Test
27     public void testSessionFactory() throws Exception {
28         SessionFactory sessionFactory = (SessionFactory) ac.getBean("sessionFactory");
29         System.out.println(sessionFactory);
30     }
31     
32     //测试Transaction
33         @Test
34         public void testTransaction() throws Exception {
35             TestService testService = (TestService) ac.getBean("testService");
36             testService.saveTwoUser();
37         }
38 }

jsp为什么放在web-inf下面:

为了不让直接访问到,jsp是一个半成品,是一个用来显示数据的模板,直接访问得到的是一个不完整的页面。

 

资源分类:

 

 

 =============================================================

第一段:设计接口。BaseDao

BaseDao测试:

 

 

 

 =========================================================================

第二段:设计实现类。BaseDaoImpl

=================================================================

第三段:实现方法里的内容

在子类实现上加@Repr

下图是子类实现的演示: getSession()直接调用即可。

 

 注意这里不要返回null

=================================================================

第四段:解决遗留问题

笨方法:构造器。

jdk1.5后增加了泛型,于是原来的Class就不能表示带泛型信息的类。于是增加了新的类:ParameterizedType,用ParameterizedType表示有类型参数的类。

 

 

 

 使用this.clazz = (Class) pt.getActualTypeArguments()[0];获得真实的类型参数。

 

END!!!

 

posted @ 2017-03-17 18:19  壹毫米的距离  阅读(189)  评论(0编辑  收藏  举报