jdbc_连接数据库
1、例一:
package com.vince.jdbc;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;
public class JdbcDemo{
public final static String URL = "jdbc:mysql://localhost:3306/test";
//用户名
public final static String USERNAME = "root";
//密码
public final static String PASSWORD = "admin";
public final static String DRIVER = "com.mysql.jdbc.Driver";
public static void main(String[] args) {
insert();
// update();
// delete();
}
public static void insert(){
try {
/*1、加载驱动*/
Class.forName(DRIVER);
/*2、连接数据库*/
Connection cnn = DriverManager.getConnection(URL, USERNAME, PASSWORD);
//3、构造SQL语句
String sql = "insert into emp1 values(3,'小栏','女',9000,29,0,1);";
//4、构造一个Statement实例(用来发送SQL语句的载体)
Statement state= cnn.createStatement();
//5、执行SQL语句
state.executeUpdate(sql);
//6、关闭连接
state.close();
cnn.close();
System.out.println("success.");
} catch (ClassNotFoundException e) {
System.out.println("加载失败");
e.printStackTrace();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
例二:
package com.vince.jdbc;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class JdbcDemo{
public final static String URL = "jdbc:mysql://localhost:3306/test";
//用户名
public final static String USERNAME = "root";
//密码
public final static String PASSWORD = "admin";
public final static String DRIVER = "com.mysql.jdbc.Driver";
public static void main(String[] args) {
// insert();
select();
// update();
// delete();
}
public static void insert(){
try {
/*1、加载驱动*/
Class.forName(DRIVER);
/*2、连接数据库*/
Connection cnn = DriverManager.getConnection(URL, USERNAME, PASSWORD);
//3、构造SQL语句
String sql = "insert into emp1 values(3,'小栏','女',9000,29,0,1);";
//4、构造一个Statement实例(用来发送SQL语句的载体)
Statement state= cnn.createStatement();
//5、执行SQL语句
state.executeUpdate(sql);
//6、关闭连接
state.close();
cnn.close();
System.out.println("success.");
/*添删改都是一样的,把sql语句一改就可以了*/
} catch (ClassNotFoundException e) {
System.out.println("加载失败");
e.printStackTrace();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
public static void select(){
try {
Class.forName(DRIVER);
Connection conn = DriverManager.getConnection(URL, USERNAME, PASSWORD);
String sql = "select * from emp1 ";
Statement state = conn.createStatement();
//执行查询并返回结果集
ResultSet rs = state.executeQuery(sql);
while(rs.next()){
int id = rs.getInt(1);
String name=rs.getString(2);
String gender=rs.getString(3);
float age=rs.getFloat(4);
System.out.println(id+name+gender+age);
}
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
例三:使用PreparedStatement插入数据
package com.vince.jdbc;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class PreparedStatement_demo {
//数据库连接地址
public final static String URL = "jdbc:mysql://localhost:3306/test"; //用户名
public final static String USERNAME = "root";
//密码
public final static String PASSWORD = "admin";
public final static String DRIVER = "com.mysql.jdbc.Driver";
/**
* 使用
* @param PreparedStatement插入数据
*/
public static void insert(Person p){
try {
Class.forName(DRIVER);
Connection conn = DriverManager.getConnection(URL, USERNAME, PASSWORD);
String sql = "insert into emp1(id,name,gendar,salary,age)values(?,?,?,?,?)";
PreparedStatement ps = conn.prepareStatement(sql);
//设置占位符对应的值
ps.setInt(1, p.getId());
ps.setString(2, p.getName());
ps.setString(3, p.getGendar());
ps.setFloat(4,p.getSalary());
ps.setFloat(5,p.getAge());
ps.executeUpdate();
ps.close();
conn.close();
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
}
}
public static void main(String[] args) {
Person p = new Person(7,"小黑","男",5000,30);
insert(p);
// update(p);
// delete(3);
// p = findById(2);
System.out.println(p);
}
}
-----------------------
同文件夹新建一个Person类
package com.vince.jdbc;
public class Person {
private int id;
private String name;
private String gendar;
private float salary;
private int age;
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 String getGendar() {
return gendar;
}
public void setGendar(String gendar) {
this.gendar = gendar;
}
public float getSalary() {
return salary;
}
public void setSalary(float salary) {
this.salary = salary;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public Person(int id, String name, String gendar, float salary ,int age) {
super();
this.id = id;
this.name = name;
this.gendar = gendar;
this.salary = salary;
this.age= age;
}
}
jdbc_连接数据库的更多相关文章
- Eclipse使用JDBC方式连接SQLServer2008
JDBC_连接数据库一.配置 (一) 通过SQL Server配置管理器配置相关部分: 右键点击,启动tcp/ip协议右键点击属性查看自己的TCP端口号,记住,后面会用到右键点击SQL Server ...
- react+redux教程(八)连接数据库的redux程序
前面所有的教程都是解读官方的示例代码,是时候我们自己写个连接数据库的redux程序了! 例子 这个例子代码,是我自己写的程序,一个非常简单的todo,但是包含了redux插件的用法,中间件的用法,连接 ...
- 【基于WinForm+Access局域网共享数据库的项目总结】之篇三:Access远程连接数据库和窗体打包部署
篇一:WinForm开发总体概述与技术实现 篇二:WinForm开发扇形图统计和Excel数据导出 篇三:Access远程连接数据库和窗体打包部署 [小记]:最近基于WinForm+Access数据库 ...
- winForm连接数据库(sqlserver2005)
帮同学搞个课程设计winform连接sqlserver2005 具体方法: .添加App.config文件 2.在App.config文件中添加节点 <?xml version="1. ...
- c3p0连接数据库的3种方式
c3p0连接数据库的3种方式,这里以mysql为例 1. 直接用set方法设置参数, 基本方法 ComboPooledDataSource dataSource = new ComboPooledDa ...
- Java连接数据库的辣几句话
Java连接数据库的辣几句话 1.java连接Oracle数据库 使用以下代码三个步骤: 1.下载ojdbc.jar包并导入项目中.附下载地址:http://download.csdn.net/det ...
- 基础的jdbc连接数据库操作
首先我们知道在数据库中,我们可以直接写sql或者直接通过数据库工具操作数据,但是在java程序中我们是不能直接操作数据库数据的,所以这就引入了jdbc操作. 百度百科:JDBC(Java Data B ...
- Python 3.x 连接数据库(pymysql 方式)
==================pymysql=================== 由于 MySQLdb 模块还不支持 Python3.x,所以 Python3.x 如果想连接MySQL需要安装 ...
- JDBC连接数据库
JDBC连接数据库 1.加载JDBC驱动程序. Class.forName("com.mysql.jdbc.Driver"); 建立连接,. Connection conn = D ...
随机推荐
- ODAC访问oracle时,提示:由于以前的函数求值超时,函数求值被禁用,必须继续执行才能正常返回
这是因为调试时会自动对Local/Watch等窗口里面(或鼠标停留所在)的变量求值,为了防止用户写的程序错误(比如死循环),系统有一个超时限制,如果某个属性的get中做了很复杂的操作(而不是简单地返回 ...
- CF GYM 100703M It's complicate
题意:龙要做茶,需要n种原料,给出他有的原料个数,和每份茶需要的原料个数,和每种原料的价格,要求做整数份茶,把他之前有的原料用完最少要花多少钱. 解法:水题. 代码: #include<stdi ...
- HDU 1163 Eddy's digital Roots
Eddy's digital Roots Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Oth ...
- 如何使用spring中的Log4jConfigListener--删除
使用spring中的Log4jConfigListener有如如下好处: 1. 动态的改变记录级别和策略,不需要重启Web应用,如<Effective Enterprise Java> ...
- UMDF
看了一周的UMDF,今天就将这些天的心得记下来. 一开始,老大推荐看<竹林蹊径:深入浅出Windows驱动开发完美补全版.张佩马勇董鉴源.扫描版>.这本书看了前三章,这本书讲的太细,作者又 ...
- 咨询内容: TF卡一定要重新买吗,为什么我的放进去读不了呢
京东回复:您好!先科(SAST) SA-992 便携数码音响 (兰色)不用重新买,但是需要您采用FAT分区重新格式化,感谢您对京东的支持!祝您购物愉快!
- cocos2d中两种移动的算法
在对cocos2d的sprite处理移动的过程中,通常用到的两种移动的算法: 假设这个CCNode是直接放在CCLayer上的 距离差法: CGPoint curTouchPosUI = [touch ...
- jquery选择器返回值
jquery选择器$('selector')返回的不是数组,而是封装好的jquery对象.但这个对象有一个特别的地方,就是查询到的节点被以下标为属性,添加到了jquery对象上,所以它看起来像数组,因 ...
- 【JS】Advanced1:Object-Oriented Code
Object-Oriented Code 1. var Person = function (name) { this.name = name; }; Person.prototype.say = f ...
- .Net高级技术
本次课程中讲的有的东西都是根据初学者的认知规律进行了调整,并不是严谨的,比如很多地方在多AppDomain条件下很多说法就不对了,但是说严谨了大家就晕了,因此继续不严谨的讲吧. 很多面试题都在这阶段的 ...