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. nodejs express环境配置

    下载安装最新版nodejs,安装完毕运行命令 node -v 查看版本以及是否安装成功. 然后安装express插件,命令 npm install -g express (全局)  , express ...

  2. java、tomcat环境变量的配置(针对windows)

    重做了下系统. 于是所有的软件都没了. 好吧,我是故意的,就是把那些我不知道的东西都删掉.. 于是问题来了,java安装好了,tomcat也粘贴完了,环境变量怎么办? 好吧,首先从可爱的java或者说 ...

  3. WINDOWS Server2008上部署Oracle10g及oracle SQL语法小记

    首先安装10G客户端 情况一:一般都会安装到一般报错.因为10G是32BIT客户端.而操作系统是64位的.但是不会影响配置监听程序.自主开发的应用程序依然可以运行. 情况二:报错但是配置完监听程序始终 ...

  4. iOS 趣谈设计模式——通知

    [前言介绍] iOS的一种设计模式,观察者Observer模式(也叫发布/订阅,即Publich/Subscribe模式). 观察者模式,包含了通知机制(notification)和KVO(Key-v ...

  5. 登录式与非登录式&交互式与非交互式shell及其环境初始化过程

    交互式shell和非交互式shell(interactive shell and non-interactive shell) 交互式模式就是在终端上执行,shell等待你的输入,并且立即执行你提交的 ...

  6. java 配置文件读取

    1.getResourceAsStream Class.getClassLoader.getResourceAsStream(String path) :默认则是从ClassPath根下获取,path ...

  7. linux 时间同步

    [转自 qing_gee的专栏 :http://blog.csdn.net/qing_gee/article/details/42234997 ] 前言:在我们的项目中,需要同步Linux服务器的时间 ...

  8. Oracle死锁处理

    SELECT s.username,l.OBJECT_ID,l.SESSION_ID,s.SERIAL#, l.ORACLE_USERNAME,l.OS_USER_NAME,l.PROCESS,b.O ...

  9. 多行SQL语句拼成一条数据

    将多条数据组合到一行 ) set @sql='select ''roleinfo:''' ) declare cursor1 cursor for select id from Userrole wh ...

  10. git乱码问题解决

    etc\gitconfig文件中增加以下内容: [gui]     encoding = utf-8 [i18n]     commitencoding = gbk [svn]     pathnam ...