xsj的Java学习笔记整理——JDBC

之前学习Java的时候做了很多笔记,但是一直放着没有梳理……(其实是懒),从此立下Flag,必须要把这些宝贵的笔记整理完,只不过需要点时间(#滑稽)        


 1.创建一个新的Java工程(如果没有)
        
        2.给当前的工程添加驱动包(jar包)(mysql,Oracle...)的依赖,包从数据库的厂商获取,
           此包实现了JDBC的接口,把这些实现过后的类组成了一个jar包。

        3.    在工程中添加package和class
            a.创建实体(entity)包或vo包( value object )
                实体包中的类和vo包中的类都是用来数据的
                类的属性是私有的,通过公有的getter和setter存取数据
                
                实体包中的某一个类,对应其在数据库中相应的那张数据表
                vo包中的类,放置的都是程序中临时使用的数据
                com.xxx.entity 实体包
                com.xxx.vo        vo包
                eg.
                com.xxx.entity.User   这个user类对应数据库中的t_user表
                com.xxx.vo.Page        此类用来存取分页信息
                
            b.创建dao包(data access object 数据访问对象
               
                com.xxx.dao 此包及其子包中都是有关数据库操作的java类或接口
                com.xxx.dao.common 此包是所有模块的数据库操作的公共java类
                com.xxx.dao.common.CommonDao 此类中的功能是数据库操作的公共功能,比如开数据库连接,和关数据库连接等
                        1.开连接
                                //加载驱动类
                                Class.forName("数据库的入口");
                                   eg.
                                        MySql:com.mysql.jdbc.Driver
                                        Oracle:oracle.jdbc.OracleDriver
                                //通过驱动管理器的类,加载对应驱动包中的接口的子实现类
                                Connection con=DriverManager.getConnection("url","usrname","userpassword");
                                        mysql: 
                                                url:jdbc:mysql://localhost:3306/testdb
                                                username:root
                                                userpassword:root
                                        oracle:
                                                url:jdbc:oracle:thin:@localhost:1521:orcl
                                                username:scott
                                                userpassword:tiger
                        2.关连接
                                //分别判断ResultSet对象,PreparedStatement对象
                                Connection对象,如果不空就调用close() 方法
                                eg.
                                com.xxx.dao.user 此包中专门操作user相关的数据库操作
                                com.xxxdao.user.IUserDao 此接口规范规范了用户的数据库操作
                                com.xxx.dao.user.impl.UserDaoMysql 此类是IUserDao的实现
         4.访问数据库:
                        数据库的dml操作:增删改
                                1. 获取连接
                                2.构建dml的sql语句
                                3.基于连接和sql语句运送到数据库,构建命令对象
                                在命令对象中给sql语句的"?"占位符的位置填入具体数据
                                4.基于连接和完整的sql语句,调用executeUpdate(  ) 方法执行sql语句,此方法的返回值是整数,返回值为0,dml失败,返回值>0,dml成功
                                5.关闭对应对象的资源
                                
                        数据库的dql操作:查
                                1.获取连接
                                2.构建dql的sql语句
                                3.基于连接,把sql语句运送到数据库,有"?"占位符,给占位符补充数据
                                4.基于连接和完整的sql语句,调用executeQuery方法,executeQuery方法的返回值ResultSet(结果集)也就是查询出来的结果放在了ResultSet对象中
                                5.循环从ResultSet结果集中读取数据,并把数据转换成集合存储在内存中,在关闭连接后使用集合对象中的数据即可
                                6.关闭对应对象的资源
                                
                com.xxx.dao.user.impl.UserDaoMysql 此类是IUserDao的实现
                        数据库的dml操作
                        步骤同上
                        数据库的dql操作
                        步骤同上
                
        5.如果有必要的话要进行单元测试
                        
       附:有关网络的若干协议
              http协议                   http://www.163.com
              https协议                 https://www.xxx.com
              ftp协议                     ftp://192.168.1.121
              smtp协议                 smtp://ip
              jdbc:mysql协议        jdbc:mysql://ip:3306/数据库
              jdbc:oracle协议        jdbc:thin协议:@ip地址 jdbc:oracle:thin:@localhost:1521:orcl

猜你喜欢

转载自blog.csdn.net/qq_18494159/article/details/79127412