`
文章列表
Validator验证框架 Struts框架能够在ActionForm Bean 的validate()方法中对用户输入的表单数据进行验证。这种验证方法有两种局限性:  必须通过程序代码来实现验证逻辑,如果验证逻辑发生变化,必须重新编写和编译程序代码。  当系统中有多个ActionForm Bean,并且它们包含一些相同的验证逻辑时,开发人员必须对每个ActionForm Bean进行重复编程,完成相同的验证逻辑,这会降低代码的可重用性。 Validator框架主要依赖于两个JAR文件: Jakarta-oro.jar,提供了一组处理文本的类,具有文本替换、 ...
Struts 控制器组件 Struts控制器组件主要包括: ActionServlet组件:充当Struts框架的中央控制器 RequestProcessor组件:充当每个子应用模块的请求处理器 Action组件:负责处理一项具体的业务。 Struts框架采用ActionServlet和RequestProcessor组件进行集中控制,并采用Action组件来处理单项业务。 Struts的控制器组件主要完成以下任务: 1. 接收用户请求 2. 根据用户请求,调用合适的模型组件来执行相应的业务逻辑。 3. 获取业务逻辑执行结果 ...
Spring 是一个开源框架,是为了解决企业应用程序开发复杂性而创建的。框架的主要优势之一就是其分层架构,分层架构允许您选择使用哪一个组件,同时为 J2EE 应用程序开发提供集成的框架。 我先从框架底层模型的角度描述 ...
Spring AOP: Spring之面向方面编程 1. 概念 面向方面编程 (AOP) 提供从另一个角度来考虑程序结构以完善面向对象编程(OOP)。 面向对象将应用程序分解成 各个层次的对象,而AOP将程序分解成各个方面 或者说 关注点 。 这使得可 ...
通过Set方法注入依赖,设值注入不是冬天预防流感的东西。它是一种基于标准命名规范的设置Bean属性的技术。JavaBean规范规定使用对应的 set和get方法来设置和获得Bean的属性值,这种方法早已普遍使用。例如,一个maxStudents属性 ...
持久化层封装了数据访问细节,为业务逻辑层提供了面向对象的API。完善的持久化层应该达到以下目标:  代码可重用性高,能够完成所有的数据库访问操作  如果需要的话,能够支持多种数据库平台  具有相对独立 ...
IReport与JasperReport开发详解一   1、简介:Jasperreport是一个报表制作工具,用户须按照它编写的规则编写一个XML,然后得到用户所要的报表文件。 Jasperreport程序库是一个灵活,功能强大的报表产生工具,可以以PDF, HTML或XML等多种 ...
  1)、当WEB客户请求Servlet服务或当WEB服务启动时,容器环境加载一个Java Servlet类。 2)、容器环境也将根据客房请求创建一个Servlet对象实例,或者创建多个Servlet对象实例,并把这些实例加入到Servlet实例池中。 3)、容器环境调用Servlet的初始化方法HttpServlet.init()进行Servlet实例化。在调用初始化时,要给 init()方法传入一个ServletConfig对象,ServletConfig对象包含了初始化参数和容环境的信息,并负责向servlet传递 信息,如果传递失败,则会发生ServletExcepti ...
对于把某一对象置于session范围内,并在JSP页面中提取session中放进去的对象的过程我想做J2EE开发的程序员应该都熟悉,很简单就比如: Servlet代码: List<String> list=new ArrayList<String>(); list.add("王利虎"); HttpSession session=request.getSession(); //把某一对象置于session范围内 session.setAttribute("LIST",list); //提取se ...
当你使用和学习JDK的时候,可以查看并学习它所提供给你的两个ResultSetMetaData 和DataBaseMetaData类的源码并很好的了解它们的实现原理和思路,JDBC中提供有两种源数据,一种是数据库源数据,另一种是 ResultSet源数据。这些源数据就是描述存储用户数据的容器的数据结构。其中ResultSetMetaData类完成了查询结果信息和结果中的列 的各种信息。下面我就以ResultSetMetaData为例,简单的罗列它的使用方法以及它内部的方法的使用。 首先,建立一张表并起名为users,表结构描述如下: 字段描述          字段名称   ...
一、hibernate的二级缓存 如果开启了二级缓存,hibernate在执行任何一次查询的之后,都会把得到的结果集放到缓存中,缓存结构可以看作是一个hash table,key是数据库记录的id,value是id对应的pojo对象。当用户根据id查询对象 ...
本文依照HIBERNATE帮助文档,一些网络书籍及项目经验整理而成,只提供要点和思路,具体做法可以留言探讨,或是找一些更详细更有针对性的资料。 初用HIBERNATE的人也许都遇到过性能问题,实现同一功能,用HIBERNATE与用JDB ...
1.    Cache简介: 缓存(Cache )是计算机领域非常通用的概念。它介于应用程序和永久性数据存储源(如硬盘上的文件或者数据库)之间,其作用是降低应用程序直接读写永久性数据存储源的频 率,从而提高应用的运行性能。缓存中的数据是数据存储源中数据的拷贝,应用程序在运行时直接读写缓存中的数据,只在某些特定时刻按照缓存中的数据来同步更 新数据存储源。 缓存的物理介质通常是内存,而永久性数据存储源的物理介质通常是硬盘或磁盘,应用程序读写内在的速度显然比读写硬盘的速度快,如果缓存中存放的数据量非常大,也会用硬盘作为缓存的物理介质。 缓存的实现不仅需要作为物理介质的硬件 ...
/*      * 将对象转化成java.sql.Blob       * 要求 对象是序列化的       */      public  java.sql.Blob ObjectToBlob(Object obj)  throws  IOException{          try  {             ByteArrayOutputStream out  =   new  ByteArrayOutputStream();             ObjectOutputStream outputStream  ...
Criteria Query是Hibernate提供的将SQL语句对象化表示的一种方法。当我们使用JDBC方式查询数据时会这样写:  select NAME FROM EMPLOYEE where ID = '001'  使用Hibernate的Criteria Query方式查询时,就可以使用我们已经习惯了的面向对象的方式。如下:     程序代码 import net.sf.hibernate.Criteria;  import net.sf.hibernate.expression.Expression;  ...  Criteria criteria = s ...
Global site tag (gtag.js) - Google Analytics