JDBC编程之程序优化

来源 :中国科技博览 | 被引量 : 0次 | 上传用户:liuliushuang
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  中图分类号:G711 文献标识码:A 文章编号:1009-914X(2016)04-0290-01
  在最初编写的JDBC应用程序代码中,所有的数据信息都是编写到Java中的,这其实是一种不可取的方式。那么,我们把这些数据信息提取出来,放到属性文件中进行程序优化。
  一、配置文件优化程序
  Java的属性文件是一种配置文件,主要用来表达配置信息,它的后缀是properties,其实就是一个纯文本文件。创建Java配置文件的方法是选中src右键单击新建,选择other选项,再选择向导中General下的File,将文件起名为dbConfig.properties,点击Add按钮来添加属性及属性值,例如,属性name为driver,属性value为com.mysql.jdbc.Driver;属性name为dburl,属性value为jdbc:mysql://localhost:3306/xqy_db;属性name为user,属性value为root;属性name为password,属性value为admin。
  二、创建连接工厂类优化程序
  1、定义connectionFactory类,并创建包名为com.xqy.until;
  2、定义四个静态成员变量用来保存从属性配置文件 中读取的数据库配置文件信息值;
  3、定义静态代码块用来初始化类,可以为类的属性赋值,因为当加载类的时候会执行静态代码块,该静态代码块只能被执行一次。
  其中核心代码为:
  Properties prop=new Properties();
  InputStream in=connectionFactory.class.getClassLoader().getResourceAsStream(“dbConfig.properties”);
  prop.load(in);
  driver=prop.getProperties(“driver”);//對静态成员变量driver初始化
  url=prop.getProperties(“dburl”);//对静态成员变量url初始化
  user=prop.getProperties(“user”);//对静态成员变量user初始化
  pwd=prop.getProperties(“password”);//对静态成员变量pwd初始化
  4、定义一个连接工厂类的对象factory,并编写静态方法getInstance来返回连接工厂类对象实例,以确保在程序支行过程中只有一个实例。
  5、定义数据连接类的对象conn,通过定义makeConnection()方法来返回配置属性文件中的数据连接对象。
  Class.forName(drive);
  conn=DriverManager.getConnection(url,user,pwd);
  return conn;
  6、创建应用程序connectionFactoryDemo.java测试属性配置文件和连接工厂类,具体操作如下:
  将主方法抛出SQLException异常,在主方法中添加代码为:
  connectionFactory factory=connectionFactory.getInstrance( );
  Connection conn=factory.makeConnection( );
  System.out.println(conn.getActionCommit( ));
  接下来继续优化JDBC程序,使其更加清晰,更加符合工业标准规范。
  三、创建DTO类优化程序
  创建两个DTO类,分别对应数据表tbl_user和tbl_address。
  DTO是Data Transfer Object的缩写,是数据传输对象,主要用于远程大量数据调用的问题上,DTO一般只有成员变量,成员变量的setXX()方法和getXX()方法,还有构造函数,DTO不能包含业务逻辑。
  1、在包com.xqy.entity下建立抽象类IdEntity,其中有保护成员变量Long id,使用setXX( )和getXX( )对成员变量进行初始化,定义无返回值的toStrig()抽象方法。
  2、在com.xqy.entity包下,新建IdEntity类的子类User,该类具有name、password、email三个成员属性;添加父类中未实现的方法,为name、password、email三个成员属性添加setXX( )方法和getXX( )方法。
  3、在com.xqy.entity包下,新建IdEntity类的子类Address,该类具有city、country、userId三个成员属性;添加父类中未实现的方法,为city、country、userId三个成员属性添加setXX( )方法和getXX( )方法。
  四、创建DAO类优化程序
  DAO是Data Access Object的缩写,数据访问对象,主要用来封装对数据库的访问,通过它可以把数据库中的表转化为DTO类。
  1、 在包com.xqy.dao下建立接口UserDao,在该接口在添加抽象方法:
  public void save(Connection conn,User user) throws SQLException;
  public void update(Connection conn,Long id,User user) throws SQLException;
  public void delete(Connection conn,User user) throws SQLException;
  其中save( )方法用于保存用户信息,update( )方法用于更新用户信息,delete( )方法用于删除用户信息。
  2、创建UserDao接口的实现类UserDaoImpl,该类位于com.xqy.dao.impl包下。首先实现save( )方法,具体操作如下:
  String sql=“insert into tbl_user(name,password,email) values(?,?,?)”;
  PreparedStatement ps=conn.prepareStatement(sql);
  ps.setString(1,user.getName());
  ps.setString(2,user.getPassword());
  ps.setString(3,user.getEmail());
  ps.execute( );
  其它两个方法的实现仅仅改动sql语句的内容。
  3、在包com.xqy.test下建立类UserDaoTest,定义数据连接对象,并通过连接工厂类确保连接实例的唯一性,对数据连接对象使用事务机制实现该类的业务逻辑确保数据的一致性而不遭到破坏。
其他文献
前言  矿井发生透水事故,财产将受到巨大损失,井下如有被困矿工生命会受到巨大威胁。因此,矿井一旦被淹,潜水泵能否快速、及时、准确地安装到位,快速将井下积水排出;能否将灾害带来的损失降到最低点,意义非常重大。这是实现抢排水设备不受现场任何条件限制,抢排水救援工作成功率达百分之百的关键问题。  一、调研:  我们对黑龙江省的鸡西、双鸭山矿区,吉林省的通化矿区,河南省的义马矿区进行了深入调查.  调查发
期刊
[摘 要]布氏硬度计的检定工作从其具体操作流程和操作要点上来说并不是很复杂,而且布氏硬度计自身的结构较为简单、检定准确率高,并且整个检定过程简单易行,但是还是有一些自然因素和人为因素会影响到硬度的检验,直接影响到产品的质量,严重者还可能造成较大的不良后果。本文正是基于这一背景,从布氏硬度计的计量检定工作入手,先分析了布氏硬度计的工作原理和检定特点,再分析在布氏硬度计检定过程中的常见误差,最后结合实
期刊
[摘 要]近年来,我国科学技术紧随社会经济的发展取得良好的成绩,各种先进的机械设备层出不穷,压力表作为人们生活、生产中的常见仪表类机械,本文从其内涵入手,就温度变化对其检测的影响做了详细阐述,以期为检测人员工作提供参考。  [关键词]压力表;温度;气压;失准;检测  中图分类号:TH40 文献标识码:A 文章编号:1009-914X(2016)04-0300-01  压力表是当今工业技术测量工作中
期刊
[摘 要]综采是当下世界上最先进的一种采煤的工艺,是指煤矿的综合机械化开采。综采实现了破煤、装煤、运输等等的机械化程度,大大的减小了人力的参与,提高工作效率。随着我国经济飞速发展,机械工业的进步,机械化设备得到不断的改进,综采设备的工作范围也在不断扩张。要想提高综采的生产能力,充分发挥设备的性能,提高生产的安全性,必须要对综采设备进行科学合理的选型以及配套。本文详细讲解了综采工作面的设备选型问题,
期刊
[摘 要]在建筑工程项目施工中,建筑给水工程作为至关重要的施工环节,其施工质量的好坏对于建筑物给水系统的正常运行有着直接的影响。而就我国当前国情来看,由于生态环境问题越来越严重,能源也出现了极度短缺的现象。因此,节能已经成为了我国经济发展中的关键决策之一。因此,在现代建筑给水设计中,建筑设计人员必须充分考虑擦到节能问题,并充分做好节水措施,以此来实现建筑节能的目的。为此,笔者通过结合自身多年的工作
期刊
[摘 要]排山楼金矿床赋存于太古宇建平群变质岩中,主要受东西向韧性剪切带控制。矿区内岩石普遍糜棱岩化,金矿床发育有较强的围岩蚀变晕,蚀变晕明显受韧性剪切带控制。黄铁矿—绢云母化蚀变带是金矿体赋存的主要部位。  [关键词]排山楼金矿床 韧性剪切带 糜棱岩化  [Abstract]The Paishanlou gold deposit occurs in archean eonothem jianpi
期刊
[摘 要]随着社会电力需求量的不断增多,人们对于供电的安全可靠性的关注度越来越高。鉴于供电网的结构复杂等影响因素,中压配电网的故障快速定位可以有效地缩短故障排除时间。通过对中压配电网的结构特点进行分析,采用新型的基于时间差的故障特征区段定位方法,以故障进行精准的判断,可以及时的排除故障,尽早恢复供电。本文以某地区的10KV中压配电网系统故障为例,对故障定位采用新型方法,并进行原因分析,提出整改措施
期刊
[摘 要]本文重点介绍了地铁施工用土压平衡式盾构机中广泛使用螺旋输送机作为出渣土,当螺旋输送机特殊情况下螺旋体排土通道堵塞,需要排堵时,通过设在螺旋输送机上的排堵口进行检查排堵的防喷涌后备应急措施。设计改造螺旋机排堵口新型盖板是为了保证突发意外时螺旋机排堵口能安全顺利地封闭的保障措施。  [关键词]盾构螺旋机排堵口 防喷涌 新型盖板改造  中图分类号:G714 文献标识码:A 文章编号:1009-
期刊
[摘 要]本文通过对工作区导水、控热构造、盖层、热储层、地温场等地热地质特征的分析,确定了地热钻井位置,并对地热井出水量及出水温度的预测,为在该区施工地地热井提供了可信度较高的地热地质依据。  [关键词]地热地质特征 导水 控热构造 盖层 热储层 地温场 地热井 预测  中图分类号:P314 文献标识码:A 文章编号:1009-914X(2016)04-0289-01  2011年8月-2012年
期刊
[摘 要]信息技术应用于电力调度管理中的体系结构形式是服务器/客户,有效连接调度管理信息与MIS系统、调度自动化,确保各子系统数据共享机制得以实现,有效填补了电力调度信息管理的漏洞与空白,现阶段,这种技术在我国已经在多个电力调度管理中被成功应用,电力调度管理中的信息技术以其高效、实用、稳定的优势,赢得广大用户的认可,有利于电力调度科学、有效、安全管理。  [关键词]电力调度 信息技术 运用  中图
期刊