`
小女墙
  • 浏览: 111784 次
  • 性别: Icon_minigender_2
  • 来自: 北京
社区版块
存档分类
最新评论

jdbc增删改查

    博客分类:
  • JAVA
阅读更多

把数据库连接信息放到.properties配置文件中,方便以后修改

 

import java.io.IOException;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.Properties;

import pojo.Users;           //数据库表实体类

public class JdbcTest {
   
    /**
     * @param args
     */
    Connection conn=null;
    Statement stmt=null;
    ResultSet rs=null;
    String strSql=null;
    Users bean=null;
    String name=null;
    String password=null;

    //构造方法
    public JdbcTest(){
            Properties properties = new Properties();          //实例化Properties类
            try {

                //读取src下的配置文件,我的配置文件在src下,注意路径,前面的/
                properties.load(this.getClass().getResourceAsStream("/jdbc.properties"));
                String driver = properties.getProperty("db.driver");         //获取配置文件中键值对的值
                String url = properties.getProperty("db.url");
                String user = properties.getProperty("db.user");
                String password = properties.getProperty("db.password");
                try {
                    Class.forName(driver);           //注册驱动

                    //连接数据库,获得conn连接对象
                    conn = DriverManager.getConnection(url, user, password);      
                } catch (Exception e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                }
            } catch (IOException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
    }

    //在这里写了一个测试类,其实是构造方法的实现过程,都用于创建连接,并获得连接对象
    public void JdbcTest1(){
        String driver="com.mysql.jdbc.Driver";
        String url = "jdbc:mysql://localhost:3306/jhwoa";
        String user = "root";
        String password="root";
        try{
            Class.forName(driver);
            conn = DriverManager.getConnection(url,user,password);
        }catch(SQLException e){
            e.printStackTrace();
        } catch (ClassNotFoundException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }

    //插入

    //在这里用的是statement对象,其实对于动态参数的sql操作应该用Prestatement对象
    public String insert(String name,String password){
        try {
            strSql="INSERT INTO users(name,password) VALUES('"+name+"','"+password+"')";
          stmt=conn.createStatement();
          stmt.executeUpdate(strSql);
          System.out.println("插入语句执行成功:"+strSql);
      } catch (SQLException e) {
          // TODO Auto-generated catch block
          e.printStackTrace();
          System.out.println("插入失败");
      }
      return "ok";
    }

    //更新
    public String update(long id,String name,String password){
        try{
            strSql= "UPDATE users SET name='"+name+"',password='"+password+"'";
            stmt=conn.createStatement();
            stmt.executeUpdate(strSql);
            System.out.println("更新完成");
        }catch (SQLException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
            System.out.println("更新失败");
        }
        return "ok";
    }

    //删除
    public String delete(long id){
        try {
            strSql="delete from users";
            stmt=conn.createStatement();
            stmt.executeUpdate(strSql);
            System.out.println("删除完成");
        } catch (SQLException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        return "ok";
    }

    //查询
    public String select(long id){
        try{
         strSql="select * from users where id='"+id+"'";
         stmt=conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, 
         ResultSet.CONCUR_READ_ONLY);
         rs=stmt.executeQuery(strSql);
         while(rs.next()){
             System.out.println(rs.getString("name"));
             System.out.println(rs.getString("password"));
         }
         }catch(SQLException e){
             e.printStackTrace();
         }
         return "ok";
    }

    //关闭资源,注意关闭顺序,从里向外关
    public void close(){
        if(rs!=null){
            try {
                rs.close();
                 if(stmt!=null){
                        stmt.close();
                        stmt=null;
                    }
                    if(conn!=null){
                        conn.close();
                        conn=null;
                    }
            } catch (SQLException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
            rs=null;
        }
      
    }
}

分享到:
评论

相关推荐

    Servlet +jsp+jdbc增删改查学生信息

    【Servlet +jsp+jdbc增删改查学生信息】是一个经典的Web开发示例,它结合了Java服务器页面(JSP)、Servlet和Java数据库连接(JDBC)技术,用于创建一个简单的学生信息管理系统。这个项目适用于初学者,可以帮助他们...

    struts+jdbc增删改查

    总的来说,"struts+jdbc增删改查"这个小案例涵盖了Web开发中基础的数据操作,是学习Java Web开发的典型应用场景。通过这个案例,开发者可以深入理解Struts 2的架构以及如何使用JDBC进行数据库操作,为进一步学习更...

    Struts2 JDBC 增删改查

    在这个"Struts2 JDBC 增删改查"项目中,我们将探讨如何结合这两者来构建一个简单的数据管理应用。 首先,让我们深入理解Struts2的核心概念。Struts2框架提供了动作(Action)和结果(Result)的概念,动作负责处理...

    简单的jdbc增删改查

    对于增删改查操作,使用`Statement`或`PreparedStatement`。例如,插入数据: ```java String sql = "INSERT INTO users (name, email) VALUES (?, ?)"; PreparedStatement pstmt = conn.prepareStatement(sql); ...

    Spring JDBC 增删改查

    Spring JDBC是Spring框架的一部分,它提供了一种抽象层,使得我们能够更方便地使用Java数据库连接(JDBC)来处理数据库操作,如增删改查(CRUD)。在这个主题下,我们将深入探讨Spring JDBC的核心概念、配置、以及...

    通用的jdbc增删改查

    通用的jdbc增删改查,仅仅只是两个通用的方法,利用反射和泛型

    struts2+jdbc增删改查

    总的来说,`struts2+jdbc增删改查`的项目是一个适合初学者实践的实例,涵盖了Web开发中基础的数据库操作和业务流程处理。通过这个项目,开发者可以学习到如何在Struts2框架下利用JDBC与数据库交互,同时掌握JSP页面...

    JSP+JDBC增删改查

    在"JSP+JDBC增删改查"的项目中,我们首先需要创建一个web项目,这通常包含Web-INF目录、WEB-INF下的web.xml配置文件、以及存放JSP页面的目录。在JSP页面中,我们可以使用EL(Expression Language)和JSTL(Java...

    JDBC增删改查简单例子

    本文将详细讲解如何使用JDBC进行用户数据的增删改查操作。 首先,我们需要理解JDBC的基本流程,它包括加载驱动、建立连接、创建Statement对象、执行SQL语句以及关闭资源。以下是一个简单的示例: 1. **加载驱动**...

    jdbc增删改查加分页

    本篇主要围绕"jdbc增删改查加分页"这一主题展开,结合给出的标签"源码"和"工具",将深入讲解JDBC在数据库CRUD(Create、Read、Update、Delete)操作以及分页查询中的应用。 首先,我们需要了解JDBC的基本使用流程:...

    java十分经典的jdbc增删改查程序,含sql语句

    在这个经典的JDBC增删改查程序中,我们可以深入理解JDBC的基本操作流程和核心概念。 1. **连接数据库**: 首先,我们需要通过`Class.forName()`加载数据库驱动,然后使用`DriverManager.getConnection()`方法建立...

    jdbc完全封装实现增删改查

    实现完全的对jdbc对象的封装,只需调用则可对数据库进行CRUD操作

    一个封装好的java JDBC增删改查类

    一个封装好的java JDBC增删改查类

    JDBC增删改查小例子

    这个JDBC增删改查的小例子,虽然简单,但涵盖了JDBC基本操作的关键步骤,对于初学者来说是非常有价值的实践项目。通过这个示例,你可以更好地理解和掌握如何在实际应用中使用JDBC进行数据库操作。

    JSP+JDBC增删改查操作

    在Web项目开发中,"JSP+JDBC增删改查操作"是一个常见的技术组合,用于构建动态数据驱动的网页应用。JSP(JavaServer Pages)是Java平台上的服务器端脚本语言,它允许开发者在HTML页面中嵌入Java代码,以实现动态内容...

    jdbc.rar_JDBC增删改查_java jdbc_jdbc_jdbc 增删改查_jdbc封装

    在这个“jdbc.rar”压缩包中,我们很显然会看到关于使用Java JDBC进行数据操作的示例代码,特别是增删改查(CRUD)功能的实现以及可能的封装。 首先,让我们理解JDBC的基本工作流程: 1. **加载驱动**:在使用JDBC...

    jdbc.rar_JDBC增删改查_inq6z_java_jdbc

    **三、JDBC增删改查操作** 1. **增加(Insert)**:使用PreparedStatement的setXXX()方法设置参数,然后调用executeUpdate()插入数据。 2. **删除(Delete)**:根据条件构造SQL删除语句,执行executeUpdate()。 ...

    jabc.rar_JDBC增删改查_java jdbc

    总结来说,"jabc.rar_JDBC增删改查_java jdbc"的示例旨在教育开发者如何使用Java的JDBC API与数据库进行交互,涵盖基本的数据库操作,这对于任何Java开发者理解和构建数据驱动的应用都是至关重要的技能。通过实践...

Global site tag (gtag.js) - Google Analytics