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. HDU 4750 Count The Pairs(并查集)

    题目链接 没有发现那个点,无奈. #include <cstdio> #include <cstring> #include <cmath> #include &l ...

  2. 几种常用的JS类定义方法

    几种常用的JS类定义方法   // 方法1 对象直接量var obj1 = {    v1 : "",    get_v1 : function() {        return ...

  3. MyBatis的几种批量操作

    MyBatis中批量插入 方法一: <insert id="insertbatch" parameterType="java.util.List"> ...

  4. Python之路(二)

    (1)python的内置函数(BIF) python3中内置了70多个BIF,常用的几个有: list():创建一个新的空列表. range():输入次数参数,返回一个迭代固定次数的迭代器. enum ...

  5. 解决HDU爆栈的问题

    转载:http://forum.byr.edu.cn/article/ACM_ICPC/51264 大家懂的,鉴于HDU用的是windows服务器,所以stack大小及其坑爹,稍微深一点的递归栈就会s ...

  6. aspxshell下突破无可写可执行目录执行cmd

    try { var strPath:String = "c:\\windows\\temp\\cmd.exe", strUser:String = "everyone&q ...

  7. jquery ui bootstrap日期插件

    http://blog.csdn.net/php_897721669/article/details/7404527 搜索“jquery ui日期插件怎么显示年份”? $("#datepic ...

  8. nyoj-71

    描述 进行一次独木舟的旅行活动,独木舟可以在港口租到,并且之间没有区别.一条独木舟最多只能乘坐两个人,且乘客的总重量不能超过独木舟的最大承载量.我们要尽量减少这次活动中的花销,所以要找出可以安置所有旅 ...

  9. Python 第一课

    Python语言特点: 优雅,明确,简单 适合开发: Web网络和各种网络服务 系统工具和脚本 作为胶水语言把其他语言开发的模块包装起来方便使用 Python2.7.10的安装(path环境变量)   ...

  10. prim算法

    最小生成树 一个有 n 个结点的连通图的生成树是原图的极小连通子图,且包含原图中的所有 n 个结点,并且有保持图连通的最少的边.最小生成树可以用kruskal(克鲁斯卡尔)算法或prim(普里姆)算法 ...