自定义博客皮肤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)
  • 资源 (3)
  • 收藏
  • 关注

原创 JavaMail

电子邮件是一种异步通信方式,电子邮件把邮件发送到收件人使用的邮件服务器,并放在收件人邮箱中,收件人可以随时上网到自己使用的邮件服务器进行读取。一个电子邮件系统主要有三个构建,分别为用户代理、邮件服务器和电子邮件协议(SMTP、POP3、IMAP)。 用户代理:用户与电子邮件系统的接口,用户代理使使用户能够通过一个友好的接口来发送和接收邮件,如Outlook、Foxmail等。邮件服

2015-09-17 00:48:20 5524

原创 JSTL

JSTL是sun公司开发的一套标签库,主要为基本输入输出、流程控制、迭代操作和URL操作提供了定制标签,从而替换页面中的脚本代码。1、核心标签库JSTL核心标签库总共有13个,分为4类,如下表类别标签表达式控制out、set、remove、catch流程控制if、choose、when、othe

2015-09-01 15:31:32 540

原创 EL表达式

EL(Expression Language)是jsp2.0的一个主要组件,在jsp页面中提供了简化访问数据和静态方法的机制。EL表达式的语法格式为${expression},在使用EL表达式时不需要引入JSTL标签,除非使用迭代标签.1、存取数据EL提供”.”和”[]”两种运算符来存取数据。当要存取的属性名称中包含一些特殊字符,如.、?或全部是数字时,就一定要使用”[]”来存取数据,

2015-09-01 15:28:53 928

原创 JavaBean

JavaBean是为了减少JSP中嵌套的Java语言而按一定规则编写的Java类,其目的是为了实现HTML与Java的分离,该类封装了数据和一些经常重复使用的方法。其规则如下: JavaBean是一个public类;JavaBean必须有一个不带参数的构造方法; 属性必须私有化;JavaBean中的私有属性,必须通过public类型的方法供其他程序使用,可以通过访问器和更改器进行操作,

2015-09-01 00:24:48 602

原创 jsp

在开发过程中,servlet做界面非常不便,这时把servlet包装一下,产生了jsp,如下然而servlet并没有丢弃,在实际开发中servlet通常用作控制处理;jsp做界面,比较符合mvc模式。1、jsp语法(1) (2)里面可以嵌套java片段,这些片段最终被翻译在servlet的service函数中。所以尽管有多个但还是相当于一个<% %>。由此可见,在里面定

2015-09-01 00:04:34 918

原创 文件上传下载

1、文件上传文件上传下载本质是通过Socket的字节流来传输数据的。所以,对于文件上传,我们可以从HttpRequest对象获取输入流,进而获取上传文件的内容。但是采用ServletAPI并不能获取获取对应文件的字节流,而是获取整个Socket的字节流,里面包括提交的参数、上传文件内容以及其他附加信息。Servlet API上传文件,代码如下protected void doPos

2015-08-31 22:15:02 968

原创 图片验证码

图片验证码1、为什么需要验证码WEB站点有时会碰到客户机恶意攻击,其中一种很常见的攻击手段就是身份欺骗.它通过在客户端脚本写入一些代码,然后利用客户机在网站、论坛反复登录来嗅探一些用户名和密码;或者创建一个HTML窗体,其窗体如果包含了注册窗体或发帖窗体等相同的字段,然后利用“Http-post”传输数据到服务器。服务器会执行相应的操作,提交垃圾数据等,严重浪费服务器系统资源。而现在一

2015-08-31 20:07:14 2600 2

原创 网站盗链

1、为什么会产生盗链在浏览网页时,一个完整的页面并不是一次全部传送到客户端的。如果请求的是一个带有许多图片和其他信息的页面,那么最先的一个http请求被传送回来的是这个页面的文本,然后客户端的浏览器对这段文本解释执行,发现其中还有图片,那么客户端的浏览器会再次发送http请求,当这个请求被处理后,请求的图片会被传送到客户端,然后浏览器会把这个图片放到正确的位置,就这样一个完整的页面也许要发送多

2015-08-31 19:19:37 2864

原创 表单重复提交

重复提交在网速慢的情况下,用户可能会重复提交表单;或者通过刷新来重复提交表单。在很多系统中是必须要避免重复刷新和重复提交的,以避免出现重复记录的问题。解决重复提交的方案,可以在客户端,也可以在服务端。在客户端,可以通过js变量来标记用户是否提交过请求,若提交过,则不允许再次提交;但是在BS架构中,客户端的安全机制是不值得信赖的。安全可靠的处理须是在服务端进行。在服务器端防止用户

2015-08-31 18:59:20 460

原创 中文乱码

注:本文主要摘自《深入分析Java Web技术内幕》-许令波著     中文乱码1、常见编码格式1)      ASCII码ASCII码,总共有128个,用一个字节的低7位来表示,0-31是控制字符(换行、回车等),32-126是打印字符,可以通过键盘输入并且能够显示出来。2)      ISO-8859-1128个字符显然是不够用的,于是ISO组织在ASCII码基础上又指

2015-08-31 16:11:11 10881

原创 ServletContext

ServletContextServletContext:WEB容器在启动时,它会为每个WEB应用创建一个对应的ServletContext对象,它代表当前WEB应用。其作用域比request、cookie、session都要大,是web应用的一个公用空间,可以被所有的Servlet访问。如何获取ServletContext?ServletContext对象保存在ServletConfig

2015-08-30 13:57:06 491

原创 Cookie、Session

1、       Cookie、Session每个用户在使用浏览器与服务器进行会话的过程中,不可避免各自会产生一些数据,服务器要想办法为每个用户保存这些数据,以跟踪用户的状态。6.1、CookieCookie:是客户端技术,服务器把每个用户的数据以Cookie的形式返回给用户各自的浏览器(不同的浏览器不会共享cookie,即不同的浏览器各自保存cookie,而且每个浏览器都有保存Coo

2015-08-30 11:40:35 786

原创 Listener

Listener在Servlet容器中,可以通过监听器来监听容器事件的变化,如监听ServletContext实例生命周期的变化以及ServletContext实例中属性的变化;此外还可以监听HttpSession对象的生命周期变化情况以及HttpSession中属性的变化情况。在使用监听器时需要实现监听器的接口,当某个事件发生时会调用相应监听器实例的相关方法,监听器接口主要有:l

2015-08-30 10:20:21 690

原创 Filter

Filter过滤器顾名思义位于中间层起过滤的作用,用于拦截请求或响应信息,为JaveWeb提供预处理的机会,增加JavaWeb应用程序的灵活性。过滤器并不是Servlet,而是先于与之关联的Servlet或JSP页面运行的程序,以实现过滤功能,常见的过滤操作有访问权限控制、编码转换、数据加密解密等。过滤器可以对用户的请求做出处理。处理完成后,可以继续交给下一个过滤器继续处理,这样就

2015-08-29 22:17:02 722

原创 Servlet

3、ServletServlet是JavaWeb的核心,JSP以及其他优秀的web框架都是基于Servlet实现的。Servlet是用Java编写的与平台无关的服务端组件,是基于请求-响应模式工作的,运行在Servlet容器(反射机制)中,其生命周期由Servlet容器管理。Servlet实例通常用做控制器,根据不同的请求,经过处理后,将处理结果返回到客户端或转发给其他Servlet组件。

2015-08-29 19:21:30 872

原创 Java Web应用目录结构

Java Web应用目录结构Java web应用部署时目录结构必须满足下列要求:只要部署时web应用满足上述目录结构要求,就可以将web项目部署在任何servlet容器中。在开发中,往往使用Tomcat作为servlet服务器,Tomcat的主要目录有:l  bin目录:启动和关闭tomcat的批处理文件和shell脚本文件;l  conf目录:主要存放配置文件,有se

2015-08-29 18:58:23 4640

原创 HTTP协议

HTTP协议Web请求、响应的核心是HTTP协议。HTTP是一个应用层的协议,主要有如下特点:1)     客户端-服务端模式(请求-响应模式);2)     简单快速:客户端向服务器发送请求时,只需传送请求方法和URL;3)     无状态:HTPP协议是无状态的,在每次请求-响应完成后,服务器将断开TCP连接;1、  URLHTTP是基于请求-响应的、无状态的、基于TC

2015-08-29 12:56:20 797

原创 Web请求过程

Web请求过程当用户在浏览器中输入一个URL(如www.baidu.com)进行网页浏览时,将会发生一系列的操作。大致流程如下:1)     域名解析当用户输入域名后,需要将域名转换成正确的IP地址,才能够访问web服务器。首先会查询本地域名hosts文件,若存在对应域名的IP地址,就直接使用。若hosts文件中没有对应域名的IP地址,则向DNS域名服务器发送请求,

2015-08-29 10:42:19 897

原创 JPA 缓存

JPA  缓存对于JPA2.0,缓存分为一级缓存和二级缓存(JPA1.0只支持一级缓存)。二级缓存通常是用来提高应用程序性能的,它可以避免访问以已经从数据库加载的数据,提高访问未被修改数据对象的速度。持久化上下文就是JPA的一级缓存,通过在持久化上下文中存储持久化状态实体的快照,既可以进行脏检测,还可以当做持久化实体的缓存。一级缓存属于请求范围级别的缓存,如下JPA二级缓存是跨

2015-08-29 00:01:54 12521

原创 JPA与Spring集成

persistence.xml xmlversion="1.0"encoding="UTF-8"?>persistenceversion="2.0"xmlns="http://java.sun.com/xml/ns/persistence"             xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

2015-08-28 12:31:38 1961

原创 JPA 事务管理

事务管理EntityManager对象的事务管理方式有两种,分别为JTA和RESOURCE_LOCAL,即JavaTransaction API方法和本地事务管理。除此之外,不同类型的EntityManager对象,事务类型也是不同的,如下表 Java EE环境Java SE 环境EJB容器Web容器

2015-08-28 12:29:11 1575

原创 JPQL

5、       JPQLJPQL(JavaPersistence Query Language),是基于实体的查询,所查询的内容都是实体或实体属性。5.1、查询实体SELECT c FROM Customer cJPQL语句与SQL基本类似,但它是基于实体的查询。在初次使用时,需要注意以下几个问题。1)     实体名和属性区分大小写;2)     JPQL中的保留关键字

2015-08-28 12:26:17 10022 1

原创 JPA Query

4、       Query查询是JPA中重要的内容,JPA中可以执行两种方式的查询,一种是使用JPQL,一种是使用NativeSQL。其中JPQL是基于Entity对象的查询,可以消除不同数据库SQL语句的差异;本地SQL是基于传统的SQL查询,是对JPQL查询的补充。JPA中执行查询的步骤如下:1)     编写查询语句SELECT s FROM Student s2)

2015-08-27 20:53:40 14302

原创 JPA实体管理器

3、       实体管理器在JPA规范中,EntityManager是所有持久化操作的中枢。实体作为普通Java对象,只有在调用EntityManager将其持久化后,才会变成持久对象。根据EntityManager对象的管理方式,有以下两种类型:l  容器托管容器托管的EntityManager对象最简单,不需要考虑EntityManager的连接和释放,以及事务的管理,这些操

2015-08-27 18:11:34 2143 1

原创 JPA实体关系映射

1、       实体关系映射实体关系是指实体与实体之间的关系,从方向上分为单向关联和双向关联,从实体数量上分为一对一、一对多、多对多等。对于任何两个实体,都要从这两个方面区分它们之间的关系。单向关联是一个实体中引用了另外一个实体,也即通过一个实体可以获取另一个实体对象的引用;双向关联是两个实体之间可以相互获取对方对象的引用。2.1、一对一学生和身份证是一对一的关系,下面将从单向关

2015-08-27 18:09:54 4768

原创 JPA 实体映射

1、       实体映射@Entity@Table(name="T_STUDENT",uniqueConstraints=@UniqueConstraint(columnNames="name"))public class Student implements Serializable{   private static final long  serialVer

2015-08-27 18:07:21 7677

原创 Spring 事务管理

Spring 事务管理1、基本概念理解Spring的事务管理,需要了解以下几个概念:1.1、  当前连接每条线程只可以拥有一个活动的数据库连接,称为“当前连接”。一般数据库事务遵循“开启事务—>操作—>提交事务”三个步骤。在单线程环境中,不能调换它们的顺序;但是在多线程环境中,如果数据库连接需要共享,将会打破这个顺序,如线程A将线程B的事务一起提交了。为了解决该问题,采用“

2015-08-27 17:50:58 1257

原创 Java 传统线程技术

Java 多线程在Java中,线程类Thread创建方式有两种:一是继承Thread类,重写run方法;二是,实现Runnable接口。大多数情况下,推荐使用第二种方式,实现runnable接口,这样可以很好的将任务与执行单元分离,更加突出面向对象的思想。在JDK1.5之前,线程间互斥主依靠内置锁(监视器),而线程间通信则采用Object实例的wait,notify等方法。在JDK1.5之

2015-08-19 15:41:56 913

原创 Git 基础

git 基础1、     git在项目中使用git,一般有两种方式:一是先建立远程仓库,之后checkout到本地(或gitclone克隆到本地),将新建项目放置在本地仓库目录下;二是,先在本地建立git仓库,之后再关联到远程仓库,步骤如下:1)     git init在本地目录创建一个空的仓库2)     git remote add origin xxx.git关联到

2015-08-18 15:56:39 573

原创 Spring AOP

Spring AOP AOP(Aspect-OrientedProgramming),面向切面编程是对OOP编程方式的一种补充,可以为其他模块或组件提供通用的功能,如记录日志、性能监测、事务管理等。1、       基本概念AOP的思想主要是为其他类增加通用的功能,或者说增强原有类的相关功能,那么如何为原有类增加其他功能呢?一种简单有效的方式就是采用代理设计模式,在代理类中添加相应

2015-08-17 22:09:15 463

原创 Java 正则表达式

Java 正则表达式 正则表达式是用来处理字符串的,常见的操作有:l  字符串匹配l  字符串替换l  提取信息 1、      基础1.1、  字符字符B指定字符B\xhh十六进制值为oxhh的字符\uhhhh十六进制为oxhhhh的Unicode字

2015-08-12 22:12:54 393

原创 Java IO

Java  IO IO问题是整个人机交互的核心问题,因为IO是机器获取和交换信息(包括人机交互和机器与机器交互等)的主要渠道。Java的IO操作主要分为下列几类:1)     基于字节操作的IO接口:InputStream和OutputStream;2)     基于字符操作的IO接口:Writer和Reader;3)     基于磁盘操作的IO接口:File;4)

2015-08-12 22:11:07 777

原创 Java 动态性

动态性Java本质为静态语言,而不是动态语言。动态语言显著的特点是在程序运行时,可以改变程序结构或变量类型,典型的动态语言有Python、ruby、javascript等。Java不是动态语言,但Java具有一定的动态性,表现在以下几个方面:l  反射机制;l  动态字节码操作;l  动态编译;l  执行其他脚本代码;下面我们将介绍反射机制和动态字节码操作等内容。1、 

2015-08-12 18:40:11 6132

原创 soap

soapsoap是一种基于XML的简易协议,允许程序通过HTTP来交换信息,用在分散或分布的环境中交换信息。一条soap消息就是一个普通的xml文档,包含下列元素:l  必须的Envelope元素,标识该文档为一条soap消息;l  可选的Header元素,用于传输头信息;l  必需的Body元素,包含了所有的调用或响应信息;l  可选的Fault元素,提供有关处理错误的信

2015-08-12 10:29:50 382

原创 wsdl

wsdlwsdl(webservice description language),web服务描述语言,主要采用xml来描述网络服务和定位网络服务。 通俗地说,wsdl文档描述了webservice的如下3个方面:l  WHAT:该web service包含“什么”操作;l  HOW:该web service的操作应该“怎么”调用;l  WHERE:该web service的服务地

2015-08-12 10:24:44 367

原创 Schema

SchemaXML Schema是基于XML的DTD替代者,用于描述XML文档的结构。XMLSchema支持命名空间,基本数据类型和复杂数据类型,比DTD更具优势。1、       命名空间一个XML文件可以包含多个XMLSchema文件,不同的schema文件难免会出现重名的元素。为了解决该问题,Schema提供了命名空间,只要在使用元素时加上命名空间,就可以避免不同schema元素

2015-08-12 10:23:02 555

原创 ant 基础

Antant为自动化构建工具,在项目根目录中添加build.xml文件,ant可以按照该文件进行编译、测试、打包、执行等工作。在build.xml文件中,包含一个project和若干个target子元素,而每个target又可以包含若干task元素。build.xml文件结构如下     name="clean">        dir="build">

2015-08-06 16:10:50 548

原创 Java 注解

注解Annotation是从JDK5.0开始引入的新技术,注解的主要作用有:l  对程序做出解释,基于这一点,注解和注释没什么区别;l  可以被其他程序读取,依据注解的信息进行相关处理;如果没有注解信息处理流程,则注解意义甚小;注解可以在包、类、方法和属性上使用,相当于添加了额外的辅助信息,我们可以使用反射机制读取这些元数据,进行相应的处理。除了系统定义的注解外,我们还可以使用

2015-08-06 09:26:48 1161

原创 Java 序列化

Java序列化Java允许我们在内存中创建可复用的Java对象,但一般情况下,只有当JVM处于运行时,这些对象才可能存在;也即,这些对象的生命周期不会比JVM的生命周期更长。但在实际应用中,就可能要求在JVM停止运行之后能够持久化指定的对象,并在将来重新读取被保存的对象。使用Java对象序列化,在保存对象时,会把其状态(只是对象状态,不包括类变量)保存为一组字节,以便再将这些字节组装成对象

2015-07-31 19:24:22 411

原创 Java 陷阱

Java 陷阱1、       Java默认访问权限在Java中,显示的访问权限修饰符有private、protected、public,若在在定义类,属性,方法时没有显示添加访问权限修饰符,则默认的为package,或称friendly。在Java中,若子类重写父类的方法,要求子类的访问权限不能低于父类的访问权限,若父类为public,则子类只能为public;若父类为protect

2015-07-31 19:20:32 711

深入理解Java内存模型

深入理解Java内存模型,详细介绍了线程间通信机制、volatile原理、内存模型等。

2015-08-25

lukeall-5.2.1.jar

学习lucene5.2.1的必备工具,方便查看索引内容,理解分词机制

2015-08-25

flash as3.0 基本应用

Flash Player API 类位于 flash.* 包中。Flash Player API 是指 Flash 包中的所有包、类、函数、属性、常量、事件和错误。Flash Player API 是 Flash Player 所特有的,这与基于 ECMAScript 的顶级类(如 Date、Math 和 XML)或语言元素相反。Flash Player API 中包含面向对象的编程语言中所具有的功能,如用于 geometry 类的 flash.geom 包,以及特定于丰富 Internet 应用程序的需要的功能,如用于表现手法的 flash.filters 包和用于处理与服务器之间的数据传送的 flash.net 包。

2011-09-06

空空如也

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

TA关注的人

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