package JDBC_TEST;

import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;

import com.mysql.jdbc.Connection;
import com.mysql.jdbc.Statement;

public class TestConn {
/**
* 步骤:
* 1.加载JDBC驱动
* 2.建立数据库连接
* 3.创建Statement对象
* 4.执行SQL语句
* 5.处理返回结果
* 6.关闭连接
* @param args
* @throws SQLException
*/
public static void main(String[] args) throws SQLException {

//实例化类对象:
TestConn con=new TestConn();
con.getConn();

//4.执行SQL语句,获取用户列表信息
// try {
// con.queryUsersList();
// } catch (SQLException e) {
// // TODO Auto-generated catch block
// e.printStackTrace();
// }
//con.insert();

}


public Connection getConn(){
/*1.加载驱动:放入第三方jar包(webif\lib\mysql-connector-java-5.1.25-bin),
* 通过java.lang.class类加载该包
*/
try {
Class.forName("com.mysql.jdbc.Driver");
System.out.println("连接成功");

} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
//e.printStackTrace();
System.out.println("找不到驱动程序");
}
/*2.创建连接
* (1)通过jdbc提取url,
* url格式:协议:子协议:数据库标识(jdbc://mysql://ip地址:端口/数据库)
*/
String url="jdbc:mysql://localhost:3306/student";
//(2)创建连接
Connection conn=null;
try {
conn= (Connection) DriverManager.getConnection(url, "root", "");
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return conn;
}
/**
* 3.创建Statement对象,查询数据库表users,显示列表信息
* @throws SQLException
*/
public void queryUsersList() throws SQLException{
//连接数据库
Connection con=getConn();
ResultSet res=null;

//创建Statement对象
Statement sta=null;

try {
sta=(Statement) con.createStatement();
//执行相关SQL语句
String sql ="select * from users";
res=sta.executeQuery(sql);
while(res.next()) {//逐条显示
//查询时可以根据列的序号,也可以通过列名查询
System.out.print("姓名:"+res.getString(2)+"\t");
System.out.println("籍贯:"+res.getString("address"));
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally{
//6.关闭连接:注意先使用的后关闭


res.close();
sta.close();
con.close();
}

}

/**
* 通过JDBC实现对数据库的新增记录操作
* @throws SQLException
*/
public void insert() throws SQLException{

//1.加载驱动,建立对数据库连接
Connection con= getConn();
//2.创建一个Statement对象
Statement st= (Statement) con.createStatement();
String sql="insert into users (name,age) values('张三',20)";
st.executeUpdate(sql);
//3.关闭连接
st.close();
con.close();


}
}

一、javase学习:数据库操作练习的更多相关文章

  1. Spring Boot学习——数据库操作及事务管理

    本文讲解使用Spring-Data-Jpa操作数据库. JPA定义了一系列对象持久化的标准. 一.在项目中使用Spring-Data-Jpa 1. 配置文件application.properties ...

  2. django学习-数据库操作接口API--(CRUD)

    初试API(数据库操作接口CRUD) 现在我们进入交互式python命令行,尝试一下django为你创建的各种API,通过以下命令打开python命令行: py -3 manage.py shell进 ...

  3. 学习MySQL之数据库操作(一)

    所有代码,均为自学时用到的测试与注释,知识细节或知识点不会面面俱到,亦不会有任何讲解,只做为自己学习复习用. ##数据库操作 ##创建数据库 myTest ,并将数据库字符集设为GBK CREATE ...

  4. Flas-SQLAchemy数据库操作使用学习笔记

    Flas-SQLAchemy数据库操作使用学习笔记 Flask-SQLALchemy 是一个给你的应用添加 SQLALchemy 支持的 Flask 扩展.SQLALchemy 是Python语言的S ...

  5. PHP学习之-数据库操作

    PHP学习之-数据库操作 1.PHP支持那些数据库 PHP通过安装相应的扩展来实现数据库操作,现代应用程序的设计离不开数据库的应用,当前主流的数据库有MsSQL,MySQL,Sybase,Db2,Or ...

  6. golang学习笔记16 beego orm 数据库操作

    golang学习笔记16 beego orm 数据库操作 beego ORM 是一个强大的 Go 语言 ORM 框架.她的灵感主要来自 Django ORM 和 SQLAlchemy. 目前该框架仍处 ...

  7. android菜鸟学习笔记20----Android数据存储(四))Android数据库操作

    Android内置了一个名为SQLite的关系型数据库,这是一款轻量型的数据库,操作十分简便.SQLite与别的数据库不同的是,它没有数据类型.可以保存任何类型的数据到你所想要保存的任何表的任何列中. ...

  8. MongoDB学习笔记(2):数据库操作及CURD初步

    MongoDB学习笔记(2):数据库操作及CURD 数据库操作 创建数据库 首先MongoDB中数据库的创建和数据库的切换都是使用命令,USE DATABASE,如果要切换的数据库不存在则会进行创建, ...

  9. springboot学习-jdbc操作数据库--yml注意事项--controller接受参数以及参数校验--异常统一管理以及aop的使用---整合mybatis---swagger2构建api文档---jpa访问数据库及page进行分页---整合redis---定时任务

    springboot学习-jdbc操作数据库--yml注意事项--controller接受参数以及参数校验-- 异常统一管理以及aop的使用---整合mybatis---swagger2构建api文档 ...

  10. java EE学习之数据库操作

    jdbc开发流程 注册驱动 建立连接(Connection) 创建运行SQL的语句(Statement) 运行语句 处理运行结果(ResultSet) 释放资源 注冊驱动有三种方式: Class.fo ...

随机推荐

  1. SpringMVC工作环境搭建 配置文件

    web.xml配置 在服务器端容器启动之前加载配置文件的顺序:context-param>listener>filter>servlet //容器配置application上下文的时 ...

  2. Codeforces Round #232 (Div. 2) D. On Sum of Fractions

    D. On Sum of Fractions Let's assume that v(n) is the largest prime number, that does not exceed n; u ...

  3. php SimpleXML 例子

    $txt = GetRemoteText($url); if(strlen($txt) > 0) { $xml = simplexml_load_string($txt); //获取xml if ...

  4. canvas内容

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  5. java面试题个人总结

    1.重载和重写的区别重写:发生在父子类中,方法名.参数列表必须相同,返回值小于等于父类,抛出的异常小于等于父类,访问修饰符大于等于父类:如果父类方法访问修饰符为private则子类中就不是重写.2.j ...

  6. 广东地区电信官方DNS服务器

    以下是广东地区电信官方DNS服务器,简单记录,以备后用! 主解析服务器: 202.96.128.143 202.96.128.68 202.105.80.210 缓存服务器(亦可作DNS解析之用) c ...

  7. 《SSM框架搭建》三.整合spring web

    感谢学习http://blog.csdn.net/zhshulin/article/details/37956105#,还是修改了spring到最新的版本和接口开发示例 根据前一篇日志,已经有了myb ...

  8. KBMMW 4.92.00 发布

    We are happy to announce the release of kbmMW Professional and Enterprise Edition. Yet again kbmMW c ...

  9. C# ADO.NET (sql语句连接方式)(增,删,改)

    using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.We ...

  10. Spark 2.6.1 源代码在 eclipse 的配置

    本文地址:http://www.cnblogs.com/jying/p/3671767.html 这么个问题又耗费了偶一天时间,真是羞愧.. 上午从官网svn地址下载最新的 spark 包,总是下载失 ...