java 调用sqlserver函数调用_SqlServer调用CLR服务

本文介绍如何使用Java调用SQLServer的存储过程来执行HTTP请求。通过创建C#的CLR服务,然后在数据库中配置并调用该服务,实现了从数据库层面发起的对外部服务的请求,例如心跳监测和定时任务。详细步骤包括C#代码实现、数据库权限配置、外部DLL引用以及创建和执行存储过程。
摘要由CSDN通过智能技术生成

作用

从数据库发起对外部服务的请求.

应用场景

心跳监测

定时启动站点

服务实现

代码部分(C#)

using System;

using System.Net;

publicpartialclassStoredProcedures

{

[Microsoft.SqlServer.Server.SqlProcedure]

publicstaticvoid UploadString(String url)

{

var client =newWebClient { Encoding = System.Text.Encoding.UTF8 };

client.UploadString(url,String.Empty);

}

}

注: Microsoft.SqlServer.Server.SqlProcedure属于System.Data程序集.

数据库部分

权限配置

USE [Exercise]

GO

ALTERDATABASE [Exercise]SETTRUSTWORTHYON

GO

EXECsp_configure'clr enabled',1

GO

sp_changedbowner'sa'

GO

reconfigure

GO

外部DLL引用配置

fb42a7902308401e21cacd4344fc264c.png

外部服务调用

1.  通过EXTERNAL关键字调用外部DLL的方法

CREATEPROCEDURE [dbo].[Exercise_SP_External_UploadString]

@Url [nvarchar](max)

WITHEXECUTEASCALLER

AS

EXTERNAL NAME [SqlserverClr.Service].[StoredProcedures].[UploadString]

GO

2.  以参数的形式调用外部服务

CREATEPROCEDURE [dbo].[Exercise_SP_CallExternalHttpService]

AS

BEGIN

EXEC dbo.[Exercise_SP_UploadString]@Url='http://www.baidu.com/'

END

GO

Sqlserver调用api

虽然使用sqlserver去调用服务接口的情况比较少,但也可以去了解下对应的使用情况 一.首先要开启组件的配置 sp_configure ; GO RECONFIGURE; GO sp_configu ...

SOA 架构中的ESB是更好的应用于异构系统集成整合还是用于统一服务调用/基础服务实施

一.讨论主题与观点 写一篇文章.发现一次自觉得有意思的SOA架构方面的讨论,源于昨天AgileEAS.NET SOA 平台群(113723486)里几个群友的一次关于ESB的一次讨论. 大家的讨论观点 ...

jquery或者JavaScript调用WCF服务的方法

/****************************************************************** * Copyright (C): 一心堂集团 * CLR版本: ...

正则表达式 第六篇:调用CLR函数执行正则查询

在SQL Server数据库中可以执行模糊查询,像like子句,和全文查询(Fulltext search),但是无法直接执行正则查找,SQL Server没有执行正则表达式的内置函数,但是我们可以创 ...

【Java EE 学习 80 下】【调用WebService服务的四种方式】【WebService中的注解】

不考虑第三方框架,如果只使用JDK提供的API,那么可以使用三种方式调用WebService服务:另外还可以使用Ajax调用WebService服务. 预备工作:开启WebService服务,使用jd ...

ajax内调用WCF服务

WCF可以当作WebService一样被调用,在html内通过ajax调用WCF服务的方法如下: 1.新建一个WCF服务的网站项目: 2.在项目内增加一个新项:启用了ajax的WCF服务: 3.在对应 ...

完全使用接口方式调用WCF 服务

客户端调用WCF服务可以通过添加服务引用的方式添加,这种方式使用起来比较简单,适合小项目使用.服务端与服务端的耦合较深,而且添加服务引用的方式生成一大堆臃肿的文件.本例探讨一种使用接口的方式使用WCF ...

关于 C# 调用 JavaWebservice服务,版本不一致的问题

1. A SOAP 1.2 message is not valid when sent to a SOAP 1.1 only endpoint.   问题原因: 客户端和服务端的SOAP协议版本不一 ...

实现在GET请求下调用WCF服务时传递对象(复合类型)参数

WCF实现RESETFUL架构很容易,说白了,就是使WCF能够响应HTTP请求并返回所需的资源,如果有人不知道如何实现WCF支持HTTP请求的,可参见我之前的文章

随机推荐

python成长之路【第一篇】:python简介和入门

一.Python简介 Python(英语发音:/ˈpaɪθən/), 是一种面向对象.解释型计算机程序设计语言. 二.安装python windows: 1.下载安装包 https://www.pyt ...

ajax和servlet交互

网上有比较多的教程来将如何实现ajax与servlet的交互了,这里和这里的教程可以参考参考,在此处我只简单说明一下,并记录一下我这次遇到的问题. 整个思路是:写个js函数,在里面使用XHR(ajax ...

VisualVM 使用 service:jmx:rmi:///...无法连接linux远程服务器

VisualVM 无法使用 service:jmx:rmi:///jndi/rmi:///jmxrmi 连接到 关闭远程机器的防火墙即可:service iptables stop 不关闭防火墙的解决 ...

关于IE浏览器 ajax 请求返回数据不对的问题

在使用ajax向后台发送请求的时候,在使用ie 进行调试的时候发现根据条件进行查询时,返回的数据与没有根据条件进行查询时数据相同,也就是条件没有发生作用. 经过同事的帮助发现ajax初始化设置时没有c ...

egret键盘事件监听

document.addEventListener("keydown", function (event: any) { //alert(event.key); //console ...

Python之路(第二十八篇) 面向对象进阶:类的装饰器、元类

一.类的装饰器 类作为一个对象,也可以被装饰. 例子 def wrap(obj): print("装饰器-----") obj.x = 1 obj.y = 3 obj.z = 5 ...

OpenCV resources

http://blog.csdn.net/small_foxrabbit/article/details/39858149http://blog.csdn.net/wuyoy520/article/d ...

路径问题 :<c:url >的作用

最近的项目一直报这样的错 可是本地启动 又没问题,xshell查看日志 没有错误日志,找了好久都没想到错误原因.一位大佬几分钟就找到原因了有点扎心. 首先说一下解决问题的思路.首先报错是4开头,说明是 ...

mpvue使用scroll-view实现图片横向滑动

html代码

Logcat + money 笔记

如下命令:将过滤后的日志按照指定格式输出到指定的文件中 adb logcat -v time -s Test_Tag:v > logcat_local.txt A:其中 -v time 用来指定 ...

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值