`
文章列表

RowHandler

public class XmlRowHandler implements RowHandler { StringBuffer xmlresult = new StringBuffer("<UserList>"); public void handleRow(Object valueObject) { User user = (User)valueObject; xmlresult.append("<User>"); xmlresult.append("<id> ...
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE sqlMap PUBLIC "-//ibatis.apache.org//DTD SQL Map 2.0//EN" "http://ibatis.apache.org/dtd/sql-map-2.dtd"> <sqlMap namespace="Account"> <!-- no mappi ...
Compare - 比较Copy All from Left to Right (由左向右复制全部) Copy All from Right to Left (由右向左复制全部) Copy from Left to Right (由左向右复制) Copy from Right to Left (由右向左复制) Select Next Change (选取下一个变更) Select Previous Change (选取上一个变更) CVS - Concurrent Versions System (版本控制系统) Checkout from CVS (由CVS检查) Edit - 编辑Add ...
<filter> <filter-name>Spring character encoding filter</filter-name> <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class> <init-param> <param-name>encoding</param-name> <param-value>GBK&l ...
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:aop="http://www.springframework.org/schema/aop" xmlns:tx="http://www.springframework.org/schema/tx" xsi:schem ...
@Aspect public class SecurityHandler { /** * 定义Pointcut,Pointcut的名称就是allAddMethod,此方法不能有返回值和参数,该方法只是一个 * 标识 * * Pointcut的内容是一个表达式,描述那些对象的那些方法(订阅Joinpoint) */ @Pointcut("execution(* add*(..)) || execution(* del*(..))") private void allAddMethod(){}; /** * 定义 ...

MySql小技巧

一 Mysql 如何读取.sql 文件。      \. 文件的全路径 (或者) source 文件全路径。 二 当前时间与格式化时间       select now();       select date_format(now (),'%Y-%m-%d %H:%i:%s'); 三 查看数据库与数据表的基本信息       show create database 数据库名;      show create table 数据表名;      desc 数据表名; 四 手动修改数据库编码格式       打开my.ini文件,修改[mysqld]下面:default-character-s ...
1中国电化教育      北京复兴门内大街l60号312信箱(100031) 66419047   cet@hedu.net2电化教育研究      兰州西北师范大学内 730070 0931-7971823    aver@nwnu.edu.cn3中国远程教育      北京复兴门内大街l60号(100031) 66413389    zss@crtvu.edu.cn4外语电化教学      上海市大连西路 上海外国语大学 511信箱 《外语电化教学》编辑部 200083    wydhjx204@163.com5中国医学教育技术    西安市朱雀大街205号西安交通大学医学校区   7100 ...
一 环境搭建: 1、spring依赖库  * SPRING_HOME/dist/spring.jar * SPRING_HOME/lib/jakarta-commons/commons-logging.jar * SPRING_HOME/lib/log4j/log4j-1.2.14.jar   2 配置文件:   applicationContext.xml log4j.properties 3 spring Ioc容器的关键点:  * 必须将被管理的对象定义到spring配置文件中,让spring管理我们的对象创建和依赖,必须在spring配置中进行定义 * 必须定义构造函数或setter ...
1 batch-szie在<class>上的应用 batch-size属性,可以批量加载实体类 <class name="Classes" table="t_classes" batch-size="3">   2 batch-szie在集合上的应用 batch-size属性,可以批量加载实体类   <set name="students" inverse="true" cascade="all" batch-size="5" ...
1 hibernate抓取策略(单端代理的批量抓取) 保持默认,同fetch="select",如: <many-to-one name="classes" column="classesid" fetch="select"/> fetch="select",另外发送一条select语句抓取当前对象关联实体或集合 设置fetch="join",如: <many-to-one name="classes" column="cl ...
查询缓存是针对普通属性结果集的缓存,对实体对象的结果集只缓存id 查询缓存的生命周期,当前关联的表发生修改,那么查询缓存生命周期结束 查询缓存的配置和使用: * 在hibernate.cfg.xml文件中启用查询缓存,如: <property name="hibernate.cache.use_query_cache">true</property> * 在程序中必须手动启用查询缓存,如: query.setCacheable(true);          查询缓存的生命周期和session无关           查询缓存只对query ...
二级缓存也称进程级的缓存或SessionFactory级的缓存,二级缓存可以被所有的session共享二级缓存的生命周期和SessionFactory的生命周期一致,SessionFactory可以管理二级缓存   二级缓存的配置和使用:  * 将echcache.xml(在etc目录下有模板文件)文件拷贝到src下  * 开启二级缓存,修改hibernate.cfg.xml文件   <property name="hibernate.cache.use_second_level_cache">true</property>  * 指定缓存产品提供商 ...

一级缓存

一级缓存很短和session的生命周期一致,一级缓存也叫session级的缓存或事务级缓存   session间不能共享一级缓存的数据,因为它会伴随session的生命周期存在和消亡   那些方法支持一级缓存: * get()  * save() * load() * iterate(查询实体对象) 一级缓存只对实体对象起作用。 HQL 不支持缓存机制。 如何管理一级缓存:  * session.clear()清除所有对象,session.evict()清除某一个对象。 如何避免一次性大量的实体数据入库导致内存溢出  * 先flush,再clear for (int i=0; i<10 ...
在hql中关键字不区分大小写,但是属性和类名区分大小写 1、简单属性查询【重要】  * 单一属性查询,返回结果集属性列表,元素类型和实体类中相应的属性类型一致 * 多个属性查询,返回的集合元素是对象数组,数组元素的类型和对应的属性在实体类中的类型一致   数组的长度取决与select中属性的个数 * 如果认为返回数组不够对象化,可以采用hql动态实例化Student对象  2、实体对象查询【重要】  * N + 1问题,在默认情况下,使用query.iterate查询,有可以能出现N+1问题   所谓的N+1是在查询的时候发出了N+1条sql语句   1: 首先发出一条查询对象id列表的sql ...
Global site tag (gtag.js) - Google Analytics