自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(49)
  • 收藏
  • 关注

原创 读取配置文件的工具类

public final class PropUtil {    /** 日志记录 */    private static final Logger LOGGER = Logger.getLogger(PropUtil.class);    /** 属性列表 */    private static Properties properties;    /** 常量字符

2016-09-08 09:24:08 912

原创 cookie机制和session机制

一、cookie机制和session机制的区别具体来说cookie机制采用的是在客户端保持状态的方案,而session机制采用的是在服务器端保持状态的方案。同时我们也看到,由于才服务器端保持状态的方案在客户端也需要保存一个标识,所以session机制可能需要借助于cookie机制来达到保存标识的目的,但实际上还有其他选择,比如说重写 URL和隐藏表单域。二、会话cookie

2016-09-08 09:21:17 1096

转载 Log4J使用笔记

Log4J使用笔记Log4J是Apache的一个开放源代码的项目。通过使用Log4J,程序员可以控制日志信息输送的目的地,包括控制台,文件,GUI组件和NT事件记录器,也可以控制每一条日志的输出格式,或通过定义每一条日志信息的级别,更加细致地控制日志的生成过程。下面的代码是一个例子:    //Log4J    public void log4jDemo()    {     

2016-04-29 15:11:25 648

原创 Spring面向切面编程

连接点:已经拦截切入点:要拦截的方法。通过配置声明通知(增强):方法的增强,增强的逻辑操作织入:切面:Spring AOP的底层实现Jdk的动态代理:proxy和target是兄弟关系,实现同一个接口Cglib动态代理:proxy和target是父子关系。(不需要实现接口)     创建一个Enhancer     指定父     指定回调函数

2016-04-28 23:02:59 430

原创 spring

一.JDBCTemplate导入的jar//创建连接池 DriverManagerDataSource dmd=new DriverManagerDataSource();//往连接池里面设置4大参数     dmd.setDriverClassName("com.mysql.jdbc.Driver");     dmd.setUrl("jdbc:m

2016-04-28 23:01:58 244

原创 SSH(基于注解)

applicationContext.xml 中                                                                    AnnotationSessionFactoryBean">                       

2016-04-28 23:01:04 293

原创 SSH三大框架的整合 (基于xml)

Struts2和Spring的整合两种方式Struts2自己管理Action:(方式一) * Struts2框架自动创建Action的类.Action交给Spring管理:(方式二)可以在标签上通过一个伪类名方式进行配置:bookAction" method="{1}">在spring的配置文件中:      bookAction

2016-04-28 22:58:28 899

原创 shiro认证的流程

3.1shiro认证流程(掌握!!!)   1、subject.login(token);    token:令牌,包括账号和密码    token是根据当前用户请求的账号和密码去构造!    2、securityManager.login(token)    3、Authenticator.login(token) (重点理解部分)     Authenticat

2016-04-28 22:56:47 1552

转载 Hessian通信基础

Java学习之Hessian通信基础(2011-11-29 19:37:29)转载▼标签:javahessian通信rmi基础it分类: java一、首先先说Hessian是什么?    Hessian:hessian是一个轻量级的remoting onhttp工具,使用简单的方法提供了RMI的功能,相

2016-04-28 18:34:11 667

原创 HashMap实现原理分析

HashMap实现原理分析1. HashMap的数据结构数据结构中有数组和链表来实现对数据的存储,但这两者基本上是两个极端。      数组数组存储区间是连续的,占用内存严重,故空间复杂的很大。但数组的二分查找时间复杂度小,为O(1);数组的特点是:寻址容易,插入和删除困难;链表链表存储区间离散,占用内存比较宽松,故空间复杂度很小,但时间复杂度很

2016-04-28 18:32:21 216

转载 Linux

1 Linux安装1.1 安装环境环境:window7、VMware12 pro、CentOS6.5-desktop-64bit1.2 为什么选择CentOS主流:目前Linux操作系统主要应用于生产环境,主流企业级Linux系统仍是用RedHat或者CentOS免费:RedHat和CentOS差别不大,CentOS是一个基于RedHat Linux提供的可自由使用源代

2016-04-28 18:30:25 328

转载 Log4J实战

场景如下   由于项目要做一个统计分析与记录的功能,为了后期分析用户的一些行为,同时记录的东西要同时输出多处,并且可配置输出 想到了使用log4j,知道他是可以同时指定多个输出目的地,并且如有变更,直接修改配置文件。 关于log4j的基本概论及使用,见http://www.iteye.com/topic/378077,这个帖子讲的很细,归纳了很多东西 问题一:把登录用户每次

2016-04-28 18:28:56 319

原创 值栈

1.什么是值栈?      //获取值栈的三种方式       // ValueStack vs = (ValueStack) ServletActionContext.getRequest().getAttribute("struts.valueStack");       //ValueStack vs2 = (ValueStack) ServletActionContext.ge

2015-12-14 13:21:13 485

原创 Struts2中㡰自定义数据转换器,自定义拦截器,避免表单重复提交的总结

1.自定义拦截器      开发自定义类型转换的开发步骤( 继承StrutsTypeConverter类,重写两个方法)    * 编写类型转换器        > 实现TypeConverter接口,实现一个方法            * Object convertValue(Map context,Object target, Member member,String

2015-12-14 13:18:39 455

原创 Hibernate多表的映射

一对多表的映射编写的配置文件  编写映射的配置文件         * 在多的一方:                    * 在一的一方:                                                            一对多表的级联保存(cascade="save-update")      级联保存

2015-12-14 13:17:20 462

转载 Session的一级缓存

Session具有一个缓存,是一块内存空间,在这个内存空间存放了相互关联的java对象,这种位于Session缓存内的对象也被称为持久化对象,Session是负责根据持久化对象的状态变化来同步更新数据库的。  Session的缓存是内置的,不能被卸除的,也被称为Hibernate的第一级缓存。在正常情况下一级缓存是由Hibernate自动维护的,无需人工干预。(一)

2015-12-14 12:36:54 1547

原创 解决Get请求中文乱码的问题

//解决get请求中文乱码的问题/*** 先编码,在解码*  用iso-8859-1编码----然后再用utf-8解码*/String name = request.getParameter("username");String value = new String(name.getBytes("ISO-8859-1"),"UTF-8");System.out.prin

2015-12-02 14:54:06 319

原创 Servlet的重点知识总结

servlet:      1. servlet是什么?             就是运行在服务器端的java小程序。               1) 客户端发送请求至服务器端;2) 服务器将请求信息发送至 Servlet;3) Servlet 生成响应内容并将其传给服务器。响应内容动态生成,通常取决于客户端的请求;4) 服务器将响应返回给客户端。     

2015-12-02 10:59:29 6650 1

转载 文件的上传和下载

孤傲苍狼只为成功找方法,不为失败找借口!JavaWeb学习总结(五十)——文件上传和下载  在Web应用系统开发中,文件上传和下载功能是非常常用的功能,今天来讲一下JavaWeb中的文件上传和下载功能的实现。  对于文件上传,浏览器在上传的过程中是将文件以流的形式提交到服务器端的,如果直接使用Servlet获取上传文件的输入流然后再解析里面的请求参数是比较麻烦,所以一般选择采用

2015-11-27 18:37:38 426

原创 面试题---------分层初始化的顺序

1.父类静态代码块 (  java虚拟机加载类时,就会执行该块代码,故只执行一次)2 .子类静态代码块 (  java虚拟机加载类时,就会执行该块代码,故只执行一次)3. 父类属性对象初始化4.父类普通代码块(每次new,每次执行 )5. 父类构造函数(每次new,每次执行)6.子 类 属性对象初始化7.子类普通代码块(每次new,每次执行 

2015-10-13 18:15:28 656

原创 形式参数是引用类型的时候 返回值类型是引用类型的时候

总结:引用类型---->数组,类,接口形式参数是引用类型的时候:    如果是一个具体类名:要的是该类的对象或其子类对象   如果是一个抽象类:要的是该类的子类对象     如果是一个接口:要的是该接口的实现类 返回值类型是引用类型的时候:   如果是一个具体类名:返回的是该类的对象或其子类对象   如果是一个抽象类:返回的是该类的子类对象

2015-10-13 17:49:24 368

原创 局部内部类

/* * 局部内部类  面试题 * 为什么局部内部类访问成员变量。成员变量要被final修饰呢? * 1:防止使用后的数据发生改变 * 2:为了延长变量的声明周期。因为外部类的方法结束后,他方法的成员变量会消失,但是内部类会用到外部类的 * 变量。*/classOuter{     publicvoidmethod(){           

2015-10-13 17:44:56 287

转载 String s1 ; String s2=null ; String s3=”” ; String s4=new String(“”) ; 的区别。

Java中String  s1 ;  String  s2=null ;  String  s3=”” ;  String  s4=new String(“”) ; 的区别。======================================================================当声明为String  s1时声明一个字符串对象,分配了一个内

2015-10-13 17:43:18 1914

转载 抽象的(abstract)方法 是否可同时是 静态的(static),是否可同时是 本地方法(native),是否可同时被 synchronized修饰?

抽象的(abstract)方法  是否可同时是  静态的(static),是否可同时是 本地方法(native),是否可同时被 synchronized修饰? 答:都不能。抽象方法需要子类重写,而静态的方法是无法被重写的,因此二者是矛盾的。本地方法是由本地代码(如C代码)实现的方法,而抽象方法是没有实现的,也是矛盾的。synchronized和方法的实现细节有关,抽象方法不涉及实现

2015-10-13 17:36:09 3355

原创 分层初始化

class X{     Y y=new Y();public X (){     syso("X");}}-----------------------class Y{     public Y (){     syso("Y");}}------------------------                          

2015-10-13 17:33:24 462

原创 final 细节注意

classDemo{     finalint f;      {           f=1;      }     Demo(){           //f=1;     }}final的值在构造方法完毕后,该值必须是明确的。那么可以在那些地方给final赋值呢?A:定义的时候就直接给值了--->比较常用B:构造方法中。准确

2015-10-13 17:31:39 236

原创 面试题-----throw和throws是的区别 finally关键字及其面试题

面试题          A:编译期异常和运行期异常的区别?               编译期异常 必须要处理的,否则编译不通过               运行期异常 可以不处理,也可以处理          B:throw和throws是的区别               throw:                    在方法体中,后面跟的是异常对象名,并且只能是

2015-10-13 17:29:25 788

转载 null可以被强制类型转换成任意类型的对象

/*首先,我们要知道,静态的方法也是可以通过对象.来访问的,这一点很奇怪,但是确实是可以。其次,null可以被强制类型转换成任意类型的对象,于是通过它来执行静态方法,就可以理解了。*/publicclassTextClass {       privatestaticvoidtestMethod(){//如果吧ststic去掉就会报 NullPointe

2015-10-13 17:26:45 7117

转载 传递还是值传递

在java中String,对象,Integer(包装类型的)关于引用传递还是值传递场景:原理知识:测试用例测试说明:疑问: 场景:     大家都知道基本的数据类型,int,float等等这种是按值传递的。但是对于String,对象,Integer是怎样传递呢?原理知识:     如果参数类型是原始类型,那么传过来的就是这个参数的一个副本,也就是这个原始参数的值

2015-10-13 17:25:19 271

转载 Collection 和 Collections的区别。

Collection 和 Collections的区别。  Collections是个java.util下的类,它包含有各种有关集合操作的静态方法。  Collection是个java.util下的接口,它是各种集合结构的父接口List, Set, Map是否继承自Collection接口? List,Set是 Map不是  ArrayList和Vector的区别。

2015-10-10 17:26:11 314

转载 Unicode编码

Java中无论是汉字还是英文字母都是用Unicode编码来表示的,一个Unicode码是16位,每字节是8位,所以一个Unicode码占两字节。但是英文字母比较特殊,源自于8位(1字节)的ASCII吗,于是在Unicode码仅使用了低8位(1字节)就可以表示,高8位的话不使用也无所谓。所以char c='a'; System.out.println(c.getBytes().lenth())

2015-10-04 22:49:46 228

转载 常见的数据结构的优缺点

ArrayList 和Vector是采用数组方式存储数据,此数组元素数大于实际存储的数据以便增加和插入元素,都允许直接序号索引元素,但是插入数据要设计到数组元素移动等内存操作,所以索引数据快插入数据慢,Vector由于使用了synchronized方法(线程安全)所以性能上比ArrayList要差,LinkedList使用双向链表实现存储,按序号索引数据需要进行向前或向后遍历,但是插入数据时只需要

2015-10-03 16:18:49 3358

转载 Java中普通代码块,构造代码块,静态代码块区别及代码示例

Java中普通代码块,构造代码块,静态代码块区别及代码示例//执行顺序:(优先级从高到低。)静态代码块>mian方法>构造代码块>构造方法。其中静态代码块只执行一次。构造代码块在每次创建对象是都会执行。1 普通代码块 1 //普通代码块:在方法或语句中出现的{}就称为普通代码块。普通代码块和一般的语句执行顺序由他们在代码中出现的次序决定--“先出现先执行” 2 pub

2015-10-02 12:29:04 201

转载 静态代码块-非静态代码块-默认构造方法

相同点:都是在JVM加载类时且在构造方法执行之前执行,在类中都可以定义多个,    一般在代码块中对一些static变量进行赋值。不同点:静态代码块在非静态代码块之前执行(静态代码块—>非静态代码块—>构造方法)。    静态代码块只在第一次new执行一次,之后不再执行,而非静态代码块在每new    一次就执行一次。非静态代码块可在普通方法中定义(不过作用不大);而静态代码块不行

2015-10-02 12:10:11 249

转载 集合类说明及区别

集合类说明及区别Collection├List│├LinkedList│├ArrayList│└Vector│ └Stack└SetMap├Hashtable├HashMap└WeakHashMapCollection接口  Collection是最基本的集合接口,一个Collection代表一组Object,即Collection的元素(E

2015-10-01 11:35:08 158

原创 int 和 string之间的相互转换

//int-->string a.+"" ;  b:string.valueOf() c.toString()的方法// int i=14;// System.out.println(i+"");//讲int-->转换成string最简单的方式// // String valueOf = String.valueOf(i);//掌握此方法,可以将任何类型的转化成字符类型// S

2015-09-27 17:58:35 659

原创 string 和strngbuffer间的相互转换

// String s="sadfWQEQ233xx";// StringBuffer sb= new StringBuffer(s);// sb.append("qqq");// System.out.println(sb.toString());//字符串删除功能// sb.deleteCharAt(5);// System.out.println(sb);// S

2015-09-27 17:09:37 787

转载 String与StringBuffer的区别

String与StringBuffer的区别简单地说,就是一个变量和常量的关系。StringBuffer对象的内容可以修改;而String对象一旦产生后就不可以被修改,重新赋值其实是两个对象。StringBuffer的内部实现方式和String不同,StringBuffer在进行字符串处理时,不生成新的对象,在内存使用上要优于String类。所以在实际使用时,如果经常需要对一个字符串进行修

2015-09-27 11:51:39 239

原创 内部类和外部类知识点

//在外部类的成员方法中调用内部类对象的方法//实现:在外部创建一个方法,然后通过这个方法去间接的调用内部类的方法!//内部的内容是可以直接访问到外面的东西的!class  OuterInerText{public static void main(String[] args) {//调用内部类方法- Outer o=new Outer();//创建外部类对象o

2015-09-22 11:21:38 587

原创 重载和重写的区别

重载 Overloading方法重载:让类以统一的方式处理不同数据类型的手段。一个类中可以创建多个方法,它们具有相同的名字,但具有不同的参数和不同的定义。调用方法时通过传递给它们的不同参数个数和参数类型来决定具体使用哪个方法。返回值类型可以相同也可以不相同,无法以返回型别作为重载函数的区分标准。  重写 Overriding(大多用在继承中,子类方法重写了父类方法)子类

2015-09-22 09:13:59 364

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除