java 反射写的 通用DAO 类
最近 学习 反射,又在 做一个 web 网站,为了 减少代码,代码重用写了这个dao,效率,没有 每一个表写一个 dao 快。
不知道,这样写是否有用,希望大家,多多给予 指正(代码中的 不足,以及对这个 dao的 用处)
//DAO.java
package com.dreaming.util;
import java.util.ArrayList;
import java.util.LinkedHashMap;
public interface DAO {
/**
* 获取总记录总数
*
* @param entityClass
* 实体类
* @return
*/
public <T> long getCount(Class<T> entityClass);
public <T> long getCount(Class<T> entityClass, String wherejpql,
Object[] queryParams);
/**
* 保存实体
*
* @param entity
*/
public void save(Object entity);
/**
* 更新
*
* @param obj
*/
public void update(Object entity,String[] primaryKeys);
public void update(Object entity,String primaryKey);
/**
* 删除单个
* @param <T>
* @param entityClass
* @param primaryKeys
* @param entityid
*/
public <T> void delete(Class<T> entityClass, String primaryKeys,Object entityid);
public <T> void delete(Class<T> entityClass, String[] primaryKeys,Object[] entityid);
public <T> void deletes(Class<T> entityClass, String primaryKeys,Object[] entityids);
/**
* 删除数组
* @param <T>
* @param entityClass
* @param primaryKeys 数据表 主键数组
* @param entityids 主键值
*/
public <T> void deletes(Class<T> entityClass, String[] primaryKeys,Object[][] entityids);
/**
* 得到实体
*
* @param <T>
* @param entityClass
* 实体类
* @param entityId
* 实体id
* @return
*/
public <T> T find(Class<T> entityClass, String primaryKey,Object entity);
/**
* 获取分页数据
*
* @param <T>
* @param entityClass
* 实体类
* @param firstindex
* 开始索引
* @param maxresult
* 需要获取的记录数
* @return
*/
public <T> ArrayList<T> getS
相关文档:
目录
1. 简介
2. 安装
3. log4j基本概念
3.1. Logger
3.2. Appender
3.2.1. 使用ConsoleAppender
3.2.2. 使用FileAppender
3.2.3. 使用WriterAppender
3.3. Layout
3.4. 基本示例
3.4.1. SimpleLayout和FileAppender
3.4.2. HTMLLayout和WriterAppender
3.4.3. PatternLayout和ConsoleAppender
4. 使用外部 ......
对于学习static我们先来看两个例子:
//Example 1 Tst.java,no main() method
package com.blogchina.qb2049;
public class Tst
{
static { System.out.println("111111"); }
}
运行结果为: 111111
Exception in thread "main" java.lang.NoSuchMethodError: main
同样的道理看第二 ......
1.List转换成为数组。(这里的List是实体是ArrayList)
调用ArrayList的toArray方法。
例:String[] arr = (String[])list.toArray(new String[size]);
2.数组转换成为List。
调用Arrays的asList方法。
例:List stooges = Arrays.asList("Larry", "Moe", "Curly"); ......
一、运行class文件
执行带main方法的class文件,命令行为:
java <CLASS文件名>
注意:CLASS文件名不要带文件后缀.class
例如:
java Test
如果执行的class文件是带包的,即在类文件中使用了:
package <包名>
那应该在包的基路径下执行,命令行为:
java <包名>.CLASS文件 ......
Bean Serializable Interface 的接口让BEAN可以串行化,将其变成一个可保存为以后使用的二进制流。当一个BEAN被系列化到磁盘上或者其他任何地方,其状态被保存起来,其中的属性值也不会改变。在BEAN的规范中,JSP并没有要求BEAN实现Serializable接口。但是,如果您希望自己控制您所创建的组件的serialization进程,或者您想 ......