为网站开启HTTPS协议

1.为什么要使用HTTPS协议

目前互联网中HTTP是一种非常不安全的明文传输协议,在用户使用HTTP协议访问网站时,其通信数据非常容易被中间人获取。由于传输数据没有被加密、用户数据可以直接被恶意攻击者获取。
使用SSL证书可以有效的保护客户端与服务器间通信内容不被轻易获取。HTTPS加密传输协议通过SSL加密通道对客户端与服务器间数据进行加密后进行传输,即便被人抓包也很难获取其通信内容。

继续阅读为网站开启HTTPS协议

在使用xstream解析xml文件时抛出com.thoughtworks.xstream.io.StreamException: : 前言中不允许有内容 的异常

在使用xstream时解析文件一直都很正常,但是突然有一天部分xml文件解析时,会抛出com.thoughtworks.xstream.io.StreamException: : 前言中不允许有内容 的异常。

1

继续阅读在使用xstream解析xml文件时抛出com.thoughtworks.xstream.io.StreamException: : 前言中不允许有内容 的异常

解决Struts2项目的跨域问题

在开发过程中,可能会遇到需要对Struts2的项目进行跨域访问。Ajax对于远程调用会限制为同域名同端口链接可以进行异步访问。但需要跨域调用时,会出现不能返回数据的情况。

例:通过Ajax请求其他域名的站点,返回错误提示2

在浏览器控制台中会显示报错:

2 继续阅读解决Struts2项目的跨域问题

1.Java内存区域与内存溢出异常

在Java与C语言之间有着一个比较大的区别在于内存划分,对于C语言程序也来说,他们对于内存拥有着绝对的控制权,可以轻易的分配内存和释放内存。但是同时也存在着一些弊端,如在内存使用后没有及时、正确的释放掉空间,很容易造成内存泄漏和内存溢出的问题。这点在Java编程中,内存的分配和释放通过JVM自动分配,在符合垃圾回收的条件下JVM自动释放内存中的垃圾。

Java虚拟机在内存的使用上将所管理的内存空间划分为多个区域,每一个区域有着各自不同的用途。Java虚拟机内存可以分为几大部分,如图。javamemory 继续阅读1.Java内存区域与内存溢出异常

6.在Spring AOP中自动创建代理

在Spring中除了手动配置ProxyFactoryBean之外,还提供了基于BeanPostProcessor的自动代理创建器的实现类,通过匹配一些规则自动在容器中实例化Bean时,为匹配的目标对象生成代理实例。

在Spring中代理创建器一共可以分为三类:

  1. 基于Bean的name规则自动代理创建器
  2. 基于Advisor匹配规则的自动代理创建器
  3. 基于Bean中AspectJ注解标签的自动代理创建器

继续阅读6.在Spring AOP中自动创建代理

4.在Spring中创建增强

增强(Advice)是Spring AOP中最为基础的一个概念,增强即在AOP创建切面时需要织入目标对象的代码块,同时,在增强中又包含了增强相对于连接点的位置信息。

增强的类型(均为接口)

  1. 前置增强 BeforceAdvice
  2. 后置增强 AfterReturningAdvice
  3. 环绕增强 MethodInterceptor
  4. 异常抛出增强 ThrowsAdvice
  5. 引介增强 IntroductionInteceptor

继续阅读4.在Spring中创建增强

3.Spring中的AOP术语

Sping中的AOP即面向切面编程(Aspect Oriented Programing),与传统的OOP的不同之处在于,AOP可以很好的解决许多在OOP中实现起来比较困难的功能。例如在多个类中需要使用相同代码时,使用OOP开发会带来大量重复性代码,不但增加了开发人员的工作量,代码的维护也是很大问题,如果这些相同代码均需要修改,很容易出现疏漏和差错。

AOP可以将相同逻辑过程的代码剥离出来,通过代理工厂将需要处理的类进行增强后返回给对象。 继续阅读3.Spring中的AOP术语

2.Spring的Bean配置

在Spring框架中,提供了三种Bean配置方式:基于XML配置、基于注解配置、基于Java类配置。这三种配置针对不同的使用需求,有着各自的适用情况。一般情况下,项目中会使用XML+注解的方式进行配置,项目中引入的三方框架是用XML进行配置,独立开发的代码中使用注解方式进行配置。 继续阅读2.Spring的Bean配置

1.Spring IoC容器

IoC即控制反转(Inverse of Control)是Spring容器的内核,AOP、声明式事务都是在此基础上建立起来的。

在传统代码中,对象的生成由代码直接控制,一旦程序发布之后,如果在没有源码的情况下,是不能够对应用进行扩展的。Spring通过使用配置文件描述了Bean与Bean之间的依赖关系,使用Java反射对Bean进行实例化。将Bean之间的装配权力有代码转到了容器外部,即为控制反转。 继续阅读1.Spring IoC容器