今天正好需要统计三个网站栏目信息更新情况,而这三个网站的后台采用了不同的数据库管理系统。初步想法是通过建立一个小的Tomcat webapp,进而通过JDBC访问这三个后台数据库,并根据返回的数据生成报表。

1 开发环境

  • 数据库管理系统:一个是SqlServer 2000,另一个是Oracle 9i,再一个是PostgreSQL9.1
  • Tomcat执行平台:CentOSx64 + JDK7.0x64 (全64位环境)

2 JDBC驱动的选择

2.1 Oracle9i

Oracle官方提供了ojdbc6.jar这个type 4 JDBC驱动,仅此一个文件就能完成对JDBC的支持,将其拷贝到WEB-INF/lib下。关键代码如下:

         Class.forName("oracle.jdbc.driver.OracleDriver");
         DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());
         String dbUrl = "jdbc:oracle:thin:@IP地址:1521:实例名";


oracle对于兼容性做的非常好,这个版本的JDBC驱动对oracle9i依然支持良好。

2.2 SqlServer2000

微软官方也提供了SqlServer的type 4 JDBC驱动,具体说来有两个文件:sqljdbc4.jar, sqljdbc.jar,其中带4的是最新的版本可以运行于JDK7.0下,而不带4的版本不能运行于
JDK7下,问题是sqljdbc4.jar只支持SqlServer 2005以上的版本,不支持SqlServer 2000。也就是说要想通过微软提供的JDBC驱动操作SqlServer 2000,你的JDK版本一定要比JDK7低才行,可是我们的开发环境已经确定了是JDK7。
有此想到了两个解决思路:

一是使用JDBC-ODBC桥接,unixODBC是Linux平台上的ODBC实现,进而还需要安装SqlServer 2000的ODBC驱动,www.unixODBC.org给出了两个链接,一个不是免费开源的;另一个是基于freetds的ODBC驱动,不知为什么www.freetds.org网站打不开了。我以前用过freetds的命令行连接SqlServer还是不错的。ODBC的配置非常复杂,尤其是在Linux 环境下,特别不友好。懒惰的心理下,放弃了这种思路。

二是既然freetds可以操作SqlServer,为什么不越过ODBC,让JDBC直接基于tds呢,很幸运在网上找到了一个好的解决方案:jTDS,详见http://jtds.sourceforge.net。这个项目提供了基于TDS协议的JDBC实现,是一个纯的type 4 JDBC驱动,通过一个jtds-1.3.0.jar即可满足通过JDBC访问SqlServer2000的需要。而且可以运行于JDK7.0下,正好满足我的要求。

最终采取了第二种思路,关键代码如下:

              Class.forName("net.sourceforge.jtds.jdbc.Driver");
              DriverManager.registerDriver(new net.sourceforge.jtds.jdbc.Driver());
              String dbUrl = "jdbc:jtds:sqlserver://IP地址:1433/数据库名";


2.3 PostgreSQL9.1

官网jdbc.potgresql.org提供postgresql-9.2-1000.jdbc4.jar,这也是一个type 4 JDBC驱动,下载即可使用。关键代码如下:

           Class.forName("org.postgresql.Driver");
           dbUrl = "jdbc:postgresql://IP地址:5432/数据库名";

这个驱动加载的时候自动注册,所以不需要再单独进行registerDriver了。

3 总结

通过这个小小的项目,总结一下目前常用的数据库的JDBC驱动选择:
(1)SQL Server 对于2005及以上版本,建议使用微软官方的type 4JDBC驱动;对于2000版本,如果JDK环境较老,可以使用微软官方版本,如果JDK7.0则使用jTDS这个type 4JDBC驱动;
(2)Oracle,对于所有版本推荐使用官方的thin驱动,也就是type4的JDBC驱动;
(3)PostgreSQL, MySql,官方提供了type 4的JDBC驱动,使用即可。
网络是个宝藏,但是要找到你真正需要的东西,就必须有完整的知识体系结构,必须有清晰的分析思路。

如果需要在.net框架下访问Sqlserver和Oracle,可以参考我的另一篇博客:http://blog.csdn.net/smstong/article/details/5874451

Linux下通过JDBC连接Oracle,SqlServer和PostgreSQL

相关文章

  1. windows cmd 设置http代理

    //更改为自己代理服务器ip和端口 set http_proxyhttp://127.0.0.1:1080 set https_proxyhttp://127.0.0.1:1080//如需用户和密码,则继续执行下面命令 set http_proxy_user set http_proxy_pass...

    2023/3/28 17:04:29
  2. delphi常用函数、属性、事件参考手册 (转)

    注:本文源代码点此下载 名称 类型 说明 abort 函数 引起放弃的意外处理 abs 函数 绝对值函数 addexitproc 函数 将一过程添加到运行时库的结束过程表中 addr 函数 返回指定对象的地址 adjustlinebreaks 函数 将给定字符串的行分隔符调整为cr/lf序列 align 属性…...

    2023/3/28 17:04:28
  3. go 包init初始化顺序

    文件结构如下 假设各个go文件都有init函数 执行顺序是 a的init、b的init、c的init ,按文件名排序 单文件内init执行顺序是书写顺序 多个包引用同一个包的话,被引用包init只执行一次,即所有包init都只执行一次...

    2023/3/28 17:04:28
  4. Asp.net解析HTML并利用XPATH分析提取内容

    注:本文源代码点此下载 asp.net解析html并利用xpath分析提取内容 html解析器有很多种,最常用的是htmlagilitypack和sgmlreader(http://sourceforge.net/projects/dekiwiki/files/sgmlreader/)。 这里使用的是htmlagilitypack: 下载地址:http://htmlagilitypack.c…...

    2023/3/28 17:04:27
  5. swaggo生成api

    swaggo工具使用 swaggo工具使用 -g 多个存放api的go文件,空格隔开 -d 必须选择api文件存放的目录,不写的话则会从根目录下找main.go //意思是从api目录下扫描api1.go、api2.go文件,默认生成docs目录 swag init -g api1.go api2.go -d api …...

    2023/3/28 17:04:27
  6. HTML5学习笔记简明版(4):新元素之video,audio,meter,datalist,keygen,output

    注:本文源代码点此下载 video 通过标签,我们可以抛弃最近不怎么讨好的flash,直接在页面中播放视频文件。视频文件自然是最符合语义化的文件格式,但该元素标签同样支持音频与图片。 过去(及目前),我们通常要使用类似下面这样繁冗丑陋的代码来将视频放置在页面中,但…...

    2023/3/28 17:04:26
  7. go 关于接口的实现

    package mainimport "fmt"type I interface {Io() error }type A struct { }func (r *A) Io() error {fmt.Println("a i")return nil }type B struct {*A //使用匿名方式,才会隐式实现A所继承的接口 }//自定义实现接口,类似于重写 f…...

    2023/3/28 17:04:26
  8. AJAX基础教程

    注:本文源代码点此下载 这篇文章将带您浏览整个ajax的基本概貌,并展示两个简单的例子让您轻松上路. 什么是 ajax? ajax (异步 javascript 和 xml) 是个新产生的术语,专为描述javascript的两项强大性能.这两项性能在多年来一直被网络开发者所忽略,直到最近gmail, …...

    2023/3/28 17:04:25
  9. go 断言 官方教程翻译

    原文 Type assertions A type assertion provides access to an interface values underlying concrete value. t : i.(T) This statement asserts that the interface value i holds the concrete type T and assigns the underlying T value to the variable t. If i do…...

    2023/3/28 17:04:24
  10. bingoideas

    注:本文源代码点此下载 一、什么是反射: 反射的概念是由smith在1982年首次提出的,主要是指程序可以访问、检测和修改它本身状态或行为的一种能力。这一概念的提出很快引发了计算机科学领域关于应用反射性的研究。它首先被程序语言的设计领域所采用,并在lisp和面向对…...

    2023/3/28 17:04:24
  11. nginx 代理多个服务共用80端口

    修改配置 server {listen 80;server_name www.domain.cn;location / {proxy_set_header X-Real-IP $remote_addr;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;proxy_set_header Host $http_host; proxy_redirect off;proxy_pass http://127.0.0.1:80…...

    2023/3/28 17:04:23
  12. 如何在 万一的 Delphi 博客 回复自动格式化的着色代码?

    注:本文源代码点此下载 #35楼 2010-12-08 10:48 yangxs 清风网络在大量盗用您的贴子!!满屏的广告,也没有注明帖子来源。看着就生气。要不要投诉他啊。 http://www.vipcn.com/chengxukaifa/delphi/delphi_1.html 回复 引用 查看 #36楼[楼主] 2010-12-08 22:20 万…...

    2023/3/28 17:04:22
  13. go.mod 包引入几种方式

    修改go.mod中的require几种方式 包地址 12位commit ID github.com/... 55974d0fd109 引入最新版本 github.com/... latest 引入指定版本 github.com/... v版本号 示例 require (github.com/casbin/casbin/v2 v2.0.2github.com/fastly/go-…...

    2023/3/28 17:04:22
  14. qingyezhu

    注:本文源代码点此下载 1、main方法是怎么写的 public static void main(string[] args) { } 2、变量的命名规则是怎么样的? 采用驼峰命名法,见名知意,以小写字母开始。 常量命名:全部大写。 方法命名: 小写字母开始,驼峰命名。 类命名:首字母大写。 3、if…...

    2023/3/28 17:04:21
  15. go gin配置websocket(copy直接可用)

    主要依赖 "github.com/gin-gonic/gin" "github.com/gorilla/websocket" websocket.go package serverimport ("errors""github.com/gin-gonic/gin""github.com/go-emix/utils""github.com/gorilla/websocket"…...

    2023/3/28 17:04:21
  16. Delphi WinExec ShellExec 用法介绍

    注:本文源代码点此下载 在windows程序设计中winapi也为我们提供了类似的函数,它们就是winexec()和shellexecute(),下面就来讨论一下这两个函数的用法。 1)winexec() 函数原型: uint winexec(lpcstr lpcmdline,uint ucmdshow); 参数说明:(激活的意思是能接受焦点,…...

    2023/3/28 17:04:20
  17. go 验证码实现

    依赖 "github.com/mojocn/base64Captcha" 官方预览 实现 package utilimport (cp "github.com/mojocn/base64Captcha""image/color""strings" )var captcha *cp.Captchaconst (height 43width 200length 4 )//创建字符串验证码实…...

    2023/3/28 17:04:20
  18. Django与Ajax教程(一)

    注:本文源代码点此下载 原文地址:http://www.willarson.com/blog/?p36 本人英文比较烂,翻译的也不怎么样,大家凑合着看吧。 第一部分:django与ajax:介绍和安装 近来我开始向正在用django开发的一个项目中添加ajax技术,开始有点坎坷。有关于这方面可用的文档资料…...

    2023/3/28 17:04:19
  19. 姬魔恋战纪脚本开发

    码云地址...

    2023/3/28 17:04:18
  20. 清除 go build 缓存,释放空间

    文件位置 C:\Users\用户名称\AppData\Local\go-build 删除掉 go build 文件夹就可以了...

    2023/3/28 17:04:17
  21. html颜色代码对照表

    注:本文源代码点此下载 godwar 今日天氣 转载声明 本 blog 所有文章遵循创作共用版权协议,要求署名、非商业、保持一致。在满足创作共用版权协议的基础上可以随意转载,但请以超链接形式注明出处。 署名-非商业性使用-禁止演绎 2.5 中国大陆 你可以自由复制、发…...

    2023/3/28 17:04:17
  22. jQuery学习笔记:Ajax(一)

    注:本文源代码点此下载 注册用户登录后才能发表评论,请 登录 或 注册,返回博客园首页。 首页博问闪存新闻园子招聘知识库 最新it新闻: ios 5.1 beta3文件预示未来 siri有可能支持 ipad和 ipod touch android平台12月广告浏览份额51.6% 超越ios 测试版ios源代码…...

    2023/3/28 17:04:16
  23. JetBrains IDE 单词拼写自定义(强迫症福音)

    修改配置项如图 accepted 单词可以随便自定义,小写即可...

    2023/3/28 17:04:15
  24. sxliupeng

    注:本文源代码点此下载 扩展体验html5草案的前身名为web applications 1.0。於2004年被whatwg提出,於2007年被w3c接纳,并成立了新的html工作团队。在2008年1月22日,第一份正式草案已公布,预计将在2010年9月正式向公众推荐。whatwg表示该规范是目前正在进行的工作,仍…...

    2023/3/28 17:04:15
  25. go 常用框架或库收集

    任务调度(定时任务)gocron 日志 logrus 日志切分 file-rotatelogs 命令行 cli yaml处理 yaml 打包各平台执行程序 gox 处理excel excelize 爬虫 colly jwt验证 jwt-go 权限 casbin 数据库操作 gorm web路由 gin request req Gui ui walk 只…...

    2023/3/28 17:04:14
  26. AjaxAtlas技术团队下一步活动讨论,请团队成员进来给点意见!

    注:本文源代码点此下载 自ajax&atlas技术团队成立至今,中间夹了个10.1长假,所以虽然引起众多朋友的关注,但是团队内的学习气氛没有成立时浓,收假也一个多星期了,逐渐要进入工作状态了,希望我们的团队也能开展什么活动,使大家能进一步了解和使用这一系列无刷技术…...

    2023/3/28 17:04:14
  27. go reflect Elem() 深入学习

    示例 var r io.Reader os.Stdin // os.Stdin is of type *os.File which implements io.Readerv : reflect.ValueOf(r) // r is interface wrapping *os.File value fmt.Println(v.Type()) // *os.Filev2 : reflect.ValueOf(&r) // pointer passed, will be…...

    2023/3/28 17:04:13
  28. 关于html的框架

    注:本文源代码点此下载 http://soft.westcn.com/xue_yuan/html01_11.htm 欲明白本篇【html剖析】之标记分类请看 【标记一览】。 亦请先明白围堵标记与空标记的分别请看 【html概念】。 ■ 框架概念 : 所谓框架便是网页画面分成几个框窗,同时取得多个 url。只需…...

    2023/3/28 17:04:13
  29. Asp.net Ajax Control Toolkit设计编程备忘录(色眼窥观版)——第3回(UE专辑)

    注:本文源代码点此下载 前言: 色即设——设计,从网页设计的角度出发。因为自己的的特殊性(本身是软件工程师,但是对网页设计却有浓厚的兴趣),所以此系列文章不仅仅从编程角度出发,还将从设计的角度出发来细数ajaxcontroltoolkit系列控件,告诉你这些控件最终的结构表…...

    2023/3/28 17:04:11
  30. yaml 语法注意点

    database: [ {alias: ab,#?会识别不出来,所以要加上引号,单引号或双引号都可以connect: "root:password/test1?charsetutf8&parseTimeTrue&locLocal" }, {alias: bc,connect: root:password/test2?charsetutf8&parseTimeTrue&a…...

    2023/3/28 17:04:11

最新文章

  1. windows cmd 设置http代理

    //更改为自己代理服务器ip和端口 set http_proxyhttp://127.0.0.1:1080 set https_proxyhttp://127.0.0.1:1080//如需用户和密码,则继续执行下面命令 set http_proxy_user set http_proxy_pass...

    2023/3/28 17:04:29
  2. delphi常用函数、属性、事件参考手册 (转)

    注:本文源代码点此下载 名称 类型 说明 abort 函数 引起放弃的意外处理 abs 函数 绝对值函数 addexitproc 函数 将一过程添加到运行时库的结束过程表中 addr 函数 返回指定对象的地址 adjustlinebreaks 函数 将给定字符串的行分隔符调整为cr/lf序列 align 属性…...

    2023/3/28 17:04:28
  3. go 包init初始化顺序

    文件结构如下 假设各个go文件都有init函数 执行顺序是 a的init、b的init、c的init ,按文件名排序 单文件内init执行顺序是书写顺序 多个包引用同一个包的话,被引用包init只执行一次,即所有包init都只执行一次...

    2023/3/28 17:04:28
  4. Asp.net解析HTML并利用XPATH分析提取内容

    注:本文源代码点此下载 asp.net解析html并利用xpath分析提取内容 html解析器有很多种,最常用的是htmlagilitypack和sgmlreader(http://sourceforge.net/projects/dekiwiki/files/sgmlreader/)。 这里使用的是htmlagilitypack: 下载地址:http://htmlagilitypack.c…...

    2023/3/28 17:04:27
  5. swaggo生成api

    swaggo工具使用 swaggo工具使用 -g 多个存放api的go文件,空格隔开 -d 必须选择api文件存放的目录,不写的话则会从根目录下找main.go //意思是从api目录下扫描api1.go、api2.go文件,默认生成docs目录 swag init -g api1.go api2.go -d api …...

    2023/3/28 17:04:27
  6. HTML5学习笔记简明版(4):新元素之video,audio,meter,datalist,keygen,output

    注:本文源代码点此下载 video 通过标签,我们可以抛弃最近不怎么讨好的flash,直接在页面中播放视频文件。视频文件自然是最符合语义化的文件格式,但该元素标签同样支持音频与图片。 过去(及目前),我们通常要使用类似下面这样繁冗丑陋的代码来将视频放置在页面中,但…...

    2023/3/28 17:04:26
  7. go 关于接口的实现

    package mainimport "fmt"type I interface {Io() error }type A struct { }func (r *A) Io() error {fmt.Println("a i")return nil }type B struct {*A //使用匿名方式,才会隐式实现A所继承的接口 }//自定义实现接口,类似于重写 f…...

    2023/3/28 17:04:26
  8. AJAX基础教程

    注:本文源代码点此下载 这篇文章将带您浏览整个ajax的基本概貌,并展示两个简单的例子让您轻松上路. 什么是 ajax? ajax (异步 javascript 和 xml) 是个新产生的术语,专为描述javascript的两项强大性能.这两项性能在多年来一直被网络开发者所忽略,直到最近gmail, …...

    2023/3/28 17:04:25
  9. go 断言 官方教程翻译

    原文 Type assertions A type assertion provides access to an interface values underlying concrete value. t : i.(T) This statement asserts that the interface value i holds the concrete type T and assigns the underlying T value to the variable t. If i do…...

    2023/3/28 17:04:24
  10. bingoideas

    注:本文源代码点此下载 一、什么是反射: 反射的概念是由smith在1982年首次提出的,主要是指程序可以访问、检测和修改它本身状态或行为的一种能力。这一概念的提出很快引发了计算机科学领域关于应用反射性的研究。它首先被程序语言的设计领域所采用,并在lisp和面向对…...

    2023/3/28 17:04:24
  11. nginx 代理多个服务共用80端口

    修改配置 server {listen 80;server_name www.domain.cn;location / {proxy_set_header X-Real-IP $remote_addr;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;proxy_set_header Host $http_host; proxy_redirect off;proxy_pass http://127.0.0.1:80…...

    2023/3/28 17:04:23
  12. 如何在 万一的 Delphi 博客 回复自动格式化的着色代码?

    注:本文源代码点此下载 #35楼 2010-12-08 10:48 yangxs 清风网络在大量盗用您的贴子!!满屏的广告,也没有注明帖子来源。看着就生气。要不要投诉他啊。 http://www.vipcn.com/chengxukaifa/delphi/delphi_1.html 回复 引用 查看 #36楼[楼主] 2010-12-08 22:20 万…...

    2023/3/28 17:04:22
  13. go.mod 包引入几种方式

    修改go.mod中的require几种方式 包地址 12位commit ID github.com/... 55974d0fd109 引入最新版本 github.com/... latest 引入指定版本 github.com/... v版本号 示例 require (github.com/casbin/casbin/v2 v2.0.2github.com/fastly/go-…...

    2023/3/28 17:04:22
  14. qingyezhu

    注:本文源代码点此下载 1、main方法是怎么写的 public static void main(string[] args) { } 2、变量的命名规则是怎么样的? 采用驼峰命名法,见名知意,以小写字母开始。 常量命名:全部大写。 方法命名: 小写字母开始,驼峰命名。 类命名:首字母大写。 3、if…...

    2023/3/28 17:04:21
  15. go gin配置websocket(copy直接可用)

    主要依赖 "github.com/gin-gonic/gin" "github.com/gorilla/websocket" websocket.go package serverimport ("errors""github.com/gin-gonic/gin""github.com/go-emix/utils""github.com/gorilla/websocket"…...

    2023/3/28 17:04:21
  16. Delphi WinExec ShellExec 用法介绍

    注:本文源代码点此下载 在windows程序设计中winapi也为我们提供了类似的函数,它们就是winexec()和shellexecute(),下面就来讨论一下这两个函数的用法。 1)winexec() 函数原型: uint winexec(lpcstr lpcmdline,uint ucmdshow); 参数说明:(激活的意思是能接受焦点,…...

    2023/3/28 17:04:20
  17. go 验证码实现

    依赖 "github.com/mojocn/base64Captcha" 官方预览 实现 package utilimport (cp "github.com/mojocn/base64Captcha""image/color""strings" )var captcha *cp.Captchaconst (height 43width 200length 4 )//创建字符串验证码实…...

    2023/3/28 17:04:20
  18. Django与Ajax教程(一)

    注:本文源代码点此下载 原文地址:http://www.willarson.com/blog/?p36 本人英文比较烂,翻译的也不怎么样,大家凑合着看吧。 第一部分:django与ajax:介绍和安装 近来我开始向正在用django开发的一个项目中添加ajax技术,开始有点坎坷。有关于这方面可用的文档资料…...

    2023/3/28 17:04:19
  19. 姬魔恋战纪脚本开发

    码云地址...

    2023/3/28 17:04:18
  20. 清除 go build 缓存,释放空间

    文件位置 C:\Users\用户名称\AppData\Local\go-build 删除掉 go build 文件夹就可以了...

    2023/3/28 17:04:17
  21. html颜色代码对照表

    注:本文源代码点此下载 godwar 今日天氣 转载声明 本 blog 所有文章遵循创作共用版权协议,要求署名、非商业、保持一致。在满足创作共用版权协议的基础上可以随意转载,但请以超链接形式注明出处。 署名-非商业性使用-禁止演绎 2.5 中国大陆 你可以自由复制、发…...

    2023/3/28 17:04:17
  22. jQuery学习笔记:Ajax(一)

    注:本文源代码点此下载 注册用户登录后才能发表评论,请 登录 或 注册,返回博客园首页。 首页博问闪存新闻园子招聘知识库 最新it新闻: ios 5.1 beta3文件预示未来 siri有可能支持 ipad和 ipod touch android平台12月广告浏览份额51.6% 超越ios 测试版ios源代码…...

    2023/3/28 17:04:16
  23. JetBrains IDE 单词拼写自定义(强迫症福音)

    修改配置项如图 accepted 单词可以随便自定义,小写即可...

    2023/3/28 17:04:15
  24. sxliupeng

    注:本文源代码点此下载 扩展体验html5草案的前身名为web applications 1.0。於2004年被whatwg提出,於2007年被w3c接纳,并成立了新的html工作团队。在2008年1月22日,第一份正式草案已公布,预计将在2010年9月正式向公众推荐。whatwg表示该规范是目前正在进行的工作,仍…...

    2023/3/28 17:04:15
  25. go 常用框架或库收集

    任务调度(定时任务)gocron 日志 logrus 日志切分 file-rotatelogs 命令行 cli yaml处理 yaml 打包各平台执行程序 gox 处理excel excelize 爬虫 colly jwt验证 jwt-go 权限 casbin 数据库操作 gorm web路由 gin request req Gui ui walk 只…...

    2023/3/28 17:04:14
  26. AjaxAtlas技术团队下一步活动讨论,请团队成员进来给点意见!

    注:本文源代码点此下载 自ajax&atlas技术团队成立至今,中间夹了个10.1长假,所以虽然引起众多朋友的关注,但是团队内的学习气氛没有成立时浓,收假也一个多星期了,逐渐要进入工作状态了,希望我们的团队也能开展什么活动,使大家能进一步了解和使用这一系列无刷技术…...

    2023/3/28 17:04:14
  27. go reflect Elem() 深入学习

    示例 var r io.Reader os.Stdin // os.Stdin is of type *os.File which implements io.Readerv : reflect.ValueOf(r) // r is interface wrapping *os.File value fmt.Println(v.Type()) // *os.Filev2 : reflect.ValueOf(&r) // pointer passed, will be…...

    2023/3/28 17:04:13
  28. 关于html的框架

    注:本文源代码点此下载 http://soft.westcn.com/xue_yuan/html01_11.htm 欲明白本篇【html剖析】之标记分类请看 【标记一览】。 亦请先明白围堵标记与空标记的分别请看 【html概念】。 ■ 框架概念 : 所谓框架便是网页画面分成几个框窗,同时取得多个 url。只需…...

    2023/3/28 17:04:13
  29. Asp.net Ajax Control Toolkit设计编程备忘录(色眼窥观版)——第3回(UE专辑)

    注:本文源代码点此下载 前言: 色即设——设计,从网页设计的角度出发。因为自己的的特殊性(本身是软件工程师,但是对网页设计却有浓厚的兴趣),所以此系列文章不仅仅从编程角度出发,还将从设计的角度出发来细数ajaxcontroltoolkit系列控件,告诉你这些控件最终的结构表…...

    2023/3/28 17:04:11
  30. yaml 语法注意点

    database: [ {alias: ab,#?会识别不出来,所以要加上引号,单引号或双引号都可以connect: "root:password/test1?charsetutf8&parseTimeTrue&locLocal" }, {alias: bc,connect: root:password/test2?charsetutf8&parseTimeTrue&a…...

    2023/3/28 17:04:11