回顾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;

	}
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值