springsql
1.定义两个DAO分别使用不同的数据源,ADAO连接A数据库,BDAO连接B数据库 2.定义一个Service类,加上Spring注解@Transactional,表示进行事务管理。事务要配置成jta分布式事务。 将ADAO和BDAO注入到Service类里面
② spring 配置日志打印不打印sql语句
日志工具还是最常用的log4j,整合了其他框架之后,发现无法打印SQL语句,然而项目中的显示调用日志却可以正常打印出来
③ Spring 事务在什么情况下,会进行sql回滚
spring会封装一个RunTimeException,一些运行时异常,sql异常都会抛这个异常然后就回滚,
当然你也可以自己自定义回滚异常
如事物中定义rollbackfor=YourException.class
④ spring batch中怎么执行sql语句
1.delete from role_link_menu where fk_role_id=200
2.insert into role_link_menu(id,fk_role_id,fk_menu_id) values ('"+UUID.randomUUID().toString()+"',200,1")";
3.insert into role_link_menu(id,fk_role_id,fk_menu_id) values ('"+UUID.randomUUID().toString()+"',200,2")";
这期间任一条SQL语句出现问题都会回滚[**]会所有语句没有执行前的最初状态!
⑤ spring怎么调用sql server带参的存储过程
利用SQL的语言可以编写对于数据库访问的存储过程,其语法如下:
CREATE PROC[EDURE] procere_name [;number]
[
{@parameter data_type} ][VARYING] [= default] [OUTPUT]
]
[,...n]
[WITH
{
RECOMPILE
| ENCRYPTION
| RECOMPILE, ENCRYPTION
}
]
[FOR REPLICATION]
AS
sql_statement [...n]
[ ]内的内容是可选项,而()内的内容是必选项,
例: 若用户想建立一个删除表tmp中的记录的存储过程Select_delete可写为:
Create Proc select_del As
Delete tmp
例:用户想查询tmp表中某年的数据的存储过程
create proc select_query @year int as
select * from tmp where year=@year
在这里@year是存储过程的参数
例:该存储过程是从某结点n开始找到最上层的父亲结点,这种经常用到的过程可以由存储过程来担当,在网页中重复使用达到共享。
空:表示该结点为顶层结点
fjdid(父结点编号)
结点n 非空:表示该结点的父亲结点号
dwmc(单位名称)
CREATE proc search_dwmc @dwidold int,@dwmcresult varchar(100) output
as
declare @stop int
declare @result varchar(80)
declare @dwmc varchar(80)
declare @dwid int
set nocount on
set @stop=1
set @dwmc=""
select @dwmc=dwmc,@dwid=convert(int,fjdid) from jtdw where id=@dwidold
set @result=rtrim(@dwmc)
if @dwid=0
set @stop=0
while (@stop=1) and (@dwid<>0)
begin
set @dwidold=@dwid
select @dwmc=dwmc,@dwid=convert(int,fjdid) from jtdw where id=@dwidold
if @@rowcount=0
set @dwmc=""
else
set @result=@dwmc+@result
if (@dwid=0) or (@@rowcount=0)
set @stop=0
else
continue
end
set @dwmcresult=rtrim(@result)
使用exec pro-name [pram1 pram2.....]
⑥ java Spring MCV sql查询结果重复
如果数据库查出来的数据不重复,而显示到页面上的有重复,说明,在后台处理的时候出现了问题,你还说用了page做分页,请问你会debug吗?如果会的话,把你执行SQL查询出来的结果看一下是否有重复的。如果没有重复,那么接着看看你传到页面上是容器是不是有重复,如果没有,那就是页面显示的问题,如果有,那就是处理的问题,然后接着一步步找,因为我不知道你用的是什么框架,所以我不好说。