`
yjhexy
  • 浏览: 331586 次
  • 性别: Icon_minigender_1
  • 来自: 火星
社区版块
存档分类
最新评论

回顾JDBC知识 之 jdbc使用

阅读更多

JDK1.6中带的是  jdbc4.0版本的。据说有些新特性。先用用看:


一,建数据库 babyStore


二,建表:

表名: Baby

列名 类型 描述
id integer 主键,自增长
name varchar(200)
sex varchar(10)
birthday Date
hobby varchar(200)


三,建工程:

1,创建一个quickStart 基本工程:mvn archetype:generate

2,导入到eclipse  : mvn eclipse:eclipse -DdownloadSources=true -DdownloadJavadocs=true

3,打开eclipse 编辑pom.xml

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
	<modelVersion>4.0.0</modelVersion>
	<groupId>com.yajun</groupId>
	<artifactId>jdbcDemo</artifactId>
	<packaging>jar</packaging>
	<version>1.0-SNAPSHOT</version>
	<name>jdbcDemo</name>
	<url>http://maven.apache.org</url>
	<dependencies>
		<dependency>
			<groupId>junit</groupId>
			<artifactId>junit</artifactId>
			<version>3.8.1</version>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>mysql</groupId>
			<artifactId>mysql-connector-java</artifactId>
			<version>5.1.6</version>
			<scope>compile</scope>
		</dependency>
	</dependencies>
</project>

 4,重新执行:

eclipse  : mvn eclipse:eclipse -DdownloadSources=true -DdownloadJavadocs=true

并刷新eclipse


建工程OK


四,边界Baby类:

package com.yajun.dataobject;

import java.util.Date;

/**
 * 宝宝对象
 * 
 * @author yajun
 * 
 */
public class Baby {

	private int id;
	private String name;
	private String sex;
	private Date birthday;
	private String hobby;

	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}

	public String getSex() {
		return sex;
	}

	public void setSex(String sex) {
		this.sex = sex;
	}

	public Date getBirthday() {
		return birthday;
	}

	public void setBirthday(Date birthday) {
		this.birthday = birthday;
	}

	public String getHobby() {
		return hobby;
	}

	public void setHobby(String hobby) {
		this.hobby = hobby;
	}

	public int getId() {
		return id;
	}

	public void setId(int id) {
		this.id = id;
	}

	@Override
	public String toString() {
		return "name :" + name + "\t" + "sex:" + sex + "\t" + "birthday:"
				+ birthday + "\t" + "hobby:" + hobby;
	}

}

 


五,编写主函数测试类:

package com.yajun;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.List;

import com.yajun.dataobject.Baby;

/**
 * Hello world!
 * 
 */
public class JdbcDemo {
	private static Connection con = null;

	static {
		String url = "jdbc:mysql://localhost:3306/babyStore";
		String user = "root";
		String passwd = "hello";
		try {
			con = DriverManager.getConnection(url, user, passwd);
		} catch (SQLException e) {
			throw new RuntimeException("数据库连接异常");
		}

	}

	public static void main(String[] args) throws SQLException {
		/**
		 * JDK 1.6以上不需要些自己forName加载驱动
		 */
		// try {
		// Class.forName("com.mysql.jdbc.Driver");
		// } catch (ClassNotFoundException e) {
		// }

		JdbcDemo demo = new JdbcDemo();

		Baby myBaby = new Baby();
		myBaby.setName("吴亚军");
		myBaby.setSex("f");

		myBaby.setBirthday(Calendar.getInstance().getTime());
		myBaby.setHobby("hao se");
		demo.insertBaby(myBaby);

		List<Baby> list = demo.getAllBaby();
		for (Baby baby : list) {
			System.out.println(baby);
		}

	}

	/**
	 * 把所有的宝宝找出来
	 * 
	 * @return
	 * @throws SQLException
	 */
	private List<Baby> getAllBaby() throws SQLException {
		String query = "select * from Baby";
		Statement stmt = con.createStatement();
		ResultSet rs = stmt.executeQuery(query);
		List<Baby> babyList = new ArrayList<Baby>();
		while (rs.next()) {
			Baby baby = new Baby();
			baby.setId(rs.getInt(1));
			baby.setName(rs.getString(2));
			baby.setSex(rs.getString(3));
			baby.setBirthday(rs.getDate(4));
			baby.setHobby(rs.getString(4));
			babyList.add(baby);
		}
		return babyList;
	}

	/**
	 * 诞生一个宝宝
	 * 
	 * @param baby
	 * @return
	 * @throws SQLException
	 */
	private int insertBaby(Baby baby) throws SQLException {
		PreparedStatement updateSales = con
				.prepareStatement("insert into Baby(name,sex,birthday,hobby) values(?,?,?,?)");
		updateSales.setString(1, baby.getName());
		updateSales.setString(2, baby.getSex());
		updateSales.setDate(3, new java.sql.Date(baby.getBirthday().getTime()));
		updateSales.setString(4, baby.getHobby());
		updateSales.executeUpdate();
		return 0;

	}
}

 

分享到:
评论
2 楼 yjhexy 2009-09-16  
lixjluck 写道
http://docs.google.com/present/view?id=dcpwhpq7_113grzpd9

谢谢晓军提供的好东东。继续深入学习基础。有不懂再向您请教哈。
1 楼 lixjluck 2009-09-16  
http://docs.google.com/present/view?id=dcpwhpq7_113grzpd9

相关推荐

    jdbc-odbc.zip_jdbc-odbc download

    Java数据库连接(JDBC)是Java编程语言中用于与各种数据库进行交互的一组接口和类。JDBC-ODBC桥是JDBC最初提供...而对于有经验的开发者,这可能是一个快速回顾和参考的资源,以应对那些仍然依赖于JDBC-ODBC桥的旧系统。

    宠物管理系统 基于jdbc最基层 原生框架系列

    在本项目中,开发者将直接使用JDBC API来连接数据库,执行SQL语句,实现数据的增删改查功能。学习JDBC包括理解DriverManager、Connection、Statement、PreparedStatement和ResultSet等核心类的作用和用法。 其次,*...

    JDBC所有数据库连接字符串

    #### 二、JDBC基础知识回顾 在深入了解具体的数据库连接字符串之前,我们先来回顾一下JDBC的基本概念: - **JDBC驱动**:用于建立Java应用程序与数据库之间通信的软件。 - **Class.forName()**:用来加载指定的...

    jdbc 分页 sql语句

    #### 二、基础知识回顾 1. **ROWNUM函数**:在Oracle数据库中,`ROWNUM`是一个特殊的伪列,它为结果集中的每一行分配一个唯一的数字,从1开始递增。利用`ROWNUM`可以很容易地实现数据分页。 2. **子查询**:子查询...

    java jdbc连接数据库

    在深入了解JDBC的具体用法之前,我们先简要回顾一下JDBC的基本概念: 1. **驱动管理器(DriverManager)**:用于加载JDBC驱动并创建与数据库之间的连接。 2. **连接(Connection)**:表示到数据库的连接。 3. **...

    JDBC连接数据库经验技巧集萃

    在深入讨论各种数据库的连接方式之前,我们先简要回顾一下JDBC的基本概念: - **JDBC驱动程序**:用于与特定数据库建立连接的软件组件。根据数据库的不同,可能需要安装相应的JDBC驱动。 - **DriverManager**:JDBC...

    JavaSE、MySQL基础、JDBC

    在学习过程中,使用ediary软件可以帮助你记录学习笔记,整理思路,方便回顾和复习。而xmind软件则是一个强大的思维导图工具,可以通过创建节点和分支,将复杂的知识结构化,便于理解和记忆。在你的主页第一篇文章中...

    JAVAJDBC数据库编程PPT课件.ppt

    在讲解JDBC之前,我们先回顾一下相关背景知识。JBuilder是一款集成开发环境,专用于设计和开发Java应用程序。Swing是Java AWT(Abstract Window Toolkit)的扩展,提供了更多的组件和功能,用于构建图形用户界面...

    spring jdbc

    在深入探讨Spring JDBC的核心知识点之前,我们先简要回顾一下Spring框架本身。Spring是一个开源的、轻量级的Java开发框架,旨在简化企业级应用的开发。它通过提供依赖注入(Dependency Injection,DI)、面向切面...

    本项目实现了 Java 的 JDBC 。 自己学习 Java 过程中对于知识点的强化记忆,强化代码练习;方便回顾和实用。.zip

    java基础知识学习资料 java开发实践案例 项目学习 源代码 供参考java基础知识学习资料 java开发实践案例 项目学习 源代码 供参考java基础知识学习资料 java开发实践案例 项目学习 源代码 供参考java基础知识学习资料...

    第24讲 JDBC编程2.ppt

    本讲主要探讨PreparedStatement的使用及其优势,以及CallableStatement和数据库事务的相关知识。 首先,PreparedStatement相较于普通的Statement对象,其主要优点在于执行速度更快和SQL语句的参数化。当...

    Java基础知识回顾共2页.pdf.zip

    标题"Java基础知识回顾共2页.pdf.zip"表明这是一个关于Java基础知识的简短总结,可能涵盖了核心概念和技术,分为两个部分进行讲解。虽然具体的文档内容未提供,但我们可以预期它将讨论以下几个关键领域: 1. **Java...

    传智播客崔希凡JavaWeb-day18JDBC第二天-全部资料

    通过这些资料,学习者不仅可以了解JDBC的基础知识,如如何建立数据库连接、执行SQL语句、处理结果集,还能接触到高级话题如连接池的使用、设计模式的应用以及第三方库 DbUtils 的实战技巧。结合视频教程,这些文档和...

    JAVA笔试面试资料JDBC HTTP、JSP、Servlet、Struts面试题汇总资料.zip

    JAVA笔试面试资料JDBC HTTP、JSP、Servlet、Struts面试题汇总资料: 2014年最新Java笔试题及答案.docx 225道Java面试题 学会了Java面试随你问.docx Ant和Maven的作用是什么?...遇到的一些Java面试题回顾.docx

    SSH知识回顾与整合说明

    本文将对SSH框架进行知识回顾,并详细介绍整合过程。 1. Struts框架 Struts是一个基于MVC设计模式的Web应用框架,用于组织和控制应用程序的逻辑。主要步骤包括: - 导入Struts库 - 在`web.xml`中配置Struts ...

    传智播客JDBCPPT

    【标题】"传智播客JDBCPPT"所涉及的知识点主要集中在Java数据库连接(JDBC)技术上,这是Java...对于初学者来说,这是一个全面且实用的学习资源,对于有一定经验的开发者,也可以作为回顾和巩固JDBC技术的参考资料。

    spring知识点总结

    这样的总结对于快速回顾和记忆Spring知识点非常有用。 **学习路径** 对于初学者,首先应该理解Spring的基本概念,如IoC和AOP,然后逐步学习Spring的各个模块,例如Spring MVC(用于构建Web应用)、Spring JDBC和...

    JavaWeb每日总结思维导图

    本资源免费下载供大家阅读使用,全程知识点,使用思维导图的方式对知识进行梳理,包含各技术名词的概念及代码,内容清晰有序,适合初学者学习使用——每日一个 ,亦可以作为开发老鸟回顾知识的笔记。选择下载该内容...

    mybatis入门的基础三天知识量

    在使用MyBatis之前,我们需要先回顾一下JDBC的基本操作。JDBC(Java Database Connectivity)是Java中用来规范客户端程序如何访问数据库的应用程序接口,提供了诸如查询和更新数据库中数据的方法。 - **JDBC基本...

Global site tag (gtag.js) - Google Analytics