Log4j 配置记录

日志输出级别,共有5级:

  1. FATAL
  2. ERROR
  3. WARN
  4. INFO
  5. DEBUG

Appender 为日志输出目的地,Log4j提供的appender有以下几种:

  1. org.apache.log4j.ConsoleAppender(控制台)
  2. org.apache.log4j.FileAppender(文件)
  3. org.apache.log4j.DailyRollingFileAppender(每天产生一个日志文件)
  4. org.apache.log4j.RollingFileAppender(文件大小到达指定尺寸的时候产生一个新的文件)
  5. org.apache.log4j.WriterAppender(将日志信息以流格式发送到任意指定的地方)

日志输出格式,Log4j提供的layout有以下几种:

  1. org.apache.log4j.HTMLLayout(以HTML表格形式布局)
  2. org.apache.log4j.PatternLayout(可以灵活地指定布局模式)
  3. org.apache.log4j.SimpleLayout(包含日志信息的级别和信息字符串)
  4. org.apache.log4j.TTCCLayout(包含日志产生的时间、线程、类别等等信息)

打印参数,Log4J采用类似C语言中的printf函数的打印格式格式化日志信息,如下:

  • %m - 输出代码中指定的消息
  • %p - 输出优先级,即DEBUG,INFO,WARN,ERROR,FATAL
  • %r - 输出自应用启动到输出该log信息耗费的毫秒数
  • %c - 输出所属的类目,通常就是所在类的全名
  • %t - 输出产生该日志事件的线程名
  • %n - 输出一个回车换行符,Windows平台为"\r\n",Unix平台为"\n"
  • %d - 输出日志时间点的日期或时间,默认格式为ISO8601,也可以在其后指定格式,比如:%d{yyy MMM dd HH:mm:ss , SSS},输出类似:2002年10月18日 22:10:28 , 921
  • %l - 输出日志事件的发生位置,相当于%c.%M(%F:%L)包括类目名、发生的线程,以及在代码中的行数。举例:Testlog4.main(TestLog4.java: 10 )
  • %M - 输出产生日志信息的方法名
  • %F - 输出日志信息产生时所在的文件名称
  • %L - 输出代码中的行号
  • %x - 输出当前线程相关联的NDC(嵌套诊断环境),尤其用到像java Servlet这样的多客户多线程的应用中

格式化输出信息

可以在%与模式字符之间加上修饰符来控制其最小宽度、最大宽度、和文本的对齐方式。

  • %20c:指定输出category的名称,最小的宽度是20,如果category的名称小于20的话,默认的情况下右对齐。
  • %-20c:指定输出category的名称,最小的宽度是20,如果category的名称小于20的话,"-"号指定左对齐。
  • %.30c:指定输出category的名称,最大的宽度是30,如果category的名称大于30的话,就会将左边多出的字符截掉,但小于30的话也不会有空格。
  • %20.30c:如果category的名称小于20就补空格,并且右对齐,如果其名称长于30字符,就从左边较远输出的字符截掉。

代码中调用

 

Maven/Eclipse 搭建ssm(spring+spring mvc+mybatis)

  1. 安装Maven:Maven 安装及更换阿里云仓库
  2. 安装Eclipse Spring IDE 支持:Eclipse 安装Spring IDE支持
SSM的系统架构

SSM的系统架构

【整合概述】

第一步:

  • MyBatis和Spring整合,通过Spring管理mapper接口。
  • 使用mapper的扫描器自动扫描mapper接口在Spring中进行注册。

第二步:

  • 通过Spring管理Service接口。
  • 使用配置方式将Service接口配置在Spring配置文件中。
  • 实现事务控制。

第三步:

  • 由于SpringMVC是Spring的模块,无需整合这两个。

一、创建ssm项目

选择建立MavenProject 选择File -> New -> Other,在New窗口中选择 Maven -> Maven Project;点击next,如下图 create1create2 create3输入Group ID和 Artifact ID,以及Package,具体Group ID和 Artifact ID代表什么,可以去阅读《Maven 实战》,Group ID相当于一个组织,而Artifact ID相当于这个组织下的一个具体项目,Packege的话会根据你的Group ID和Artifact ID生成一个默认的名称,就用默认的就可以,如下图create4点finish之后,项目结构如下create5若目录结构和上面的有差别,那么将perspective改成Java模式就好了。上面的目录结构离标准的maven web结构还有一点差别,少了一个文件夹src/test/resources,我们手动创建下,右键项目根目录点击New -> Source Folder,建出这个文件夹,如下图:create6Finish之后,项目结构图如下所示: create7

把项目变成Dynamic Web项目右键项目,properties --》Project Facets,点击Convert to faceted fro,勾上Dynamic Web Module,并将Version为2.3。(3.0为Java7的)。

设置部署,设置完成效果图create8

二、构建框架

在pom.xml中添加所需要的jar包,见文件:pom.xml,如果不知道可以在:http://maven.aliyun.com/nexus获取,成功后如图:jar

三、配置文件

web.xml

 

SQL Server之存储过程(PROCEDURE )

什么是存储过程呢?

存储过程就是作为可执行对象存放在数据库中的一个或多个SQL命令。
通俗来讲:存储过程其实就是能完成一定操作的一组SQL语句。

那为什么要用存储过程呢?

  1. 存储过程只在创造时进行编译,以后每次执行存储过程都不需再重新编译,而一般SQL语句每执行一次就编译一次,所以使用存储过程可提高数据库执行速度。
  2. 当对数据库进行复杂操作时,可将此复杂操作用存储过程封装起来与数据库提供的事务处理结合一起使用。
  3. 存储过程可以重复使用,可减少数据库开发人员的工作量。
  4. 安全性高,可设定只有某些用户才具有对指定存储过程的使用权。

无参数存储过程

有参数存储过程:

全局变量:全局变量也称为外部变量,是在函数的外部定义的,它的作用域为从变量定义处开始,到本程序文件的末尾。

在内部直接给变量设置默认值

把变量的内容输出,使用output

局部变量:也称为内部变量。局部变量是在函数内作定义说明的。其作用域仅限于函数内部,离开该函数后再使用这种变量是非法的。

  • 局部变量的定义:必须先用Declare命令定以后才可以使用,declare{@变量名 数据类型}
  • 局部变量的赋值方法:set{@变量名=表达式}或者select{@变量名=表达式}
  • 局部变量的显示:select @变量名

总结:

 

Java 正则表达式

什么是正则表达式?

正则表达式的定义:这是一种字符串的语法规则,是一种可以用于模式匹配和替换的规则,主要用于文本和字符串的处理(匹配,查找,替换,判断字符串)。一个正则表达式是由普通的字符(a~z)以及特殊字符(元字符)组成的文字模式,用以描述在查找文字主体时待匹配的一个或多个字符串。下面我们会介绍一些常用的元字符

正则表达式的元字符

元字符的定义:元字符:元字符使得正则表达式具有处理能力,指的是那些在正则表达式中具有特殊意义的专用字符,可以规定其前导字符在目标对象中的出现模式

元字符 在正则表达式中的写法 意义
. . 任何一个字符
\d \\d 0-9之间的任意一个数字
\D \\D 任何一个非数字字符
\s \\s 空格类字符'\t','\n'等等
\S \\S 非空格类字符
\w \\w 可用于标识符的字符,不包括美元符
\W \\W 不能可用于标识符的字符
\p{Lower} \\p[Lower] 小写字母[a~z]
\p{Upper} \\p{Upper} 大写字母[A~Z]
\p{ASCII} \\p{ACSII} ASCII字符
\p{Alpha} \\p{Alpha} 字母
\p{digit} \\p{digit} 数字字符[0~9]
\p{Alnum} \\p{Alnum} 字母或数字
\p{Punct} \\p{Punct} 标点符号
\p{graph} \\p{graph} 可视字符,\p{Alnum},\p{Punct}
\p{Print} \\p{Print} 可打印字符
\p{Blank} \\p{Blank} 空格或制表符
\p{Cntrl} \\p{Cntrl} 控制字符[\x00~\x1F\x7F]

Read more

Android 开发环境搭建

平台 Android Studio 软件包
Windows android-studio-bundle-145.3360264-windows.exe 包含 Android SDK (推荐)
android-studio-ide-145.3360264-windows.exe 无 Android SDK
android-studio-ide-145.3360264-windows.zip 无 Android SDK,无安装程序
Mac OS X android-studio-ide-145.3360264-mac.dmg
Linux android-studio-ide-145.3360264-linux.zip
平台 SDK 工具包
Windows installer_r24.4.1-windows.exe
android-sdk_r24.4.1-windows.zip 无安装程序
Mac OS X android-sdk_r24.4.1-macosx.zip
Linux android-sdk_r24.4.1-linux.tgz

Android SDK在线更新镜像服务器

  1. 中国科学院开源协会镜像站地址:
    • IPV4/IPV6: mirrors.opencas.cn 端口:80
    • IPV4/IPV6: mirrors.opencas.org 端口:80
    • IPV4/IPV6: mirrors.opencas.ac.cn 端口:80
  2. 上海GDG镜像服务器地址:
    • sdk.gdgshanghai.com 端口:8000
  3. 北京化工大学镜像服务器地址:
    • IPv4: ubuntu.buct.edu.cn/ 端口:80
    • IPv4: ubuntu.buct.cn/ 端口:80
    • IPv6: ubuntu.buct6.edu.cn/ 端口:80
  4. 大连东软信息学院镜像服务器地址:
    • mirrors.neusoft.edu.cn 端口:80

使用方法:

  1. 启动 Android SDK Manager ,打开主界面,依次选择『Tools』『Options...』,弹出『Android SDK Manager - Settings』窗口;
  2. 『Android SDK Manager - Settings』窗口中,在『HTTP Proxy Server』『HTTP Proxy Port』输入框内填入上面镜像服务器地址(不包含http://,如下图)和端口,并且选中『Force https://... sources to be fetched using http://...』复选框。设置完成后单击『Close』按钮关闭『Android SDK Manager - Settings』窗口返回到主界面;
  3. 依次选择『Packages』『Reload』

android-sdk-manager

About

oye~

blog information

  • 日志总数:229 篇
  • 评论数目:416 条
  • 建站日期:2009-12-18
  • 运行天数:2545 天
  • 标签总数:153 个
  • 最后更新:2016-12-4