在JavaBean 中实现数据库操作的一点个人见解

java 数据库表批量,或者单个转换成javaBean对象工具 把数据库表转成javaBean, 有人支持大小写按java标准转换, 个人经验表明: 全部用数据库大写使用更方便, 不容易出错. 本工具可以转换成标准bean格式, 也可以数据库字段原始的方式创建bean 使用本工具的前提: 必须提供DataSource 数据源对象, 本代码是从spring中获取数据源, 兄弟们可以改写这个代码, 用自己的数据源. BYTE,SHORT对象用INTEGE,... 阅读详情
<script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script> JAVA作为较新编程语言,是公认的最具前途的一种,她的网络优势以及其平台无关性,使得建立分布式系统更简单易行,更由于她的出现,使Internet的作用从通信工具扩展到能够运行成熟应用系统的网络。那么是应用系统,不可避免的也许就是数据库。 使用JAVA编制Server端应用程序(B/S),与传统的C/S应用程序在连接数据库方面有着本质的区别.在传统的C/S应用程序中,用户在使用应用程序时是一个长连接,只有在用户退出在程序时,才断开这个连接;而B/S则不一样,它是基于Tcp/IP的一种无状态连接,用户在发一个请求后,Server响应并分配一个连接,当请求结束后,该连接随即失效,Server将根本不知道该连接是那个用户请求的,同样,用户在发下一个请求之前,也将根本不知道要连向哪个Server.正是由于这种区别,使得在程序的编制方面,两种系统有着不一样的原则,否则将可能出现完全不一样的效果! 下面,本人抛砖引玉,谈谈自己在这方面的一点点心得。 在进行数据库操作时,一般在Bean 中不要进行直接的数据库连接(包括引用其他方法来建立连接,即不要无中生有,只使用已存在的Connection 或者 Statement),更不应在构造函数中即生成一个连接,因为一个Bean有可能被多个应用程序引用,同样一个应用程序有可能引用多个Bean ,这样如果一个Bean 如上所述在构造函数中即生成一个连接,那么一个应用程序从开始到结束可能生成许多连接; 同样,在Bean 中的某个方法中也不应该直接建立连接; 那么应该如何在Bean 中进行数据库操作呢? 如果进行数据库查询,即使用Select 语句,可以在方法中直接使用一个Statement 参数。 如:



public ResultSet getRS(Statement stmt,String sqltxt)

{

ResultSet rs=null;

Try

{

    rs=stmt.executeQuery(sqltxt);

}

catch(SQLException e){}

return rs;

}

如果查询语句中有多个Select且嵌套,如



public String getS(Statement stmt,String sqltxt,String sqltxt1)

{

ResultSet rs=null;

Try

{

rs=stmt.executeQuery(sqltxt);

while(rs.next())

{

ResultSet rs1=stmt.executeQuery(sqltxt1)

If(rs1.next())

{

String s1=rs.getString(1);

String s2=rs1.getString(1);

..............

}

}

}

catch(SQLException e){}

return rs;

}
如果如上所述,两个Select 语句使用一个Statment ,那么将出错或者所得出的结果不正确。解决的方法,可以使用增加Statement 参数,以实现上述查询功能,但是使用增加Statement 参数的方法毕竟是有局限的,如果嵌套层数增加,Statement 参数也许也得跟着增加,这样对于程序的可扩张性是不利的,因为参数数量的不确定(即接口不确定),那么面向对象就没有意义了。 那么另外一种方法,就是直接传入Connection ,但是,如1 所述,不应在方法中直接引入,而是通过构造函数,或者单独一个方法来引入Connection(将该Connection 赋值给Bean中一个Connection 公共变量)。因为一般的应用程序,从开始到结束,不出意外一个Connection 就能完成所有工作,所以无需多次引入。 如:



import java.sql.*;

public class ClassName

{

Connection con1=null;

public ClassName()

{

}

public ClassName(Connection conn)

{

    con1=conn;

}

public void getConn(Connection conn)

{

    con1=conn;

}

public String getS(String sqltxt)

{

String s1=null;

try

{

    ......  

}

catch(SQLException e){}

return s1;

}

.......

}
如果SQL语句是对数据库的增、删、改等,那么可以引入一个Statement 来完成工作,因为不存在ResultSet 的问题,所有的操作都可以用一个Statement 来完成,同上(引用Connection 方法一样)可以使用构造函数或者单独一个方法来引入Statement (建议使用后一种,使用单独一个方法来引入,这样可以避免Connection 和Statement 都要引入的冲突)。 此外,对于数据库的增、删、改也可以,将所有的增、删、改的SQL语句放在一个Batch(批处理),最后执行这个Batch,方法如下:



import java.sql.*;

public class ClassName

{

Statement stmt=null;

public ClassName()

{

}

public void getStatement(Statement stmt_out)

{

    stmt=stmt_out;

}

public String update(...)

{

    String sqltxt="update tableName set....."

}

public String insert(...)

{

    String sqltxt="insert into tableName (....)values(....)"

}

public String del(...)

{

    String sqltxt="delete from tableName where ....."

}

public String mainPub()

{

stmt.addBatch(update(...));

stmt.addBatch(insert(...));

stmt.addBatch(del(...));

.....

stmt.executeBatch();

}

}

/code>
最后,再重申一遍,这只是本人的一点体会,如有不妥望不吝啬教! --------------------------------------------------------------------------------
jsp与Javabean实现登录注册 jsp与Javabean实现登录注册jsp与Javabean实现登录注册 jsp技术Mysql数据库编程结合javabean组件实现最简单基础的一个注册登录demo JavaBean开发 表示用户信息的JavaBeanUserInfojava 在Mysql数据库中创建数据库及相应的表格 注册用户时执行数据库操作的JavaBeanUserRegistjava 用户登录时连接数据库处理的JavaBean 阅读详情

相关推荐

JavaBean 实现Mysql数据库操作(Query、Insert、Delete、Update)

1、什么是JavaBean JavaBean是一种Java语言写成的

u012608572的专栏 7340

一个javabean轻松实现对数据库的各种操作

1.调用实例 String prm1,prm2,prm3; ResultSet rst=null; prm1 = ...; prm2 = ...; prm3 = ...; querybean.setConnection("sun.jdbc.odbc.JdbcOdbcDriver","jdbc:odbc:数据源名","sa",""); try{ String[] param = {prm1,pr

切忌浮沙筑高台 - 我是ASP程序员 1991

用JavaBean封装数据库操作

package lqs; import java.io.*; import java.sql.*; public class myJDBC { private String DBDriver; //JDBC驱动 private String url; //数据库路径 private String useName; //登陆数据库的用户名 private String

l15040141540的专栏 1700

数据库字段 到类 java bean_将数据库中表的字段自动转换为javaBean实体类

具体代码如下:package param;import java.io.File;import java.io.FileWriter;import java.io.IOException;import java.sql.Connection;import java.sql.DatabaseMetaData;import java.sql.DriverManager;import java.sql....

weixin_33936345的博客 1182

JavaBean封装数据库操作教程及实践

在本章中,我们深入了解了提升SQL执行效率和防止SQL注入的机制,并探讨了通过输入验证和转义处理,以及采用ORM框架和Hibernate Validator等验证框架来进一步加强数据库安全性的策略。这些技术与实践是构建安全且高效的Java数据库应用程序的关键。通过应用这些策略,开发者可以极大地降低应用程序遭受SQL注入的风险,保障数据库的安全性。

weixin_42471823的博客 858

将数据库操作封装到Javabean

通过jdbc驱动获得连接,将数据库操作封装在javabean中。

你如何使用javaBean操作数据库(摘自www.CnJsp.com)

用javaBean封装数据库操作谁不会?--对啊,大家都会,但是--如果构建一个高扩展性的“结构”?这就要用到java的相关知识了。废话少说,我们先在Tomcat中创建一个DataSource- jdbc/Panabia,然后再创建一个java“基类”,这个类封装了数据库连接和连接的释放:[程式中有相应的注解]package DB;import javax.sql.DataSource;impor

chenhua1934的专栏 1410

ICCompiler II学习笔记(一)ICC II使用全流程 overview

学习笔记同步发布在我的个人网站上,欢迎来访查看。 个人学识有限,理解可能有误,仅供参考。 文章目录一、前言二、 ICC II 简介和 GUI2.1 Blocks 和 Design Libraries2.2 Objects2.3 Application Options三、Design Setup四、APR flow五、 课程主题:如何用 ICC II来实现最好的PPA 一、前言 现在的芯片都在追求一个极致的PPA 芯片的生成可以分为以下 5大步骤: Front-end Design:前端设计,最终产生

一名FPGA芯片设计爱好者的技术博客 2万+

JavaBean实现用户登陆

JavaBean实现用户登陆 本文简单讲述使用javabean实现用户登录,包括用户登录,注册和退出等。 系统结构图   2.数据库表 createtableP_USER ( idVARCHAR2(50)notnull, usernameVARCHAR2(20), passwordVARCH...

qq_33317402的博客 763

FPGA笔试题知识点汇总(21~40)

FPGA笔试题知识点汇总(21~40)

weixin_52487896的博客 5886

VulnHub靶机渗透实战(详细思路讲解)

使用kali中的namp工具扫描开放端口,这时kali会用一个端口号向目标主机的65535个端口发送TCP连接建立请求,回应了ack=1,syn=q的端口就是开放端口号,这里可以看到21,22,80,3306号端口是开放的。可以看到这里得到了很多哈希,带*号的是禁用的或者是空密码,将三个不带星号的密码复制下来,创建一个shell.txt文档,将三个密码复制进去。这里看到我们是没有成功进入这个网页的,应该是目录的问题,我们将目录修改一下,但是没有显示出来,可能是编码问题,再回到我们找到的源码。

weixin_65891791的博客 2547

JavaBean的作用

javaBean  编辑 JavaBean 是一种JAVA语言写成的可重用组件。为写成JavaBean,类必须是具体的和公共的,并且具有无参数的构造器。JavaBean 通过提供符合一致性设计模式的公共方法将内部域暴露成员属性,long和class方法获取。众所周知,属性名称符合这种模式,其他Java 类可以通过自省机制发现和操作这些JavaBean 的属性。 javaBean在MVC设计...

aKuang_JH的博客 2万+

LwIP TCP Client 解决长数据发送的困扰

问题描述 LWIP 的 TCP Client 发送数据可以调用 tcp_write() 函数,将数据储存在缓冲区里面,然后等待超时自动发送或者调用tcp_output()函数进行发送。 然而 tcp_write() 函数 需要发送的数据过长时,将无法发送,并返回 ERR_MEM。 tcp_write()函数解析 tcp_write()的函数代码很多,就不细看代码了, 先看tcp_write()的完整函数: err_t tcp_write(struct tcp_pcb *pcb, const void

tiantangmoke的博客 1万+

DAO层通用实现,结果集ResultSet转化为javaBean的反射实现,自动生成javaBean

在学习持久层框架之前,反复编写dao层代码编烦了,就自己实现了一个能方便地根据数据库表创建javaBean,并实现其增删改查,结果集转化为List集合,sql编译语句里参数赋值的自动化的“框架”。本文所使用的数据库是mysql自带的simple data里的sakila数据库 先看一下使用效果 实现过程 核心代码如下 其余代码会在后面贴上 其余代码先看一下使用效果: 先编写并运行测试类创建jav

欧阳金城-武 3832

cartographer 添加二维码、apritag码作为路标点,测试位置关系

这里记录一下cartographer里面的路标点是如何转换的,首先你要知道路标点在相机坐标系的位置(很多二维码读码器的关系恰好相反,是相机在二维码的坐标系),然后要知道相机坐标系和小车坐标系(一般为base_link)之间的关系。中间用tf_broadcaster_发出来便于查看是否设置正确 void Node::HandleLandmarkMessage( const int trajectory_id, const std::string& sensor_id, const ca

南北粉面馆 2433

Multica 自托管部署与使用入门:从上线到让 AI Agent 真正干活

Multica是一个将AI Agent作为团队成员的任务协作平台,支持自托管部署。本文介绍了完整的单机部署流程: 核心架构包括前端界面、后端服务、PostgreSQL数据库和Runtime执行机器 推荐使用Docker Compose部署,需配置数据持久化目录 提供详细的docker-compose.yml和.env配置文件说明 重点注意事项:数据库密码和JWT密钥必须修改,生产环境配置必须设为production 需正确配置前端访问地址和WebSocket连接 部署完成后,用户可创建AI Agent并将其

q742971636的博客 1733

JavaBean

JavaBean

xiaobaistudyjava的博客 3417

Allegro因为精度问题导致走线连接不上的解决办法

在用Allegro做PCB设计的时候,尤其是从其它单板上导数据过来的时候,有时会因为精度不一致导致连接不上,如下图。一般来说,可以逐个重新连接一下,但是如果连接点位比较多的话,需要花费较多时间。下面介绍如何使用Allegro自带的功能解决这个问题,具体操作如下。和Convert Figure Stackups to vias。因为精度问题导致走线连接不上的解决办法。线和过孔因为精度有微小的连接偏差。

weixin_54787054的博客 2614

javabean

一、 javabean 是什么? Bean的中文含义是“豆子”,顾名思义,JavaBean是指一段特殊的Java类, 就是有默然构造方法,只有get,set的方法的java类的对象. 专业点解释是: JavaBean定义了一组规则JavaBean就是遵循此规则的平常的Java对象 满足这三个条件: 1.执行java.io.Serializable 接口  2.提供无参数的构...

weixin_30439067的博客 235

ISMN数据处理

可批量下载,十分方便

m0_46268055的博客 1216

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

Javabean

JavaBean与组件开发 JavaBean概述 JavaBean是用Java开发的可以跨平台的可重用组件,在Web程序中常用来封装业务逻辑和进行数据库操作。 在程序开发中,程序员所要处理的无非是业务逻辑和数据,而这两种操作都要用到JavaBean,因此JavaBean很重要。 JavaBean实际上就是一个Java类,这个类可以重用,javaBean从功能上说可以分为以下两类 1. 封装数据 2...

l15906593675的博客 402

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

JavaBean技术

1.JavaBean技术简介 1.JavaBean概述 JavaBean的应用简化了JSP页面,在JSP页面中只包含了HTML代码、CSS代码等,但JSP页面可以引用JavaBean组件来完成某一业务逻辑,如字符串处理、数据库操作等。 2.JavaBean种类 在传统应用中,JavaBean主要用于实现一些可视化界面,如一个窗体、按钮和文本框等,这样的JavaBean被称为可视化的JavaBean。 随着技术的发展与项目的需求,现在的JavaBean主要用于实现一些业务逻辑或封装一些业务对象,由于这样的J

海盗船长y的博客 1247

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

上一篇: Java 集合框架(在线教程)
下一篇: .Net比Java更受青睐 微软在调查中作弊?
java169
博客等级 码龄19年 27粉丝 2568原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值