- 浏览: 1735416 次
- 性别:
- 来自: 上海
文章分类
- 全部博客 (337)
- javaScript校验 (11)
- java (31)
- java连接数据库 (1)
- js应用 (41)
- JQuery (15)
- linux操作命令 (12)
- loadrunner测试 (5)
- tomcat (18)
- 数据库 (12)
- eclipse (7)
- 触发器 (7)
- 表单 (3)
- ibatis (6)
- oracle (4)
- xml (1)
- Exception (6)
- spring (16)
- struts (4)
- struts 标签 (2)
- sql (8)
- sql server (6)
- 其它 (18)
- Apache (2)
- 电脑故障 (4)
- java 线程 (1)
- dwr (8)
- jackey (18)
- 总结 (34)
- gcc linux (2)
- extjs 学习 (5)
- 网站建设 (4)
- 健康 (2)
- 房地产知识 (1)
- hibernate (3)
- mysql (7)
- linux (13)
- svn (1)
最新评论
-
阳光泛滥的日子:
很好用谢谢
java.net.URISyntaxException的解决办法 -
linjianqing:
现在有更好的处理方式吗?我正也为这发愁
applet访问打印机出现的问题 -
ruyi574812039:
非常感谢您的总结!想问几个问题!假设三个项目分别以静态部署的三 ...
在Tomcat中部署Web程序的几种方式 -
yangguo:
太j8麻烦了
Spring3.1中使用缓存注解及Shiro的缓存联合 -
bellawang:
很好用谢谢
java.net.URISyntaxException的解决办法
package com.test;
import java.io.File;
import java.io.FileOutputStream;
import java.io.OutputStream;
import java.sql.Connection;
import java.sql.Date;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.SQLException;
import java.sql.Statement;
import java.sql.Types;
import java.util.ArrayList;
import java.util.List;
import java.util.Properties;
import org.apache.commons.dbcp.BasicDataSource;
import org.apache.commons.dbcp.BasicDataSourceFactory;
import org.apache.log4j.Logger;
/**
* 一.实现数据库中的数据(db data)转化成document文档
*
* 二。实现jdbc批量插入数据
* */
public class DBDataToXmlDomTest {
private static Logger log = Logger.getLogger(DBDataToXmlDomTest.class);
private static BasicDataSource ds = null;
public DBDataToXmlDomTest() {
}
public static void main(String[] args) throws Exception {
init();
// dbToDom();
tableDataToXmlDom("tRoom");
}
/** jdbc 批量插入* */
public void batchInsert(List sqllist) {
Connection con = null;
Statement st = null;
try {
con = getConnection();// 获得连接
con.setAutoCommit(false);
st = con.createStatement();
for (int i = 0; i < sqllist.size(); i++) {
String sql = sqllist.get(i).toString();
st.addBatch(sql);
// 51条sql执行一次批量插入
if (i != 0 && i % 50 == 0) {
st.executeBatch();
con.commit();
}
}
if (st != null) {
st.executeBatch();
con.commit();
}
} catch (Exception e) {
log.error("批量导入异常!!", e);
System.out.println("批量导入异常!!");
System.out.println("batchInsert " + e);
} finally {
try {
st.close();
con.close();
} catch (SQLException e) {
}
}
}
/*
* 把数据库中的数据转化成dom对象
*/
public static void dbToDom() {
try {
StringBuffer dom = new StringBuffer();
List tables = getTableList();
for (int i = 0; i < tables.size(); i++) {
String tableDom = tableDataToXmlDom((tables.get(i)).toString());
dom.append(tableDom);
}
// System.out.println(dom.toString());
// 写到文件中
System.out.println("*****start write*****");
File file = new File("d:/SystemData.xml");
OutputStream os = new FileOutputStream(file);
os.write(dom.toString().getBytes());
os.close();
System.out.println("*****finish*****");
} catch (Exception e) {
System.out.println(e);
}
}
/* 获取指定数据库中所有表的名字 */
public static List getTableList() throws SQLException {
List tables = new ArrayList();
Connection con = getConnection();// 获得连接
ResultSet rs = con.getMetaData().getTables(null, null, "", null);
while (rs.next()) {
// System.out.println(rs.getString(3));
tables.add(rs.getString(3));
}
return tables;
}
/* 清空表中的记录 */
public static void truncateTable(String tableName) throws SQLException {
Connection con = getConnection();// 获得连接
Statement st = con.createStatement();
String sql = "truncate table " + tableName;
ResultSet rs = st.executeQuery(sql);
rs.close();
con.close();// 释放连接
}
/*
* 功能: 把一个数据库表中的数据转化成dom对象
*
* param:tableName 表名
*/
public static String tableDataToXmlDom(String tableName)
throws SQLException {
int blank1 = 1;// 空格符数
int blank2 = 2;
Connection con = getConnection();// 获得连接
Statement st = con.createStatement();
String sql = "select * from " + tableName;
ResultSet rs = st.executeQuery(sql);
ResultSetMetaData metaData = rs.getMetaData();
int columnCount = metaData.getColumnCount();
StringBuffer tbDom = new StringBuffer();
while (rs.next()) {
tbDom.append(blank(blank1));
tbDom.append("<" + tableName + ">").append(enter());
for (int i = 1; i <= columnCount; i++) {
String columnName = metaData.getColumnLabel(i);
tbDom.append(blank(blank2)).append("<" + columnName + ">");
int type = metaData.getColumnType(i);
switch (type) {
case Types.VARCHAR:
tbDom.append(singleQuote(rs.getString(i)));
break;
case Types.TIMESTAMP:
tbDom.append(dealDate(rs.getDate(i)));
break;
case Types.INTEGER:
tbDom.append(rs.getInt(i));
break;
case Types.FLOAT:
tbDom.append(rs.getFloat(i));
break;
case Types.BIGINT:
tbDom.append(rs.getLong(i));
default:
tbDom.append(rs.getString(i));
}
tbDom.append("</" + columnName + ">").append(enter());
}
tbDom.append(blank(blank1));
tbDom.append("</" + tableName + ">").append(enter());
}
System.out.println(tbDom.toString());
rs.close();
con.close();// 释放连接
return tbDom.toString();
}
/*
* 功能:返回指定长度的空格字符串
*
* param length 指定长度
*/
public static String blank(int length) {
StringBuffer sb = new StringBuffer();
for (int i = 0; i < length; i++) {
sb.append(" ");
}
return sb.toString();
}
/*
* 功能:返回回车换行符号
*/
public static String enter() {
StringBuffer sb = new StringBuffer();
sb.append("\r\n");
return sb.toString();
}
/*
* 功能:给字符串数据加上单引号
*
* 处理 varchar 类型数据
*/
public static String singleQuote(String str) {
if (str == null) {
return null;
} else if (str.equals("")) {
return "''";
} else {
return "'" + str + "'";
}
}
/*
* 处理 datetime 类型数据
*/
public static String dealDate(Date dt) {
if (dt == null) {
return null;
} else {
return "'" + dt + "'";
}
}
public static void init() {
if (ds != null) {
try {
ds.close();
} catch (Exception e) {
//
}
ds = null;
}
try {
Properties p = new Properties();
// �? .连接my sql 数据�?
p.setProperty("driverClassName", "com.mysql.jdbc.Driver");
p
.setProperty(
"url",
"jdbc:mysql://localhost:3306/NetDetective?useUnicode=true&characterEncoding=UTF-8");
p.setProperty("username", "xxxxxx");
p.setProperty("password", "xxxxxx");
p.setProperty("initialSize", "1");
p.setProperty("minIdle", "1");
p.setProperty("maxActive", "50");
ds = (BasicDataSource) BasicDataSourceFactory.createDataSource(p);
} catch (Exception e) {
System.out.println(e);
}
}
public static synchronized Connection getConnection() throws SQLException {
Connection conn = null;
if (ds != null) {
conn = ds.getConnection();// 获得连接
}
return conn;
}
}
发表评论
-
实现Applet与Servlet之间进行通讯的简单实例
2011-08-09 21:36 2989Servlet传送查询记录集给Applet 这篇文章是继< ... -
js 表单使用总结 jackey
2010-05-26 15:51 20941 javascript刷新页面 ... -
javascript的子窗口和父窗口的传值与刷新
2010-02-21 18:04 3187另存为子窗口 <!DOCTYPE HTML PUB ... -
showModalDialog参数使用详解
2010-02-04 19:24 1621showModalDialog:模式窗 ... -
Log4j配置文件的示例_jackey
2010-02-03 13:05 2029引子: 最近老是用到log4j的东西,我想这样优秀的一个 ... -
Ajax实现文件上传 jackey 好方法
2010-01-19 11:02 8300首先要说的就是 ajax 是无法实现上传文件的,可以想一下aj ... -
js控制select的option
2010-01-05 15:15 5757js控制select的option JS sele ... -
Windows下Apache+Tomcat+MySQL+jsp+php的服务器整合配置
2009-09-29 14:30 2520所需软件 (1) j2sdk- ... -
Windows下Apache+Tomcat+MySQL+jsp+php的服务器整合配置
2009-09-29 14:22 3857所需软件(1) j2sdk-1_4_2-win ... -
EL表达式 (详解)
2009-09-12 02:59 8244EL表达式 1、EL简介1)语法结构 ... -
在Tomcat中部署Web程序的几种方式
2009-09-10 18:36 20341在Tomcat中部署Java Web应用程序有两种方式:静态部 ... -
window xp Service pack 2+ iis 5.1+tomcat-5.5.27 +jdk1.5.0_08
2009-08-07 23:34 4256xp下整合IIS和tomcat ... -
使用IIS+Tomcat6.0将JSP网站发布到Internet
2009-08-07 10:40 5784使用IIS+Tomcat6.0将JS ... -
Spring整合第三方MVC框架的通用配置
2009-08-06 17:55 1580Spring整合第三方MVC框架的通用配置 ... -
常见错误解决方案
2009-08-06 14:33 17571. sql server 错误签名 ISQL/w - ... -
dwr spring 如何配置
2009-08-06 13:57 2747DWR和Spring 让DWR和Spring一起工作的步 ... -
java 遍历map 方法 集合 jackey
2009-08-02 12:02 29658package com.jackey.topic; impo ... -
JSON 入门指南 jackey
2009-07-29 16:43 1335JSON 即 JavaScript Object Natati ... -
Eclipse插件的安装有两种方法 ___jackey
2009-07-29 14:06 1329Eclipse插件的安装有两种 ... -
利用apache的proxy-ajp做apache与tomcat的结合(转载) jackey
2009-07-28 16:14 2224解压apache的源代码 # ta ...
相关推荐
- 插入数据到数据库: ```java Connection conn = DriverManager.getConnection(DB_URL, USER, PASS); PreparedStatement stmt = conn.prepareStatement("INSERT INTO table (column) VALUES (?)"); stmt....
首先,我们需要理解的是,将图片存储到数据库中通常采用的方法是将图片转换为二进制数据流。这是因为数据库系统更善于处理结构化数据,而不是像图片这样的非结构化数据。在Java中,我们可以使用`java.io`和`java.nio...
数据库中的数据转换为XML格式是一项常见的任务,尤其在数据交换、数据存储或数据解析等场景中。XML(可扩展标记语言)是一种结构化数据表示语言,具有自我描述性且易于机器解析,使得它成为跨平台数据传输的理想选择...
在实际应用中,你可能需要根据你的数据库类型(例如,MySQL、Oracle、SQL Server等)调整`data-config.xml`中的数据源类型和驱动类。同时,确保正确设置数据库连接参数,如URL、用户名和密码,以及查询语句以匹配你...
// 插入数据 String sql = "INSERT INTO your_table (column_name) VALUES (?)"; PreparedStatement stmt = conn.prepareStatement(sql); stmt.setString(1, data); stmt.executeUpdate(); } catch ...
- 本章讨论了如何使用Java持久化架构(JPA)在Java应用程序中实现数据的持久化,包括域模型与视图的概念、JPA的特点、JPQL以及如何下载和配置JPA实现等。 通过以上对数据库设计基础知识的详细介绍,我们不仅了解了...
8. **配置db-data-config.xml**:编辑`db-conf/db-data-config.xml`文件,定义数据源、文档名称以及要导入的数据库表和字段,例如: ```xml <dataConfig> <dataSource type="JdbcDataSource" driver=...
解释如何在 OrientDB 中实现继承机制,以及它对数据模型的影响。 **2.3 模式 (Schema)** 详细介绍 OrientDB 的模式系统,包括如何设计和维护模式。 #### 三、检索策略 (Fetching Strategies) **3.1 检索策略概述...
书中深入剖析了ado.net的本质,探索了类、接口、属性和方法的工作原理,同时还为其他数据访问api(包括oledb,ado,odbc和jdbc)的程序员,提供了有价值的参考材料。本书适合具有一定数据库基础的开发人员阅读,也可...
为了实现从Oracle数据库导入数据至Solr进行全文搜索,需要完成以下步骤: 1. **配置数据源**: - 打开`db/conf/db-data-config.xml`,配置Oracle数据库的连接信息,例如: ```xml <dataSource driver="oracle....
通过以上步骤,开发者可以在VB.NET中实现对Access数据库中数据的显示、打印预览和打印功能。这不仅增强了用户界面的实用性,也展示了VB.NET在数据处理方面的强大能力。记住,始终确保代码的健壮性和用户体验,以便...
`sqoop import-all-tables` 用于批量导入数据库中的所有表至 HDFS 或 Hive 表。 ##### 8.2 语法 与 `sqoop import` 类似,但无需指定具体表名。 ##### 8.3 示例调用 示例: ```sh sqoop import-all-tables \ --...
在 Solr 中,数据导入是通过 Data Import Handler (DIH) 实现的,这是一个用于从外部数据源导入数据到 Solr 索引的工具。DIH 支持全量导入和增量导入,全量导入会将整个数据源重新导入,而增量导入只导入自上次导入...
9. ADO(ActiveX Data Objects):ADO是Microsoft开发的内置服务器组件,它通过OLE DB桥接Web应用程序与数据库,使得开发者能够通过ASP技术在网页中执行SQL命令,实现数据库访问。 10. Session对象与Cookie:...
- **DML (Data Manipulation Language)**:数据操作语言,用于插入、更新和删除数据的SQL语句。 - **DQL (Data Query Language)**:数据查询语言,主要指SQL中的SELECT语句,用于检索数据。 - **TCL (Transaction ...
greenplum-db-6.2.1-rhel7-x86_64.rpm Pivotal Greenplum 6.2 Release Notes This document contains pertinent release information about Pivotal Greenplum Database 6.2 releases. For previous versions ...
同时,你可能还需要一个连接池,具体配置可以在GORM的官方文档中找到。 对于Spring Boot应用,我们通常会在`src/main/resources/application.yml`文件中配置GORM for Hibernate。这里你可以设置数据库连接信息,...
- **作用**:在 Java 项目中,iBatis 主要用于实现数据持久化,即处理 Java 应用程序与关系型数据库之间的交互。通过 iBatis,开发者可以更加专注于业务逻辑的编写,而无需过多关注 SQL 语句的编写和管理。 #### 二...
2. **数据库连接**:在JSP中,通常使用Java的JDBC(Java Database Connectivity)API来连接和操作数据库。在本例中,可能有一个名为`SelectDB`的类负责与数据库的交互,包括查询操作。 3. **HTML和CSS布局**:为了...