package Dao;

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 entity.UserInfo; public class JDBC {
Connection conn;
PreparedStatement ps;
ResultSet rs;
/**
* 写一个连接数据库的方法
*/
public Connection getConnection(){
String url="jdbc:mysql://localhost:端口/数据库";
String userName="root";
String password="密码";
try {
Class.forName("com.mysql.jdbc.Driver");
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
System.out.println("找不到驱动!");
e.printStackTrace();
}
try {
conn=DriverManager.getConnection(url, userName, password);
if(conn!=null){
System.out.println("connection successful");
}
} catch (SQLException e) {
// TODO Auto-generated catch block
System.out.println( "connection fail");
e.printStackTrace();
}
return conn;
}
/**
* 写一个查询数据库语句的方法
*/
public void QuerySql(){
//1、执行静态SQL语句。通常通过Statement实例实现。
// 2、执行动态SQL语句。通常通过PreparedStatement实例实现。
// 3、执行数据库存储过程。通常通过CallableStatement实例实现。
System.out.println("query");
UserInfo u;
// j.Connection();
String sql="select * from userInfo";
try {
conn=getConnection();//连接数据库
ps=conn.prepareStatement(sql);// 2.创建Satement并设置参数
rs=ps.executeQuery(sql); // 3.ִ执行SQL语句
// 4.处理结果集
while(rs.next()){
u=new UserInfo();
u.setUserId(rs.getInt("userId"));
u.setUserName(rs.getString("userName"));
u.setPassword(rs.getString("password"));
u.setRemark(rs.getString("remark"));
System.out.println("uesrName"+u.getUserName());
}
System.out.println(rs.next());
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally{
//释放资源
try {
rs.close();
ps.close();
conn.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
@SuppressWarnings("null")
public int add(UserInfo user){
UserInfo u =new UserInfo();
int row=0;
// j.Connection();
String sql="insert into userInfo(userName,password) values(?,?)";
try {
conn=getConnection();//连接数据库
ps=conn.prepareStatement(sql);// 2.创建Satement并设置参数
// rs=ps.executeQuery(); // 3.ִ执行SQL语句,緊緊用于查找語句
//sql語句中寫了幾個字段,下面就必須要有幾個字段
ps.setString(1, user.getUserName());
ps.setString(2, user.getPassword());
// 4.处理结果集
row=ps.executeUpdate();
System.out.println(row+user.getUserName()+user.getPassword());
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally{
try {
ps.close();
conn.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} }
return row;
}
/**
* @return修改数据
*/
public int update(UserInfo user){
UserInfo u;
int row=0;
// j.Connection();
String sql="update userInfo set userName=?,password=? where userId=?";
try {
conn=getConnection();//连接数据库
ps=conn.prepareStatement(sql);// 2.创建Satement并设置参数
// rs=ps.executeQuery(sql); // 3.ִ执行SQL语句,緊緊用于查找語句
//sql語句中寫了幾個字段,下面就必須要有幾個字段
ps.setString(1, user.getUserName());
ps.setString(2, user.getPassword());
ps.setInt(3, user.getUserId());
// 4.处理结果集
row=ps.executeUpdate();
System.out.println(row);
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally{
//释放资源
try {
// rs.close();
ps.close();
conn.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
return row;
}
/**
* @return删除操作
*/
public int delete(UserInfo user){
UserInfo u;
int row=0;
// j.Connection();
String sql="delete from userInfo where userId=?";
try {
conn=getConnection();//连接数据库
ps=conn.prepareStatement(sql);// 2.创建Satement并设置参数
// rs=ps.executeQuery(sql); // 3.ִ执行SQL语句,緊緊用于查找語句
//sql語句中寫了幾個字段,下面就必須要有幾個字段
ps.setInt(1, user.getUserId());
// 4.处理结果集
row=ps.executeUpdate();
System.out.println(row);
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally{
//释放资源【執行完sql要記得釋放資源】
try {
// rs.close();
ps.close();
conn.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
return row;
}
public static void main(String[] args) {
JDBC j=new JDBC();
// j.getConnection();
j.QuerySql();//在控制台顯示出查找方法
// UserInfo u=new UserInfo();
// u.setUserId(5);
// u.setUserName("cool");
// u.setPassword("123abc");
// j.update(u);////在控制台顯示出修改方法
}
}

from: http://blog.csdn.net/qianquan003/article/details/23364381?utm_source=tuicool&utm_medium=referral

Java连接本地MySQL数据库进行增删改查操作的更多相关文章

  1. 通过jdbc连接MySql数据库的增删改查操作

    一.获取数据库连接 要对MySql数据库内的数据进行增删改查等操作,首先要获取数据库连接 JDBC:Java中连接数据库方式 具体操作如下: 获取数据库连接的步骤: 1.先定义好四个参数 String ...

  2. Java Web下MySQL数据库的增删改查(二)

    前文:https://www.cnblogs.com/Arisf/p/14095002.html 在之前图书管理系统上做了改进优化 图书管理系统v2 首先是项目结构: 1.数据库的连接: 1 pack ...

  3. Java Web下MySQL数据库的增删改查(一)

    以图书管理系统举例(jsp+servlet+bean) 1.数据库的连接 package db; import java.sql.Connection; import java.sql.DriverM ...

  4. python脚本对 mysql数据库进行增删改查操作

    # -*- coding: utf-8 -*-import pymysqlimport xlrd# import codecsconn = pymysql.connect(host='127.0.0. ...

  5. python web.py操作mysql数据库,实现对数据库的增删改查操作

    使用web.py框架,实现对mysql数据库的增删改查操作: 该示例代码中连接的是本地数据库testdb,user表,表结构比较简单,只有两个字段:mobile和passwd,类型均为字符型 实际应用 ...

  6. java jdbc 连接mysql数据库 实现增删改查

    好久没有写博文了,写个简单的东西热热身,分享给大家. jdbc相信大家都不陌生,只要是个搞java的,最初接触j2ee的时候都是要学习这么个东西的,谁叫程序得和数据库打交道呢!而jdbc就是和数据库打 ...

  7. shell编程系列22--shell操作数据库实战之shell脚本与MySQL数据库交互(增删改查)

    shell编程系列22--shell操作数据库实战之shell脚本与MySQL数据库交互(增删改查) Shell脚本与MySQL数据库交互(增删改查) # 环境准备:安装mariadb 数据库 [ro ...

  8. PHP程序中使用PDO对象实现对数据库的增删改查操作的示例代码

    PHP程序中使用PDO对象实现对数据库的增删改查操作(PHP+smarty) dbconn.php <?php //------------------------使用PDO方式连接数据库文件- ...

  9. TP5.1:数据库的增删改查操作(基于面向对象操作)

    我们现实中对数据库的增删改查操作,都是使用模型类进行操作的(表名::),也就是面向对象操作,只有底层的代码用的是数据库操作(Db::table('表名')) 下面我将贴出模型类进行的增删改查操作,通过 ...

随机推荐

  1. Vijos1448校门外的树 题解

    Vijos1448校门外的树 题解 描述: 校门外有很多树,有苹果树,香蕉树,有会扔石头的,有可以吃掉补充体力的…… 如今学校决定在某个时刻在某一段种上一种树,保证任一时刻不会出现两段相同种类的树,现 ...

  2. 我的Linux对拍脚本

    本文用于Linux下bash的对拍脚本: brute为本目录的暴力程序.. pro为优化过的程序 mak造数据的.. #!/bin/bash while(true)do ./mak printf &q ...

  3. 创建需要计时器的windows service

    1.在VS中建立windows service后,应该添加一个安装程序. 2.在默认的Service1.cs设计界面右键,添加安装程序,生成ProjectInstaller.包含两个类serviceP ...

  4. iOS 常用英语翻译

    1..serve advertisements within the app 服务应用中的广告.如果你的应用中集成了广告的时候,你需要勾选这一项.   √2.Attribute this app in ...

  5. unix network programming volume1 sorce code build and get(UNIX網絡編程卷1第三版)

    source code下载地址:unpv13e.tar.gz下载 (也有放一份在google cloud storage) compile 1. ./configure 2. cd lib make ...

  6. NHibernate one-to-one

    NHibernate里面one-to-one有两种方式:主键关联和唯一外健关联 主键关联: 两个表拥有相同的主键字段,值相同的关联在一起.典型的应用是一个对象的属性太多,将常用的属性跟不常用的附加属性 ...

  7. SQL 联合索引 与 单一列的索引 比较

    背景: 公司业务迅速扩展,很多网站.接口都因为大流量的数据,发生服务器习惯性死机:一条sql查询语句只能适用于一定的网络环境,没有优化的查询当遇上大数据时就不适用了. 本文主旨: 讨论什么情况下能利用 ...

  8. css圆角边框

    一.CSS3圆角的优点 传统的圆角生成方案,必须使用多张图片作为背景图案.CSS3的出现,使得我们再也不必浪费时间去制作这些图片了,而且还有其他多个优点: * 减少维护的工作量.图片文件的生成.更新. ...

  9. hdu2612.。。。

    原题链接 水了一天bfs了 题意:2个人分别从Y,M出发,到达其中任意一个“@” (图中有多个“@”点),2人到达的必须是同一个“@”点,求最短的路程和 思路:bfs搜2次,用一个2维数组记录到达各个 ...

  10. [CareerCup] 17.4 Maximum of Two Numbers 两数中的较大值

    17.4 Write a method which finds the maximum of two numbers. You should not use if-else or any other ...