精华内容
下载资源
问答
  • java JDBC连接数据库步骤及代码
    万次阅读 多人点赞
    2018-12-06 09:34:01

    JDBC连接数据库,包含7个步骤

    (1)加载JDBC驱动程序   

        在连接数据库之前,首先要加载想要连接的数据库的驱动到JVM(Java虚拟机),   这通过java.lang.Class类的静态方法forName(String className)实现,成功加载后,会将Driver类的实例注册到DriverManager类中。

    代码如下:

    static{
    		try {
    			Class.forName("com.mysql.jdbc.Driver");//加载数据库驱动
    			}
    		catch (ClassNotFoundException e) {
    			e.printStackTrace();
    		}
    	}

    (2)提供JDBC连接的URL

        书写形式:协议:子协议:数据源标识   。 其中:

         协议:在JDBC中总是以jdbc开始 。子协议:是桥连接的驱动程序或是数据库管理系统名称。   数据源标识:标记找到数据库来源的地址与连接端口。

    代码如下:

    //连接MySql数据库,用户名和密码都是root   
         String url = "jdbc:mysql://localhost:3306/test" ;    
         String username = "root" ;   
         String password = "root" ;   

    (3)创建数据库的连接   

    代码如下:

     public static Connection getConn(){
        	 Connection conn = null;
        	 try {
        		conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/test", "root","root");//连接数据库	
        		 }
             catch(SQLException e){
        		 e.printStackTrace();
        	 }
        	 return conn;
     }

    (4)创建一个Statement

        要执行SQL语句,必须获得java.sql.Statement实例,Statement实例分为以下3 种类型:

    •     执行静态SQL语句。通常通过Statement实例实现。
    •     执行动态SQL语句。通常通过PreparedStatement实例实现。
    •     执行数据库存储过程。通常通过CallableStatement实例实现。

    代码如下:

     public static Statement getStmt(Connection conn){
    	   Statement stmt = null;
    	   try {
    		stmt = conn.createStatement();
    	} catch (SQLException e) {
    		e.printStackTrace();
    	}
    	   return stmt;
       }

    (5)执行SQL语句

        Statement接口提供了三种执行SQL语句的方法:executeQuery 、executeUpdate   和execute  

    •     ResultSet executeQuery(String sqlString):执行查询数据库的SQL语句   ,返回一个结果集(ResultSet)对象。
    •     int executeUpdate(String sqlString):用于执行INSERT、UPDATE或   DELETE语句以及SQL DDL语句,如:CREATE TABLE和DROP TABLE等  
    •     execute(sqlString):用于执行返回多个结果集、多个更新计数或二者组合的   语句。

    代码如下:

     public static ResultSet executeQuery(Statement stmt,String sql){
    	 ResultSet rs = null;
    	 try {
    		rs = stmt.executeQuery(sql);
    	} catch (SQLException e) {
    		e.printStackTrace();
    	}
    	return rs; 
     }
     

    (6)处理结果   

        两种情况:  

    •     执行更新返回的是本次操作影响到的记录数。  
    •     执行查询返回的结果是一个ResultSet对象。  

         ResultSet包含符合SQL语句中条件的所有行,并且它通过一套get方法提供了对这些行中数据的访问。

        使用结果集(ResultSet)对象的访问方法获取数据,代码如下:

    while(rs.next()){             
        String name = rs.getString("name") ;        
        String pass = rs.getString(1) ; // 此方法比较高效         
    }

    (7)关闭JDBC对象

        操作完成以后要把所有使用的JDBC对象全都关闭,以释放JDBC资源,关闭顺序和声明顺序相反:

    •     关闭记录集
    •     关闭声明  
    •     关闭连接对象

    代码如下:

    //关闭结果集
     public static void closeRs(ResultSet rs){
    	   try {
    			if(rs != null ){
    				 rs.close();
    				 rs = null;
    			   }
    		} catch (SQLException e) {
    			e.printStackTrace();
    		} 
     }
    //关闭执行方法
     public static void closeStmt(Statement stmt){
    	   try {
    			if(stmt != null ){
    				 stmt.close();
    				 stmt = null;
    			   }
    		} catch (SQLException e) {
    			e.printStackTrace();
    		} 
    	   
       }
    //关闭连接
     public static void closeConn(Connection conn){
    	   try {
    		if(conn != null ){
    			 conn.close();
    			 conn = null;
    		   }
    	} catch (SQLException e) {
    		e.printStackTrace();
    	}
     }

    JDBC连接数据库工具类代码

    package com.njau.allnetitem;
    
    import java.sql.*;
    
    public class DB {
    	static{
    		try {
    			Class.forName("com.mysql.jdbc.Driver");//加载数据库驱动
    			}
    		catch (ClassNotFoundException e) {
    			e.printStackTrace();
    		}
    	}
    	
     private DB() {}
     
     public static Connection getConn(){
        	 Connection conn = null;
        	 try {
        		conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/db_baima", "root","123456");//连接数据库	
        		 }
             catch(SQLException e){
        		 e.printStackTrace();
        	 }
        	 return conn;
     }
     
     public static void closeConn(Connection conn){
    	   try {
    		if(conn != null ){
    			 conn.close();
    			 conn = null;
    		   }
    	} catch (SQLException e) {
    		e.printStackTrace();
    	}
     }
       
     public static Statement getStmt(Connection conn){
    	   Statement stmt = null;
    	   try {
    		stmt = conn.createStatement();
    	} catch (SQLException e) {
    		e.printStackTrace();
    	}
    	   return stmt;
       }
       
     public static PreparedStatement getPStmt(Connection conn,String sql){
    	   PreparedStatement pstmt = null;
    	   try {
    		pstmt = conn.prepareStatement(sql);
    	} catch (SQLException e) {
    		e.printStackTrace();
    	}
    	   return pstmt;
       }
       
     public static void closeStmt(Statement stmt){
    	   try {
    			if(stmt != null ){
    				 stmt.close();
    				 stmt = null;
    			   }
    		} catch (SQLException e) {
    			e.printStackTrace();
    		} 
    	   
       }
       
     public static ResultSet executeQuery(Statement stmt,String sql){
    	 ResultSet rs = null;
    	 try {
    		rs = stmt.executeQuery(sql);
    	} catch (SQLException e) {
    		e.printStackTrace();
    	}
    	return rs; 
     }
     
     public static void closeRs(ResultSet rs){
    	   try {
    			if(rs != null ){
    				 rs.close();
    				 rs = null;
    			   }
    		} catch (SQLException e) {
    			e.printStackTrace();
    		} 
     } 
     
     public static ResultSet executeQuery(Connection conn,String sql){//重载
    	 ResultSet rs = null;
    	 try {
    		rs = conn.createStatement().executeQuery(sql);
    	} catch (SQLException e) {
    		e.printStackTrace();
    	}
    	return rs;  
       } 
     }

    工具类使用说明代码

    //插入数据
    public static void saveinfo(Object[] data) throws ParseException{
    	Connection conn = null;
    	PreparedStatement pstmt = null;
    try {
        conn= DB.getConn();
    	String sql = "insert into information value (null,?,?,?,?,?,?,?) ";
        pstmt = DB.getPStmt(conn, sql);
    	pstmt.setString(1,(String) data[0]);
    	pstmt.setString(2, (String) data[1]);
    	pstmt.setString(3,(String) data[2]);
    	pstmt.setString(4,(String) data[3]); 
    	pstmt.setString(5,(String) data[4]);
    	pstmt.setString(6,(String) data[5]);
    	pstmt.setTimestamp(7 ,(Timestamp)data[6]);
    	pstmt.executeUpdate();
    	} 
    	catch (SQLException e) {
    		e.printStackTrace();
    	}
        finally{
        	DB.closeStmt(pstmt);
        	DB.closeConn(conn);
        }
    }

    参考:

    http://www.cnblogs.com/hongten/archive/2011/03/29/1998311.html

    表示感谢!!

    更多相关内容
  • Java连接数据库代码

    2018-12-06 16:31:59
    Java连接数据库代码实现代码, 代码片段: public MyTask(ServletContext context) { this.mContext = context; Properties prop = new Properties(); InputStream in = null; try { in = MyTask.class....
  • java连接mysql数据库代码示范,如何通过java利用jdbc包来连接mysql数据库进行查询修改等操作
  • java连接数据库代码

    2009-02-07 21:23:49
    java 连接跟中数据库的示例代码(word doc)
  • java连接各种数据库代码大全

    千次阅读 2021-02-28 15:17:23
    1、Oracle8/8i/9i数据库(thin模式)Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();String url="jdbc:oracle:thin:@localhost:1521:orcl";//orcl为数据库的SIDString user="test";String password=...

    1、Oracle8/8i/9i数据库(thin模式)

    Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();

    String url="jdbc:oracle:thin:@localhost:1521:orcl";

    //orcl为数据库的SID

    String user="test";

    String password="test";

    Connection conn= DriverManager.getConnection(url,user,password);

    2、DB2数据库

    Class.forName("com.ibm.db2.jdbc.app.DB2Driver ").newInstance();

    String url="jdbc:db2://localhost:5000/sample";

    //sample为你的数据库名

    String user="admin";

    String password="";

    Connection conn= DriverManager.getConnection(url,user,password);

    3、Sql Server7.0/2000数据库

    Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance();

    String url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=mydb";

    //mydb为数据库

    String user="sa";

    String password="";

    Connection conn= DriverManager.getConnection(url,user,password);

    4、Sybase数据库

    Class.forName("com.sybase.jdbc.SybDriver").newInstance();

    String url =" jdbc:sybase:Tds:localhost:5007/myDB";

    //myDB为你的数据库名

    Properties sysProps = System.getProperties();

    SysProps.put("user","userid");

    SysProps.put("password","user_password");

    Connection conn= DriverManager.getConnection(url, SysProps);

    5、Informix数据库

    Class.forName("com.informix.jdbc.IfxDriver").newInstance();

    String url =

    "jdbc:informix-sqli://123.45.67.89:1533/myDB:INFORMIXSERVER=myserver;

    user=testuser;password=testpassword";

    //myDB为数据库名

    Connection conn= DriverManager.getConnection(url);

    6、MySQL数据库

    Class.forName("org.gjt.mm.mysql.Driver").newInstance();

    String url ="jdbc:mysql://localhost/myDB?user=soft&password=soft1234&useUnicode=true&characterEncoding=8859_1"

    //myDB为数据库名

    Connection conn= DriverManager.getConnection(url);

    7、PostgreSQL数据库

    Class.forName("org.postgresql.Driver").newInstance();

    String url ="jdbc:postgresql://localhost/myDB"

    //myDB为数据库名

    String user="myuser";

    String password="mypassword";

    Connection conn= DriverManager.getConnection(url,user,password);

    8、JDBC-ODBC桥

    Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

    Connection con=DriverManager.getConnection("jdbc:odbc:jsp");

    jsp为建立的odbc数据源名,事先要先将SQL server的表设置为数据源。在“管理工具”-“数据源odbc”里用系统DNS添加。

    8.Oracle8/8i/9i数据库(thin模式)

    //import java.sql.*;

    Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();

    String url="jdbc:oracle:thin:@localhost:1521:orcl"; //orcl为数据库的SID

    String user="test";

    String password="test";

    Connection conn= DriverManager.getConnection(url,user,password);

    Statement stmtNew=conn.createStatement();

    9.DB2数据库

    //import java.sql.*;

    Class.forName("com.ibm.db2.jdbc.app.DB2Driver ").newInstance();

    String url="jdbc:db2://localhost:5000/sample"; //sample为你的数据库名

    String user="admin";

    String password="";

    Connection conn= DriverManager.getConnection(url,user,password);

    Statement stmtNew=conn.createStatement();

    10.Sql Server7.0/2000数据库

    //import java.sql.*;

    Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver").newInstance();

    //String url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=db2"; //7.0、2000

    String url="jdbc:sqlserver://localhost:1433;DatabaseName=db2"; //2005

    //db2为数据库名

    String user="sa";

    String password="";

    Connection conn= DriverManager.getConnection(url,user,password);

    Statement stmtNew=conn.createStatement();

    11.Sybase数据库

    //import java.sql.*;

    Class.forName("com.sybase.jdbc.SybDriver").newInstance();

    String url =" jdbc:sybase:Tds:localhost:5007/myDB";//myDB为你的数据库名

    Properties sysProps = System.getProperties();

    SysProps.put("user","userid");

    SysProps.put("password","user_password");

    Connection conn= DriverManager.getConnection(url, SysProps);

    Statement stmtNew=conn.createStatement();

    12.Informix数据库

    //import java.sql.*;

    Class.forName("com.informix.jdbc.IfxDriver").newInstance();

    String url = "jdbc:informix-sqli://123.45.67.89:1533/myDB:INFORMIXSERVER=myserver;

    user=testuser;password=testpassword"; //myDB为数据库名

    Connection conn= DriverManager.getConnection(url);

    Statement stmtNew=conn.createStatement();

    13.MySQL数据库

    //import java.sql.*;

    //Class.forName("org.gjt.mm.mysql.Driver").newInstance();

    Class.forName("com.mysql.jdbc.Driver");

    //String url ="jdbc:mysql://localhost/myDB?user=soft&password=soft1234&useUnicode=true&characterEncoding=8859_1";

    String url ="jdbc:mysql://localhost:3306/myDB";

    //myDB为数据库名

    Connection conn= DriverManager.getConnection(url,"root","root");

    Statement stmtNew=conn.createStatement();

    14.PostgreSQL数据库

    //import java.sql.*;

    Class.forName("org.postgresql.Driver").newInstance();

    String url ="jdbc:postgresql://localhost/myDB" //myDB为数据库名

    String user="myuser";

    String password="mypassword";

    Connection conn= DriverManager.getConnection(url,user,password);

    Statement stmtNew=conn.createStatement();

    15.access数据库直连用ODBC的

    //import java.sql.*;

    Class.forName("sun.jdbc.odbc.JdbcOdbcDriver") ;

    String url="jdbc:odbc:Driver={MicroSoft Access Driver (*.mdb)};DBQ="+application.getRealPath("/Data/ReportDemo.mdb");

    Connection conn = DriverManager.getConnection(url,"sa","");

    Statement stmtNew=conn.createStatement();

    16.程序计时

    long time1=System.currentTimeMillis();

    long time2=System.currentTimeMillis();

    long interval=time2-time1;

    17.延时

    try {

    Thread.sleep(Integer.Parse(%%1));

    } catch(InterruptedException e) {

    e.printStackTrace();

    }

    18.连接Excel文件

    //import java.sql.*;

    Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

    String url = "jdbc:odbc:driver={Microsoft Excel Driver (*.xls)};DBQ=D:\\myDB.xls"; // 不设置数据源

    String user="myuser";

    String password="mypassword";

    Connection conn= DriverManager.getConnection(url,user,password);

    Statement stmtNew=conn.createStatement();

    相关文章:

    展开全文
  • 摘要:Java源码,初学实例,查询数据库 Java查询数据库,建立数据库连接的一系统代码演示,可以了解一下如何加载驱动器,获取连接,定义SQL查询语句,获取Statement对象,执行查询、遍历ResultSet、获取数据、在控制台...
  • java 连接数据库代码大全 sqlserver mysql 等数据库的连接代码
  • JAVA 使用数据库连接连接Oracle数据库,全代码,附加详细说明
  • 本篇文章主要介绍了Java连接postgresql数据库的示例代码,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
  • 写这个文章的原因是为了巩固自己连接数据库步骤 二.MySQL数据库连接 数据库连接步骤加载驱动程序,获取数据库连接对象 2.1驱动jar包 2.2代码 package cn.sg.xx.test; import java.sql.Connection; import java.sql....
  • 一、使用MySQL jdbc连接器mysql-connector-java.jar。 1.首先从mysql官网下载mysql-connector-java.jar包到本地。 下载相应的压缩包,在本地解压即可进行下一步操作。 2.打开自己的java文件,在源文件夹下创建lib包...

    编译器使用IDEA

    我的相关博客:
    java代码程序中连接mysql数据库的方法及代码
    mysql数据库并发上锁问题,java代码

    一、使用MySQL jdbc连接器mysql-connector-java.jar。

    1.首先从mysql官网下载mysql-connector-java.jar包到本地。
    这里注意要和你本地的mysql数据库版本相匹配!
    在这里插入图片描述
    下载相应的压缩包,在本地解压即可进行下一步操作。

    2.打开自己的java文件,在源文件夹下创建lib包,如下。

    关于这里为什么要使用新建lib文件夹并导入文件,相信不久小伙伴们就能知道原因了
    因为这是为了便于你将文件发于别人后,依赖的mysql-connector-java.jar不见了(如果你将其放置在libraries中的话!!),自己新建文件夹即可在打包后依然拥有此文件。
    在这里插入图片描述
    找到本地的mysql-connector-java.jar文件,复制粘贴到lib文件夹里,并点击确认。
    在这里插入图片描述
    在这里插入图片描述
    如上图。
    3.配置相关依赖,这里有两种方式!!
    第一种方式:直接将lib文件夹设置为library
    在这里插入图片描述
    点击ok即可!!

    第二种方式:
    首先右键点击工程文件夹,弹出如下窗口,点击Open Module Settings。
    在这里插入图片描述
    进入如下界面,点击+号
    在这里插入图片描述
    弹出选项,选择Jars or Directories选项,并在弹出后现在前面导入mysql-connector-java.jar的lib文件夹,点击确认。
    在这里插入图片描述
    在这里插入图片描述
    成功应用后,勾选该文件,点击apply应用,OK即可正常使用。
    在这里插入图片描述
    4.数据库连接代码样例如下

    package sql;
    
    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.SQLException;
    
    public class Conn { // 创建类Conn
        Connection con; // 声明Connection对象
        public static String user;
        public static  String password;
        public Connection getConnection() { // 建立返回值为Connection的方法
            try { // 加载数据库驱动类
                Class.forName("com.mysql.cj.jdbc.Driver");
                System.out.println("数据库驱动加载成功");
            } catch (ClassNotFoundException e) {
                e.printStackTrace();
            }
            user = "root";//数据库登录名
            password = "root";//密码
            try { // 通过访问数据库的URL获取数据库连接对象
                con = DriverManager.getConnection("jdbc:mysql://localhost:3306/test1?useUnicode=true&characterEncoding=gbk", user, password);
                System.out.println("数据库连接成功");
            } catch (SQLException e) {
                e.printStackTrace();
            }
            return con; // 按方法要求返回一个Connection对象
        }
        public static void main(String[] args) { // 主方法,测试连接
            Conn c = new Conn(); // 创建本类对象
            c.getConnection(); // 调用连接数据库的方法
        }
    }
    
    

    若上面不便于理解,则看下面代码,更为简洁:

    package Main;
    
    import java.sql.*;
    
    public class JDBC {
        public static void main(String[] args) throws SQLException, ClassNotFoundException {
    //        1.加载驱动
            Class.forName("com.mysql.cj.jdbc.Driver");
    //        2.用户信息和url
            String url = "jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf8&useSSL=true";
            String username="root";
            String password="root";
    //        3.连接成功,数据库对象 Connection
            Connection connection = DriverManager.getConnection(url,username,password);
    //        4.执行SQL对象Statement,执行SQL的对象
            Statement statement = connection.createStatement();
    //        5.执行SQL的对象去执行SQL,返回结果集
            String sql = "SELECT *FROM studentinfo;";
            ResultSet resultSet = statement.executeQuery(sql);
            while(resultSet.next()){
                System.out.println("SNo="+resultSet.getString("SNo"));
                System.out.println("SName="+resultSet.getString("SName"));
                System.out.println("Birth="+resultSet.getString("Birth"));
                System.out.println("SPNo="+resultSet.getString("SPNo"));
                System.out.println("Major="+resultSet.getString("Major"));
                System.out.println("Grade="+resultSet.getString("Grade"));
                System.out.println("SInstructor="+resultSet.getString("SInstructor"));
                System.out.println("SPwd="+resultSet.getString("SPwd"));
            }
    //        6.释放连接
            resultSet.close();
            statement.close();
            connection.close();
        }
    }
    
    

    结果
    在这里插入图片描述

    代码解释:
    Connection:连接对象,用于连接数据库。
    官方文档有如下解释官方解释及涉及到的方法
    在这里插入图片描述
    Class.forName(“com.mysql.cj.jdbc.Driver”);为了加载jdbc的驱动。不使用该语句也能成功连接到mysql数据库。这里有一篇很好的文章对其有介绍
    好奇的我在mysql-connector-java.jar中找到了这个东西!!
    在这里插入图片描述
    下面是Driver中的源码。可以从中看出,其作用就是进行注册Driver用。
    在这里插入图片描述

     con = DriverManager.getConnection("jdbc:mysql://localhost:3306/test1?useUnicode=true&characterEncoding=gbk", user, password);
    

    这里调用DriverManager.getConnection方法进行数据库连接,格式如上。
    localhost:指定为本地。
    3306:为数据库端口。
    test1:为所需连接的数据库名。
    useUnicode=true&characterEncoding=gbk:为添加编码和解码的格式要求。
    useSSL:安全连接。
    user和password:即是数据库用户名和密码。

    完成以上操作即可成功连接数据库了。最后的主类是用于测试用的,在你的java文件中不必保留,只需要在需要进行数据库连接的文件中创建本类即可。

    Talk is cheap,show me the code! —— 薪火工作室!

    展开全文
  • 主要介绍了java常用工具类之数据库连接类,可以连接多种数据库,代码中包含详细注释,需要的朋友可以参考下
  • Java web 服务器连接MySQL数据库代码

    千次阅读 多人点赞 2020-03-16 17:23:42
    本文内容分为两部分,分别是java web连接MySQL数据库java web对数据库进行基本数据操作。附加代码

    前言

    经过前面的环境部署,今天我们终于可以来连接数据库了。参考我之前的文章。这篇文章把前面两章连接起来,做一个小总结,并做一个可以保存用户登录数据的网站,代码主要解释对数据库的部分。

    先前的开发环境安装:
    centos7从零搭建java web服务器
    MySQL从零安装配置

    一,建立工程

    1,在eclipse新建动态web工程,具体过程已经有很多人写过了,我就简单说明一下。

    打开eclipse->file->new->dynamic web subject

    tomcat版本选你安装的版本,方便以后调试,web module 版本我用2.5,跟3.0差不多。3.0少了web.xml的配置文件等。一路next下去就行了
    在这里插入图片描述

    二,导入jar包

    连接MySQL需要导入MySQL相关的jar包,另外我还加入log包,对于开发非常有帮助,可以在控制台打印数据,方便debug。jar包就放下图示目录,另外还需要在项目右击->properties->java built path->libraries里添加我们刚刚添加的jar包,这样jar包才算真正导入;

    jar包下载连接:
    链接: https://pan.baidu.com/s/143RT1qygtKIimCRmLdpAbw 提取码: vd22

    在这里插入图片描述
    点击add jars 选择刚刚加入的jar包添加进去就行了
    在这里插入图片描述
    *

    三,编写DataBase类实现连接数据库与操作数据库

    以下代码需要自己先了解SQL语句,MySQL基本命令。代码实现了连接数据库,对数据库的某表格进行添加,读取,更新操作。对应的应用是添加用户,读取用户登录信息,更新密码。

    注意数据保存到MySQL数据库出现中文乱码的问题,要在前端,后台,连接串,MySQL都设置相同的编码方式,比如我选择的是utf8
    在MySQL命令中输入show variables like “%char%”;查看当前的编码,如图,都是utf8就没问题,需要修改的话可以查看修改办法
    在这里插入图片描述

    DataBase.java代码,主要实现对数据库连接和增改查操作

    package myapp;
    
    import java.sql.DriverManager;
    import java.sql.PreparedStatement;
    import java.sql.ResultSet;
    import java.sql.SQLException;
    
    import com.mysql.jdbc.Connection;
    
    public class DataBase {
    	private static String driver="com.mysql.jdbc.Driver";//MySQL驱动
    	private static String user = "prx";// MySQL的用户名和密码
        private static String password = "5812870-Prx";
        private static String ip_adress = "192.168.x.x";//主机ip地址
        /*
         * 说明:与数据库建立连接
         * 参数:数据库名称
         */
        private static Connection getConn(String DatabaseName) throws SQLException
        {
        	//设置MySQL的连接串编码为UTF-8,避免中文乱码问题
        	String url="jdbc:mysql://localhost:3306/"+DatabaseName+"?characterEncoding=UTF-8";
        	System.out.println("the url is :"+url);
        	Connection connection=null;
        	try {
    			Class.forName(driver);//加载MySQL驱动程序
    			//连接数据库 驱动+ip地址+端口号+用户名+密码,端口号默认是3306
    			connection=(Connection) DriverManager.getConnection("jdbc:mysql://" + ip_adress + ":3306/" + DatabaseName,
                        user, password);
    			connection.setEncoding("UTF-8");
    			
    		} catch (ClassNotFoundException e) {
    			// TODO Auto-generated catch block
    			e.printStackTrace();
    		}
        	//返回connection对象
    		return connection;
    	}
        /*
         * 添加新用户
         * String name,String sex,string age,String id,String password,String emailadress
         */
        public static void adduser(String name,String sex,String age,String id,String password,String emailadress) throws SQLException
        {
        	String Database="myapp";
        	String sql="INSERT INTO myapp_user (name,sex,age,id,password,emailadress) VALUES (?,?,?,?,?,?)";
        	Connection connection=getConn(Database);
        	if (connection!=null){
                try {
                    PreparedStatement ps=connection.prepareStatement(sql);
                    if (ps!=null){
                    	
                        ps.setString(1,name);
                        ps.setString(2,sex);
                        ps.setString(3,age);
                        ps.setString(4,id);
                        ps.setString(5,password);
                        ps.setString(6,emailadress);
                        //执行语句,注意!!!如果你的SQL 语句是诸如update,insert的更新语句,应该用statement的execute()方法
                        // select用的是statement的executeQuery()
                        ps.execute();
                        
                        connection.close();
                        ps.close();
                    }
                } catch (SQLException e) {
                    e.printStackTrace();
                    
                }
            }
        }
        
        public static void updatepassword(String id,String newpassword) throws SQLException
        {
        	String Database="myapp";
        	String sql="UPDATE myapp_user SET password=? where id=?";
        	Connection connection=getConn(Database);
        	if (connection!=null){
                try {
                    PreparedStatement ps=connection.prepareStatement(sql);
                    if (ps!=null){
                        ps.setString(1,newpassword);
                        ps.setString(2,id);
                      
                        //执行语句,注意!!!如果你的SQL 语句是诸如update,insert的更新语句,应该用statement的execute()方法
                        // select用的是statement的executeQuery()
                        ps.execute();
                        
                        connection.close();
                        ps.close();
                    	}
                } catch (SQLException e) {
                    e.printStackTrace();
                    
                }
        
        	}
        }
        /*
         * 读取指定的值
         * 输入id 键
         */
        public static String sele_userinfo(String id,String key) throws SQLException {
        	String value = null;
        	String Database="myapp";
        	String sql="SELECT "+key+" FROM myapp_user WHERE id=?";
        	
        	Connection connection=getConn(Database);
        	if (connection!=null){
                try {
                    PreparedStatement ps=connection.prepareStatement(sql);
                    if (ps!=null){
                        ps.setString(1,id);
                        ResultSet rs=ps.executeQuery();
                        if(rs!=null) {
                        	int count =rs.getMetaData().getColumnCount();
                            while   (rs.next()){
                                for (int i=1 ;i<=count;i++){
                                    String field=rs.getMetaData().getColumnName(i);     
                                        value=rs.getString(field);
                                        System.out.println("the database value is:"+value); 
                                	}
                            }
                        
                    	}
                    }
                } catch (SQLException e) {
                    e.printStackTrace();
                    
                }
        
        	}
        	return value;
        }
        /*
         * 检查id'是否存在
         * 传入id
         */
        public static int hasId(String id) throws SQLException {
        	String Database="myapp";
        	String value;
        	String sql="select id from myapp_user";
        	 System.out.println("the input id is :"+id);
        	Connection connection=getConn(Database);
        	if (connection!=null){
                try {
                    PreparedStatement ps=connection.prepareStatement(sql);
                    if (ps!=null){
                       
                        ResultSet rs=ps.executeQuery();
                        if(rs!=null) {
                        	int count =rs.getMetaData().getColumnCount();
                            while   (rs.next()){
                                for (int i=1 ;i<=count;i++){
                                    String field=rs.getMetaData().getColumnName(i);     
                                    value=rs.getString(field);
                                    
                                    System.out.println("the database id is:"+value); 
                            
                                    if(value.equals(id))
                                    {                            
                                    	return 1;
                                    }
                                    	 
                                	}
                            }
                        
                    	}
                    }
                } catch (SQLException e) {
                    e.printStackTrace();               
                }   
        	}
        	return 0;
        }
    }
    

    四,效果图

    登录页面
    登录页面
    注册
    在这里插入图片描述
    在这里插入图片描述
    在终端查看数据库,数据保存成功
    在这里插入图片描述
    登录成功!
    在这里插入图片描述
    整个工程文件下载:
    链接: https://pan.baidu.com/s/1jq4LoetVdoksjjjGQeb4MA 提取码: 33xw 复制这段内容后打开百度网盘手机App,操作更方便哦
    2020.3.16

    参考文章

    Eclipse创建java Web项目工程
    在这里插入图片描述

    展开全文
  • 主要介绍了java连接mysql数据库及测试是否连接成功的方法,结合完整实例形式分析了java基于jdbc连接mysql数据库并返回连接状态的具体步骤与相关操作技巧,需要的朋友可以参考下
  • Java连接Mysql数据库代码,可以直接连接数据库,返回数据表内的数据以及相关的内容。
  • java连接oracle数据库代码
  • Java建立数据库连接并实现数据库查询,初学者通过本Java代码,了解如何加载驱动器,获取连接,定义SQL查询语句,获取Statement对象,执行查询、遍历ResultSet、获取数据、在控制台输出数据,关闭连接等。
  • Java连接MySQL数据库——含步骤和代码

    万次阅读 多人点赞 2019-06-01 23:59:22
     MySQL连接驱动:mysql-connector-java-5.1.27.jar 加载驱动:  1. 在工程目录中创建lib文件夹,将下载好的JDBC放到该文件夹下,如下图所示:    2. 右键工程名,在java build path中的Libraries分页中选择...
  • java连接数据库代码,共介绍了十余种连接数据库的代码,不同的数据库有不同的连接方式
  • 程序实现了使用Java语言编程实现对数据库的访问,所有的SQL操作均在自己建立的新库里进行,数据库建议选用学生课程数据库,可以选择进行创建、插入、查询、删除和更新等操作,其中查询操作可以按学号、姓名、专业...
  • java代码 数据库链接文件 数据库链接文件
  • java连接数据库源码

    2018-12-18 15:44:55
    最新版的驱动包连接数据库的源码,建议先看视频学习java连接数据库,然后再看此代码,即可。
  • java 连接数据库,三步骤 加载驱动 获得连接 创建数据库操作对象 创建查询返回的结果集 当你需要什么的时候,在相应的方法获取即可
  • 1、加载JDBC驱动程序 2、提供JDBC连接的URL 3、创建数据库连接 4、创建一个Statement 5、执行SQL语句 6、处理结果 7、关闭JDBC对象
  • 介绍了java连接MySQl数据库实例代码,有需要的朋友可以参考一下
  • jsp+servlet+mysql的使用,实现从jsp页面的表单输入数据,到servl进行处理,把数据插入数据库。 你可以学到连接数据库,向数据库插入数据,使用servle等
  • java 连接数据库实现用户登录功能

    热门讨论 2012-12-08 19:24:27
    java 连接数据库实现用户登录功能 能运行成功,适合初学者借鉴学习。
  • 用于连接sql server 的数据库代码

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 574,249
精华内容 229,699
关键字:

java连接数据库的代码

java 订阅