Java - 面向对象思想进行JDBC编程

mysql-connector-java-5.1.7-bin.jar

jdbc.properties

driver=com.mysql.jdbc.Driver
jdbcUrl=jdbc\:mysql\://localhost\:3306/lesson
user=root
password=

JDBCTools.java

package 面向对象思想进行JDBC编程;

import java.io.IOException;
import java.io.InputStream;
import java.sql.Connection;
import java.sql.SQLException;
import java.util.Properties;

import com.mysql.jdbc.Driver;
import com.mysql.jdbc.Statement;

public class JDBCTools {
	public static void update(String sql)
	{
		Connection conn=null;
		java.sql.Statement statement=null;
		try {conn=getConnection();
		statement= conn.createStatement();
		statement.executeUpdate(sql);
		} catch (Exception e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		finally
		{JDBCTools.release(conn, (Statement) statement);
		}
	}
	public static Connection getConnection() throws InstantiationException, IllegalAccessException, ClassNotFoundException, SQLException, IOException
	{
		String driverClass=null;
		String jdbcUrl=null;
		String user=null;
		String password=null;
		InputStream in= JDBCTools.class.getClassLoader().getResourceAsStream("jdbc.properties");
		Properties p=new Properties();
		p.load(in);
		driverClass=p.getProperty("driver");
		jdbcUrl=p.getProperty("jdbcUrl");
		user=p.getProperty("user");
		password=p.getProperty("password");
		Driver driver=(Driver) Class.forName(driverClass).newInstance();
		Properties info=new Properties ();
		info.put("user",user);
		info.put("password",password);
		Connection connection=driver.connect(jdbcUrl, info);
		System.out.println(connection);
		return connection;
	}
	public static void release(Connection conn,Statement statement)
	{

		try {
			if(statement!=null)
				statement.close();
		} catch (Exception e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}finally
		{
			if(conn!=null)
				try {
					conn.close();
				} catch (SQLException e) {
					// TODO Auto-generated catch block
					e.printStackTrace();
				}
		}
	}
}

Student.java

public class Student {

		private int id;
		private String name;
		private int age;
		private int clas;
		private String address;
		private String sex;
		public int getId() {
			return id;
		}
		public void setId(int id) {
			this.id = id;
		}
		public String getName() {
			return name;
		}
		public void setName(String name) {
			this.name = name;
		}
		public int getAge() {
			return age;
		}
		public void setAge(int age) {
			this.age = age;
		}
		public int getClas() {
			return clas;
		}
		public void setClas(int clas) {
			this.clas = clas;
		}
		public String getAddress() {
			return address;
		}
		public void setAddress(String address) {
			this.address = address;
		}
		public String getSex() {
			return sex;
		}
		public void setSex(String sex) {
			this.sex = sex;
		}
		public Student(int id, String name, int age, int clas, String address,
				String sex) {
			super();
			this.id = id;
			this.name = name;
			this.age = age;
			this.clas = clas;
			this.address = address;
			this.sex = sex;
		}
		public Student() {
			super();
		}
		@Override
		public String toString() {
			return "Student [id=" + id + ", name=" + name + ", age=" + age
					+ ", clas=" + clas + ", address=" + address + ", sex=" + sex
					+ "]";
		}

}

test.java

import java.io.IOException;
import java.sql.SQLException;
import java.util.Scanner;

public class test {
//	public void testAddnewStudent() throws InstantiationException, IllegalAccessException, ClassNotFoundException, SQLException, IOException
//	{
//
//		testAddNew(test.getInformationFromConsole());
//	}
	private static Student getInformationFromConsole()
	{
		Scanner sc=new Scanner(System.in);
	Student stu=new Student();
	System.out.println("Id:");
	stu.setId(sc.nextInt());
	System.out.println("Name:");
	stu.setName(sc.next());
	System.out.println("Age:");
	stu.setAge(sc.nextInt());
	System.out.println("Clas:");
	stu.setClas(sc.nextInt());
	System.out.println("Address:");
	stu.setAddress(sc.next());
	System.out.println("Sex:");
	stu.setSex(sc.next());
		return stu;

	}
	public void testAddNew(Student stu) throws InstantiationException, IllegalAccessException, ClassNotFoundException, SQLException, IOException{
		String sql="INSERT INTO study VALUES("+stu.getId()+",‘"+stu.getName()+"‘,"+stu.getAge()+","+stu.getClas()+",‘"+stu.getAddress()+"‘,‘"+stu.getSex()+"‘)";
    System.out.println(sql);
		JDBCTools.update(sql);

	}
	public static void main(String[] args) {
		test te=new test();

		try {
			te.testAddNew(te.getInformationFromConsole());
		} catch (InstantiationException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} catch (IllegalAccessException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} catch (ClassNotFoundException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}
}
时间: 2024-10-25 22:20:49

Java - 面向对象思想进行JDBC编程的相关文章

Java基础教程:JDBC编程

Java基础教程:JDBC编程 快速开始 什么是JDBC JDBC 指 Java 数据库连接,是一种标准Java应用编程接口( JAVA API),用来连接 Java 编程语言和广泛的数据库. JDBC API 库包含下面提到的每个任务,都是与数据库相关的常用用法. 制作到数据库的连接. 创建 SQL 或 MySQL 语句. 执行 SQL 或 MySQL 查询数据库. 查看和修改所产生的记录. 从根本上来说,JDBC 是一种规范,它提供了一套完整的接口,允许便携式访问到底层数据库,因此可以用 J

Java之十五 JDBC编程

有了JDBC,向各种关系数据发送SQL语句就是一件很容易的事.换言之,有了JDBCAPI,就不必为访问Sybase数据库专门写一个程序,为访问Oracle数据库又专门写一个程序,或为访问Informix数据库又编写另一个程序等等,程序员只需用JDBCAPI写一个程序就够了,它可向相应数据库发送SQL调用.同时,将Java语言和JDBC结合起来使程序员不必为不同的平台编写不同的应用程序,只须写一遍程序就可以让它在任何平台上运行,这也是Java语言"编写一次,处处运行"的优势. Java数

Java面向对象思想

Java的核心思想,面向对象思想. Java面向对象的最高境界,万物皆对象. 对象:现实中随处可见的事物都可以叫对象,对象就是实体的事物,人.小鸟.桌子.大树.楼房等等.对象又有自己的属性行为,属性行为又分为动态行为和静态行为.人的年龄姓名性别身高等属性是静态的,人可以唱歌,游泳,哭泣等行为是动态的. 对象在系统中是用来描述客观事物的一个实体,它是构成系统的一个基本单位.它也是由一些基本属性和对这些属性进行操作的一些方法来构成. 类是对对象属性和行为(方法)的载体,具有相同属性和行为(方法)的实

JAVA面向对象思想理解分析

1.面向对象是面向过程而言.两者都是一种思想.面向过程:强调的是功能行为.(强调过程.动作)面向对象:将功能封装进对象,强调了具备了功能的对象.(强调对象.事物)面向对象是基于面向过程的.将复杂的事情变简单了.面向过程-->面向对象:执行者-->指挥者将过程.功能封装进对象里面.面向对象三大特征:封装.继承.多态.(找对象,建立对象,使用对象,维护对象的关系.)老者境界:(万物皆对象!!!)例:公司招聘程序员:为了提高效率,公司老板从面向过程到面向对象(执行者-->指挥者)例:去饭店吃饭

java面向对象思想1

1.面向对象是面向过程而言.两者都是一种思想.面向过程:强调的是功能行为.(强调过程.动作)面向对象:将功能封装进对象,强调了具备了功能的对象.(强调对象.事物)面向对象是基于面向过程的.将复杂的事情变简单了.面向过程-->面向对象:执行者-->指挥者将过程.功能封装进对象里面.面向对象三大特征:封装.继承.多态.(找对象,建立对象,使用对象,维护对象的关系.)老者境界:(万物皆对象!!!)例:公司招聘程序员:为了提高效率,公司老板从面向过程到面向对象(执行者-->指挥者)例:去饭店吃饭

java面向对象思想2

1.主函数是一类特殊的函数,作为程序入口,可被虚拟机调用.主函数格式是固定的.public:函数访问权限最大.static:代表函数随着类的加载已经存在.void:主函数没有具体返回值.main:不是关键字,是一个特殊的单词,可被虚拟机识别.(String[] arr):函数的参数,字符串元素的数组.arr可以改变.虚拟机在调用主函数时,传入的是new String[0];没有元素.调用为:类.方法名():3.什么时候使用静态?静态随着类的加载而加载.使用静态变量:对象中有共享数据时.该数据被静

Java面向对象思想解决猜拳问题

第一个面向对象的程序: 一个控制台猜拳小游戏: 第一步选择角色: 第二部选择剪刀,石头,布,与电脑进行PK: 第三部选择继续或者选择结束; 结束显示比赛的局数,以及各自赢得的分数: 设计思路 分析问题,设计出四个类 1.设计Person,Computer,Game三个类: 2.设计Test类启动程序: 测试运行: -----------欢迎进入游戏世界----------- ****************** ******猜拳开始***** ****************** -------

Java如何实现面向对象思想

"在JAVA中,我们所做的所有工作,就是定义类,创建这些类的对象,并传消息给这些对象" 对于JAVA面向对象思想的学习,依照此理解顺序 1.理解面向对象的总体思想与主要特性,例如封装,继承,多态,超类,集合,泛型,多线程等等. 2.接下来,也就是本章节讲解的内容,我们需要进一步了解,利用JAVA语言本身进行面向对象程序设计的过程. 操纵对象的"引用" 任何一种编程语言,都拥有其操纵内存中元素的方式.通过引用对象操作内存,可以把引用视为一个遥控器,将对象视为一个电视.

java面向对象:面向对象的思想和概述

1:面向对象思想 面向对象是基于面向过程的编程思想. 面向过程:强调的是每一个功能的步骤 面向对象:强调的是对象,然后由对象去调用功能 2:面向对象的思想特点 A:是一种更符合我们思想习惯的思想 B:可以将复杂的事情简单化 C:将我们从执行者变成了指挥者 开发,设计,特征 面向对象开发 就是不断的创建对象,使用对象,指挥对象做事情. 面向对象设计 其实就是在管理和维护对象之间的关系. 面向对象特征 封装(encapsulation) 继承(inheritance) 多态(polymorphism