• Blob


     

    package test;
    
    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.PreparedStatement;
    
    import org.junit.Before;
    import org.junit.jupiter.api.Test;
    
    /**
    *@author :王团结
    *@version: 2019年6月20日上午9:39:03
    *类说明:
    */
    public class TestBatchInsert {
        private Connection conn;
        /**
         * 
         */
        @Before
        public void iniConn() {
            // 注册驱动程序、连接、时区一定要加上
            String url = "jdbc:mysql://localhost:3306/mybase?serverTimezone=UTC";
    
            String username = "root";
            String password = "18339401841";
    
            try {
                // 获得连接
                conn = DriverManager.getConnection(url, username, password);
    
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
        /**
         * 使用预处理语句进行批量插入
         */
        @Test
        public void insert() {
            iniConn();
            try {
                String sql="insert persons(name,password,age) values (?,?,?)";
                PreparedStatement ppst=conn.prepareStatement(sql);
                conn.setAutoCommit(false);
                for(int i=0;i<1000;i++) {
                    ppst.setString(1,"King"+i);
                    ppst.setString(2,i+"");
                    ppst.setInt(3,i);
                    //添加批量命令
                    ppst.addBatch();
                    
                    //处理4000
                    if(i%300==0) {
                        //执行批量命令
                        ppst.executeBatch();
                        //清除批量命令
                        //ppst.clearBatch();
                    }
                    //ppst.executeUpdate();
                }
                conn.commit();
                ppst.close();
                conn.close();
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
    
    }
    import java.io.FileInputStream;
    import java.io.FileOutputStream;
    import java.io.InputStream;
    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.PreparedStatement;
    import java.sql.ResultSet;
    
    import org.junit.Before;
    import org.junit.jupiter.api.Test;
    
    import com.mysql.cj.protocol.Resultset;
    
    /**
     * @author :王团结
     * @version: 2019年6月20日下午5:03:45 类说明: 测试大对象
     */
    public class TestLob {
        private Connection conn;
    
        /**
         * 
         */
        @Before
        public void iniConn() {
            // 注册驱动程序、连接、时区一定要加上
            String url = "jdbc:mysql://localhost:3306/mybase?serverTimezone=UTC";
    
            String username = "root";
            String password = "18339401841";
    
            try {
                // 获得连接
                conn = DriverManager.getConnection(url, username, password);
    
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
    
        /**
         * @throws Exception 插入图片和文本
         * 
         */
        @Test
        public void blob() throws Exception {
            iniConn();
            String sql = "insert into test(name,age,photo,memo) value(?,?,?,?)";
            PreparedStatement ppst = conn.prepareStatement(sql);
            ppst.setString(1, "tom");
            ppst.setInt(2, 12);
            FileInputStream fis = new FileInputStream("d:/arch/1.jpeg");
            ppst.setBinaryStream(3, fis, fis.available());
            ppst.setString(4, "jfkdljgjklg");
            ppst.executeUpdate();
            ppst.close();
            conn.close();
        }
        /**
         * @throws Exception 插入图片和文本
         * 
         */
        @Test
        public void findBlob() throws Exception {
            iniConn();
            String sql = "select * from test where id=?";
            PreparedStatement ppst = conn.prepareStatement(sql);
            ppst.setInt(1, 1);
            ResultSet rs=ppst.executeQuery();
            if(rs.next()) {
                String name=rs.getString("name");
                InputStream is=rs.getBinaryStream("photo");
                byte[] buffer=new byte[1024];
                int len=-1;
                FileOutputStream fos=new FileOutputStream("d:/1.jpeg");
                while((len=is.read(buffer))!=-1) {
                    fos.write(buffer,0,len);
                }
                fos.close();
                is.close();
            }
            ppst.close();
            conn.close();
        }
    }
    package test;
    
    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.ResultSet;
    import java.sql.Statement;
    
    import org.junit.jupiter.api.Test;
    
    /**
    *@author :王团结
    *@version: 2019年6月19日下午11:48:31
    *类说明:
    */
    public class TestStatament {
        private Connection conn;
        /**
         * 
         */
        @Test
        public void iniConn() {
            // 注册驱动程序、连接、时区一定要加上
            String url = "jdbc:mysql://localhost:3306/mybase?serverTimezone=UTC";
    
            String username = "root";
            String password = "18339401841";
    
            try {
                // 获得连接
                conn = DriverManager.getConnection(url, username, password);
    
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
        
        @Test
        public void testLogin() {
            String name="admin";
            String pass="123456";
            // 创建语句对象(解耦合)
            iniConn();
            try {
                Statement st = conn.createStatement();
    
                String sql = "select * from persons where name = '" + name+"' and passwrod='"+pass+"'";
                // 执行SQL语句
                ResultSet rs = st.executeQuery(sql);
                
                //遍历结果集
                if(rs.next()) {
                    int id=rs.getInt(1);
                    System.out.println("登录成功!");
                    
                }
                else {
                    System.out.println("用户名/密码错误,请重试!!");
                }
                rs.close();
                // 释放资源
                
                st.close();
                conn.close();
    
                System.out.println("over");
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
    }
    package test;
    
    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.PreparedStatement;
    import java.sql.ResultSet;
    import java.sql.Statement;
    
    import org.junit.Before;
    import org.junit.jupiter.api.Test;
    
    /**
    *@author :王团结
    *@version: 2019年6月20日上午12:27:22
    *类说明:
    */
    public class TestTransactionn {
        private Connection conn;
        /**
         * 
         */
        @Before
        public void iniConn() {
            // 注册驱动程序、连接、时区一定要加上
            String url = "jdbc:mysql://localhost:3306/mybase?serverTimezone=UTC";
    
            String username = "root";
            String password = "18339401841";
    
            try {
                // 获得连接
                conn = DriverManager.getConnection(url, username, password);
    
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
        /**
         * 使用预处理语句进行批量插入
         */
        @Test
        public void test1() {
            iniConn();
            try {
                String sql="insert persons(name,password,age) values (?,?,?)";
                PreparedStatement ppst=conn.prepareStatement(sql);
                //关闭自动提交
                conn.setAutoCommit(false);
                ppst.setString(1,"King");
                ppst.setString(2,"123546");
                ppst.setInt(3,16);
                ppst.executeUpdate();
                //手动提交
                conn.commit();
                ppst.close();
                conn.close();
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
    }
  • 相关阅读:
    android学习---ListView
    android学习---ViewStub惰性装载控件
    android学习---TabHost
    微信小程序二维码带参数
    as
    niginx高性能原因
    Nginx动态反向代理1
    Niginx反向代理负载均衡
    jmeter测试,定制化内嵌tomcat调优
    Git通过密钥对远程仓库上传和更新详细操作
  • 原文地址:https://www.cnblogs.com/King-boy/p/11060486.html
Copyright © 2020-2023  润新知