• java链接数据库--Mysql


    /*************************************************************************
      > File Name: Mysql.java
      > Author: Baiyan
      > 题意:
      > Created Time: 2016年06月04日 星期六 01时03分32秒
     **********************************************************************/
    import java.sql.DriverManager;
    import java.sql.ResultSet;
    import java.sql.SQLException;
    import com.mysql.jdbc.Connection;
    import java.sql.Statement;
    
    
    public class Mysql
    {
        public static void main(String[] args) throws Exception
        {
            Connection conn = null;
            String url = "jdbc:mysql://localhost:3306/sample?"+"user=root&password=www1964878036&useUnicode=true&characterEncoding=UTF-8";
            //先加载Mysql驱动类;
            try
            {
                Class.forName("com.mysql.jdbc.Driver");
                System.out.println("驱动加载成功!");
                conn = (Connection) DriverManager.getConnection(url);
                //connection 代表一个数据库的链接;
                //
                //要执行sql语句必须获得java.sql.Statement实例;
                Statement stmt = conn.createStatement();
                //Statement 实例有以下三种:
                //执行静态的sql语句,通过Statement 实例实现;
                //执行动态的sql语句,通过PreparedStatement实例实现;
                //执行数据库存储过程,通常通过CallableStatement实例实现;
                //上面是其中一种,下面给出另外两种;
                //
                //PreparedStatement pstmt = conn.preparesStatement(sql);
                //CallableStatement cstmt = con.prepareCall("{CALL demoSp(?,?)}");
                //
                //然后是执行sql语句;
                //有三种执行sql语句的方法
                //executeQuery、executeUpdate、execute
                //
                //说一下三者的用法
                String Sql="create table student(id char(20), name char(20),primary key(id))";
                int result = stmt.executeUpdate(Sql); //返回受影响的行数;
                //返回-1就表示没有成功;
                ResultSet rs = null;
                if(result != -1)
                {
                    Sql = "insert into student(id,name) values('1234','biayan')";
                    result = stmt.executeUpdate(Sql);
                    Sql="select * from student";
                    rs = stmt.executeQuery(Sql);
                    //这句返回结果集合;
                    while(rs.next())
                    {
                        System.out.println(rs.getString(1)+"	"+rs.getString(2));
                    }
                }
                //可以看出,Query用于处理查询类的;
                //Update用于Insert、Update、delete、Drop;
                //另一个用于组合的语句;
                //对于结果集也可以使用getString("name")的方式活取内容;
                //列是从1开始编号的;
                //
                //
                //然后要关闭连接;
                if(rs!=null)//关闭记录集;
                {try
                    {
                        rs.close();
                    }catch(SQLException e)
                    {
                        e.printStackTrace();
                    }
                }
                if(stmt !=null)//关闭声明;
                {
                    try{
                        stmt.close();
                    }catch(SQLException e){
                        e.printStackTrace();
                    }
                }
                if(conn!=null)
                {
                    try
                    {
                        conn.close();
                    }catch(SQLException e)
                    {
                        e.printStackTrace();
                    }
                }
    
    
            }catch (ClassNotFoundException e)
            {
                System.out.println("找不到驱动程类,加载驱动失败");
                e.printStackTrace();
            }
            //加载成功后,会将Mysql的Driver类的实例注册到DriverManger类中;
    
        }
    }
  • 相关阅读:
    Http无状态协议
    API
    在IE里嵌入播放器
    ASP.NET中常用的优化性能方法(转)
    分布式应用程序
    VS2007的beta版下载地址
    组合还是继承(转)
    您不能初始化一个远程桌面连接,因为在远程计算机上的windows登录软件被不兼容的软件取代
    .Net平台开发的技术规范与实践精华总结(转)
    什么是“分布式应用系统”
  • 原文地址:https://www.cnblogs.com/by-1075324834/p/5573028.html
Copyright © 2020-2023  润新知