Database
文章平均质量分 77
pippo_
hello world
展开
-
JDBC 增删查改(2)
<br />1 // ==================== Program Description ==========================2 // 程序名称:示例13-2: User.java3 // 程序目的:创建一个用来操作用户信息的类4 // ==============================================================5 public class User 6 {7 private String user转载 2010-07-12 17:30:00 · 510 阅读 · 0 评论 -
Java工具类:读配置文件,jdbc,数据源,hsqldb随web启动的Listener
1.读取配置文件方法一:EnvironmentConfig.java import java.io.*;import java.util.*;/** * java 读取配置(属性)文件 * @author pippo */public class EnvironmentConfig {static EnvironmentConfig ec;// 创建原创 2010-05-06 11:32:00 · 1513 阅读 · 0 评论 -
JDBC高效分页
一个继承ArrayList类的ResultSet,一个继承HashMap的Record执行,把java.sql.ResultSet对象中的一列封装成Record,加到ArrayList类型的ResultSet对象中 /** * 执行 SQL 语句 (带分页功能) * @param con 数据库链接 Connection * @param strSQL SQL语转载 2012-02-22 14:37:37 · 919 阅读 · 0 评论 -
Hibernate 批量插入
在项目的开发过程之中,由于项目需求,我们常常需要把大批量的数据插入到数据库。数量级有万级、十万级、百万级、甚至千万级别的。如此数量级别的数据用Hibernate做插入操作,就可能会发生异常,常见的异常是OutOfMemoryError(内存溢出异常)。 首先,我们简单来回顾一下Hibernate插入操作的机制。Hibernate要对它内部缓存进行维护,当我们执行插入操作时,就会把要操作的转载 2011-12-21 15:48:20 · 2276 阅读 · 0 评论 -
Hibernate 批量更新与删除
Hibernate2中,对于批量更新操作,Hibernate是将符合要求的数据查出来,然后再做更新操作。批量删除也是这样,先把符合条件的数据查出来,然后再做删除操作。 这样有两个大缺点: (1):占用大量的内存。 (2):处理海量数据的时候,执行update/delete语句就是海量了,而且一条update/delete语句只能操作一个对象,这样频繁的操作数据库,性能转载 2011-12-21 15:51:41 · 1864 阅读 · 0 评论 -
Hibernate的条件查询的几种方式
1、 第一种,用?占位符,如://登录(用?占位符) public List LoginUser(UserPO up)throws Exception{ Session session = HibernateSessionFactory.getSession(); String hql = "from UserPO where name = ? and pwd= ?"; Quer转载 2011-11-28 13:42:51 · 25467 阅读 · 0 评论 -
使用Spring的HibernateDaoSupport时的getSession()3个方法的区别
在继承了HibernateDaoSupport的Dao中, this.getsession实际上是调用了父类HibernateDaoSupport中的方法获得session。使用spring管理hibernate的SessionFactory的时候,这个方法会从session池中拿出一session。这样做有可能有问题,尽管这种方式拿到的Session会自动关闭,但是他是有一定的失效策转载 2011-12-21 15:44:23 · 15022 阅读 · 1 评论 -
Hibernate映射文件配置
id 主键生成方式increment Hibernate内部自己做累加,而不是数据库中做累加。indentity 数据库标示符自增长squence Oracle常用hilo 高低位 数据库保存高位字段,Hibernate累加地位字段,新插入数据由这两个字段组成,不会重复。uuid 生成主键不用访问数据库,Hibernate生成,插入效率很高,主键string类型,查询时候效率不高转载 2011-12-21 15:58:08 · 1128 阅读 · 0 评论 -
JDBC工具类(ConDB、Dao、MyProperties、MyException、db属性文件)
1.自定义异常类package com.ownhome.exception;/** * 自定义异常类 * @author admin * */public class MyException extends Exception { protected Throwable throwable; /*构造方法*/ public MyException(String msg){原创 2010-07-09 21:49:00 · 1088 阅读 · 0 评论 -
oracle 多表联合查询,统计查询,组函数,order by,having,子查询,集合运算
多表联合查询 通过连接可以建立多表查询,多表查询的数据可以来自多个表,但是表之间必须有适当的连接条件。为了从多张表中查询,必须识别连接多张表的公共列。一般是在WHERE子句中用比较运算符指明连接的条件。 忘记说明表的连接条件是常见的一种错误,这时查询将会产生表连接的笛卡尔积(即一个表中的每条记录与另一个表中的每条记录作连接产生的结果)。一般N个表进行连接,需要至少N-1个连接条件,才能转载 2011-12-19 16:15:18 · 1191 阅读 · 0 评论 -
Oracle查看主外键
select a.constraint_name, a.table_name, b.constraint_name from user_constraints a, user_constraints bwhere a.constraint_type = 'R' and b.constraint_type = 'P' and a.r_constraint_name = b.constra转载 2011-11-21 19:46:38 · 3827 阅读 · 0 评论 -
Oracle用Start with...Connect By子句递归查询
ORACLE 提供了一个有趣的功能 connect by 子句,它可以对具有家族树结构的分枝进行排序。它的用途有机构或公司的各层结构,财务的科目代码等。要使用查询遍历,需要在将数据在基表中按照层次结构进行存储。比如一个组织机构就是这样的典型例子。实现语句:SE转载 2011-08-30 19:27:05 · 922 阅读 · 0 评论 -
在Hibernate中使用oracle的sequence产生主键
<br /> 在很多情况下,我们使用Hibernate在已经建立好数据库的基础上。在oracle中,如果已经建立好的数据库中使用了sequence,则可以按照下面的步骤把它引入到Hibernate中: 1、在oracle 首先创建sequence create sequence seq_id minvalue 1 start with 1 increment by 1 cache 20; 2.在你的hb转载 2011-03-03 16:51:00 · 620 阅读 · 0 评论 -
用java调用oracle存储过程总结
<br /> <br />1、什么是存储过程。存储过程是数据库服务器端的一段程序,它有两种类型。一种类似于SELECT查询,用于检索数据,检索到的数据能够以数据集的形式返回给客户。另一种类似于INSERT或DELETE查询,它不返回数据,只是执行一个动作。有的服务器允许同一个存储过程既可以返回数据又可以执行动作。<br />2、什么时候需要用存储过程<br /> 如果服务器定义了存储过程,应当根据需要决定是否要用存储过程。存储过程通常是一些经常要执行的任务,这些任务往往是针对大量的记录而进行的。在服务器上转载 2010-12-16 18:31:00 · 440 阅读 · 0 评论 -
关于Hibernate中inverse=true
<br /><br />1、到底在哪用cascade="..."? <br /> <br /> cascade属性并不是多对多关系一定要用的,有了它只是让我们在插入或删除对像时更方便一些,只要在cascade的源头上插入或是删除,所有 cascade的关系就会被自己动的插入或是删除。便是为了能正确的cascade,unsaved-value是个很重要的属性。Hibernate通 过这个属性来判断一个对象应该save还是update,如果这个对象的id是unsaved-value的话,那说明这个对象不是转载 2010-06-25 14:50:00 · 475 阅读 · 0 评论 -
hibernet中的get和load方法的区别
<br />get和load方式是根据id取得一个记录 <br /><br />下边详细说一下get和load的不同,因为有些时候为了对比也会把find加进来。 <br /> <br />1.从返回结果上对比: <br />load方式检索不到的话会抛出org.hibernate.ObjectNotFoundException异常 <br />get方法检索不到的话会返回null <br /> <br />2.从检索执行机制上对比: <br />get方法和find方法都是直接从数据库中检索 <br />而转载 2010-06-04 11:20:00 · 974 阅读 · 0 评论 -
Struts2+JDBC分页
<br />编写web.xml文件,其代码如下:<br /><?xml version="1.0" encoding="UTF-8"?><web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://jav转载 2010-07-10 19:42:00 · 2987 阅读 · 0 评论 -
JDBC 增删查改(1)
<br />public static Connection getCon() { Connection conn=null; try {//2005连接方法 Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver"); conn = DriverManager .getConnection("jdbc:sqlserver://localhost;username=sa;password=;Datab转载 2010-07-12 17:28:00 · 613 阅读 · 0 评论 -
JDBC增删查改3
步骤1、编写xml配置文件<!--数据库相关信息: 1、驱动;2、url;3、user;4、password-->com.mysql.jdbc.Driverjdbc:mysql://localhost:3306/test?autoReconnect=true&useUnicode=true&characterEncoding=UTF-8rootroot 步骤2、编写实转载 2013-01-23 11:38:36 · 590 阅读 · 0 评论