之前也有人问过这样的问题,这是我的建议 1. 可以看看JAVA的这个方法:java.lang.Runtime.getRuntime().exec();缺点:由于你的数据库密码为空,所以用这个方法 .bat也无法运行2.用数据流读入SQL文件,然后用 String.toString().split(";"); 来分离出各个单独的SQL语句,一个一个的执行。缺点:如果SQL文件里有注释部分,就会麻烦点。3.用Ant写脚本执行4.数据库工具执行我还比较会选择3,4,数据库的操作,特别是对表结构的改变,还是在数据库里执行会比较好比如删表操作,就最好不要写在代码,在数据库里,误删除还能rollback,程序里就麻烦了
专注于为中小企业提供成都网站制作、网站建设服务,电脑端+手机端+微信端的三站合一,更高效的管理,为中小企业房山免费做网站提供优质的服务。我们立足成都,凝聚了一批互联网行业人才,有力地推动了上千家企业的稳健成长,帮助中小企业通过网站建设实现规模扩充和转变。
JAVA有exec方法,加上参数去调用
代码片段:
try{
Runtime ce=Runtime.getRuntime();
ce.exec("sqlplus sql.pl");
}
catch(Exception e){
}
1.在数据库编写自定义函数,存储过程,在java中调用
2.直接在java中写sql语句,使用jdbc查询
JDBC, 全称为Java DataBase Connectivity standard, 它是一个面向对象的应用程序接口(API), 通过它可访问各类关系数据库。JDBC也是java核心类库的一部分。
JDBC的最大特点是它独立于具体的关系数据库。与ODBC (Open Database Connectivity)类似, JDBC API 中定义了一些Java类分别用来表示与数据库的连接(connections), SQL语句(SQL statements), 结果集(result sets)以及其它的数据库对象, 使得Java程序能方便地与数据库交互并处理所得的结果。使用JDBC, 所有Java程序(包括Java applications , applets和servlet)都能通过SQL语句或存储在数据库中的过程(stored procedures)来存取数据库。
select id="DAO接口方法名称" parameterType="参数类型" resultType="返回结果类型"
select * from 表 where 。。。
/select
resultType 可以是任意Object对象,如果多条数据,这这个方法返回的是ListObject?,
如果确认是单条数据,可以直接 Object? ***(**); 。
没有封装成对象时,默认返回的是ListMap字段名称String,列值Object这样的数据。
Dao接口:
ListMapString,Object list(Integer id);
SQL:
select id="list" parameterType="Integer" resultType="Map"
select * from aaa
where
if test="null!=id"
id #{id}
售后响应及时
7×24小时客服热线数据备份
更安全、更高效、更稳定价格公道精准
项目经理精准报价不弄虚作假合作无风险
重合同讲信誉,无效全额退款