JSP数据库连接方式总结

现在有好多初学jsp的网友经常会问数据库怎么连接啊,怎么老出错啊?所以我集中的在这写篇文章供大家参考,其实这种把数据库逻辑全部放在jsp里未必是好的做法,但是有利于初学者学习,所以我就这样做了,当大家学到一定程度的时候,可以考虑用MVC的模式开发。在练习这些代码的时候,你一定将jdbc的驱动程序放到服务器的类路径里,然后要在数据库里建一个表test,有两个字段比如为test1,test2,可以用下面SQL建
create table test(test1 varchar(20),test2 varchar(20)
然后向这个表写入一条测试纪录
那么现在开始我们的jsp和数据库之旅吧。
一、jsp连接Oracle8/8i/9i数据库(用thin模式)
testoracle.jsp如下:
<%@ page contentType="text/html;charset=gb2312"%>
<%@ page import="java.sql.*"%>
<html>
<body>
<%Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();
String url="jdbc:oracle:thin:@localhost:1521:orcl";
//orcl为你的数据库的SID
String user="scott";
String password="tiger";
Connection conn= DriverManager.getConnection(url,user,password);
Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
String sql="select * from test";
ResultSet rs=stmt.executeQuery(sql);
while(rs.next()) {%>
您的第一个字段内容为:<%=rs.getString(1)%>
您的第二个字段内容为:<%=rs.getString(2)%>
<%}%>
<%out.print("数据库操作成功,恭喜你");%>
<%rs.close();
stmt.close();
conn.close();
%>
</body>
</html>
二、jsp连接Sql Server7.0/2000数据库
testsqlserver.jsp如下:
<%@ page contentType="text/html;charset=gb2312"%>
<%@ page import="java.sql.*"%>
<html>
<body>
<%Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance();
String url="jdbc:microsoft: sqlserver://localhost:1433;DatabaseName=pubs";
//pubs为你的数据库的
String user="sa";
String password="";
Connection conn= DriverManager.getConnection(url,user,password);
Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
String sql="select * from test";
ResultSet rs=stmt.executeQuery(sql);
while(rs.next()) {%>
您的第一个字段内容为:<%=rs.getString(1)%>
您的第二个字段内容为:<%=rs.getString(2)%>
<%}%>
<%out.print("数据库操作成功,恭喜你");%>
<%rs.close();
stmt.close();
conn.close();
%>
</body>
</html>
三、jsp连接DB2数据库
testdb2.jsp如下:
<%@ page contentType="text/html;charset=gb2312"%>
<%@ page import="java.sql.*"%>
<html>
<body>
<%Class.forName("com.ibm.db2.jdbc.app.DB2Driver ").newInstance();
String url="jdbc: db2://localhost:5000/sample";
//sample为你的数据库名
String user="admin";
String password="";
Connection conn= DriverManager.getConnection(url,user,password);
Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
String sql="select * from test";
ResultSet rs=stmt.executeQuery(sql);
while(rs.next()) {%>
您的第一个字段内容为:<%=rs.getString(1)%>
您的第二个字段内容为:<%=rs.getString(2)%>
<%}%>
<%out.print("数据库操作成功,恭喜你");%>
<%rs.close();
stmt.close();
conn.close();
%>
</body>
</html>
四、jsp连接Informix数据库
testinformix.jsp如下:
<%@ page contentType="text/html;charset=gb2312"%>
<%@ page import="java.sql.*"%>
<html>
<body>
<%Class.forName("com.informix.jdbc.IfxDriver").newInstance();
String url =
"jdbc:informix- sqli://123.45.67.89:1533/testDB:INFORMIXSERVER=myserver;
user=testuser;password=testpassword";
//testDB为你的数据库名
Connection conn= DriverManager.getConnection(url);
Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
String sql="select * from test";
ResultSet rs=stmt.executeQuery(sql);
while(rs.next()) {%>
您的第一个字段内容为:<%=rs.getString(1)%>
您的第二个字段内容为:<%=rs.getString(2)%>
<%}%>
<%out.print("数据库操作成功,恭喜你");%>
<%rs.close();
stmt.close();
conn.close();
%>
</body>
</html>
五、jsp连接Sybase数据库
testmysql.jsp如下:
<%@ page contentType="text/html;charset=gb2312"%>
<%@ page import="java.sql.*"%>
<html>
<body>
<%Class.forName("com.sybase.jdbc.SybDriver").newInstance();
String url =" jdbc:sybase:Tds:localhost:5007/tsdata";
//tsdata为你的数据库名
Properties sysProps = System.getProperties();
SysProps.put("user","userid");
SysProps.put("password","user_password");
Connection conn= DriverManager.getConnection(url, SysProps);
Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
String sql="select * from test";
ResultSet rs=stmt.executeQuery(sql);
while(rs.next()) {%>
您的第一个字段内容为:<%=rs.getString(1)%>
您的第二个字段内容为:<%=rs.getString(2)%>
<%}%>
<%out.print("数据库操作成功,恭喜你");%>
<%rs.close();
stmt.close();
conn.close();
%>
</body>
</html>
六、jsp连接MySQL数据库
testmysql.jsp如下:
<%@ page contentType="text/html;charset=gb2312"%>
<%@ page import="java.sql.*"%>
<html>
<body>
<%Class.forName("org.gjt.mm.mysql.Driver").newInstance();
String url ="jdbc: mysql://localhost/softforum?user=soft&password=soft1234&useUnicode=true&characterEncoding=8859_1"
//testDB为你的数据库名
Connection conn= DriverManager.getConnection(url);
Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
String sql="select * from test";
ResultSet rs=stmt.executeQuery(sql);
while(rs.next()) {%>
您的第一个字段内容为:<%=rs.getString(1)%>
您的第二个字段内容为:<%=rs.getString(2)%>
<%}%>
<%out.print("数据库操作成功,恭喜你");%>
<%rs.close();
stmt.close();
conn.close();
%>
</body>
</html>
七、jsp连接PostgreSQL数据库
testmysql.jsp如下:
<%@ page contentType="text/html;charset=gb2312"%>
<%@ page import="java.sql.*"%>
<html>
<body>
<%Class.forName("org.postgresql.Driver").newInstance();
String url ="jdbc: postgresql://localhost/soft"
//soft为你的数据库名
String user="myuser";
String password="mypassword";
Connection conn= DriverManager.getConnection(url,user,password);
Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
String sql="select * from test";
ResultSet rs=stmt.executeQuery(sql);
while(rs.next()) {%>
您的第一个字段内容为:<%=rs.getString(1)%>
您的第二个字段内容为:<%=rs.getString(2)%>
<%}%>
<%out.print("数据库操作成功,恭喜你");%>
<%rs.close();
stmt.close();
conn.close();
%>
</body>
</html>

转载于:https://www.cnblogs.com/niceboy/articles/525210.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/300868.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Java中Filter的理解

Filter工作原理当客户端发出Web资源的请求时&#xff0c;Web服务器根据应用程序配置文件设置的过滤规则进行检查&#xff0c;若客户请求满足过滤规则&#xff0c;则对客户请求&#xff0f;响应进行拦截&#xff0c;对请求头和请求数据进行检查或改动&#xff0c;并依次通过过滤…

一句话征服了美国人,这位饱受争议的数学博士竟从未上过学?

全世界只有3.14 % 的人关注了青少年数学之旅前两天&#xff0c;有位不愿意透露姓名的模友问了超模君一个问题&#xff1a;虽然这个问题超模君已经解答过无数遍了&#xff0c;但看到模友如此虔诚的态度&#xff0c;超模君决定今天再给模友们讲一个犹太小伙用数学征服美国军官的故…

使用 C# 开发浏览器扩展

使用 C# Blazor 开发浏览器扩展Intro前段时间听了 Justin 大佬分享的 Blazor 开发浏览器扩展&#xff0c;觉得很不错&#xff0c;C# 可以做更多有趣的事情了&#xff0c;很多需要在服务器端做的事情可能就可以在客户端里实现了&#xff0c;而且高度可以复用已有的 C# 代码&…

一个设置ip的vbs脚本

经常在两个网段间转换 常改ip&#xff0c;找了一个改ip的脚本稍微改了一下&#xff0c;让他适合我的情况&#xff08;自动判断我的ip&#xff09;strComputer "."SetobjWMIService GetObject("winmgmts:\\"&strComputer &"\root\cimv2")…

心动的本质是什么_《心动的信号3》:在“烟火气”里嗑糖,素人恋爱究竟有多上头?...

文 | 土豆2018年&#xff0c;一档画风清新&#xff0c;以素人恋爱为主体、辅之以明星观察为核心的恋爱社交真人秀节目&#xff0c;走红于市场。彼时国内综艺市场&#xff0c;尚且还处于竞技类真人秀、偶像综艺的爆发期——《心动的信号》播出以后&#xff0c;不仅成功开启了国内…

android 如何动态设置margin,Android 动态设置margin

android的view中有setPadding&#xff0c;但是没有直接的setMargin方法。如果要在代码中设置该怎么做呢&#xff1f;可以通过设置view里面的LayoutParams设置&#xff0c;而这个LayoutParams是根据该view在不同的GroupView而不同的。布局文件如下:xmlns:tools"http://sche…

公司服务器iSCSI网络硬盘连接故障

今天检查备份服务器工作状态&#xff0c;发现iSCSI硬盘连接出现了故障。然后刷新了一下系统状态&#xff0c;发现过了几秒钟后又重新连接上了。心里很疑惑&#xff0c;于是开始检查服务器日志。发现在9月13日凌晨4点20分左右有两个来源为l2nd的消息。稍前的一个信息告知网络控制…

老是担心数学学不好?是因为你的数学老师不是爱因斯坦!

各位模友&#xff0c;大家好我是小木相信上学的时候&#xff0c;数学对于很多人来说&#xff0c;无疑是个坑&#xff01;好不容易毕业了&#xff0c;好奇又好学的小表妹每次都能完美地引起小木的心酸历程。就在小木一边回忆起自己的心酸历程的同时&#xff0c;不禁感叹&#xf…

创业95%失败不是因项目本身

95%的人想过个人创业&#xff1b;95%的人一直只是停留在想象的阶段&#xff1b;95%的人创业失败&#xff1b;95%的失败不是因为项目本身的问题。 多年以前&#xff0c;就曾有句著名的口号&#xff1a;“十亿人民九亿商&#xff0c;还有一亿要开张。”中国人的个人创业意识普及…

oracle 产看执行计划_ODBA 技能SPM计划

OBA技能1-获取执行计划OBA技能2-执行计划顺序OBA技能&#xff13;-执行计划顺序表连接ODBA 技能&#xff14;实战执行计划ODBA 技能5 固定执行计划因为每次统计信息作业在收集完信息后&#xff0c;会触发ACS自适应游标管理程序&#xff0c;进行对绑定变量的窥探工作&#xff0c…

android动画设置的单位,Kotlin语言入门—实现单位转换,view设置,动画等

dp转换为px在android开发中&#xff0c;dp sp px之间的转换是不可避免的&#xff0c;在使用java语言开发时&#xff0c;往往会做个工具类进项转化。这样的工具类在网上很多&#xff0c;这里就不在展示了。如果使用Kotlin语言开发&#xff0c;则可以通过通过Extension来优雅的解…

微软面向初学者的机器学习课程:1.1-机器学习介绍

写在前面&#xff1a;最近在参与microsoft/ML-For-Beginners的翻译活动&#xff0c;欢迎有兴趣的朋友加入&#xff08;https://github.com/microsoft/ML-For-Beginners/issues/71&#xff09;机器学习介绍![机器学习&#xff0c;人工智能&#xff0c;深度学习-有什么区别?](ht…

margin-top绑架父节点问题的分析

转载至&#xff1a;http://www.benben.cc/blog/?p98 现象&#xff1a; 当两个空的块级元素嵌套时&#xff0c;如果内部的块设置有margin-top属性&#xff0c;而且父元素没有下边解决方法所述的特征&#xff0c;那么内部块的margin-top属性会绑架父元素&#xff08;即将margin-…

遭央视曝光的“AI算命”,背后竟然隐藏了一个价值千亿的市场!?

全世界只有3.14 % 的人关注了青少年数学之旅还记得儿时算命先生曾对我说&#xff1a;等你25岁那年&#xff0c;会黄袍加身&#xff0c;每天与大鱼大肉为伍。如今眼看着25逐步逼近&#xff0c;数据汪看到美团的外卖小哥都有种莫名的“亲切感”。爆红的“AI算命”言归正传&#x…

OnIntialDialog() (Dialog应用)和 OnIntialUpdate(View应用)的 程序起始点

Dialog为基的应用框架的程序的起始点在OnIntialDialog()FormView为基的应用框架的程序起始点在OnIntialUpdate() 把 需要起始就装入的代码放在 CformView&#xff1a;OnIntialUpdate();GetParentFrame()->RecalcLayout(); Resize ParenttoFit(); 三个语句之后&#xff08;上…

微软面向初学者的机器学习课程:1.2-机器学习的历史

写在前面&#xff1a;最近在参与microsoft/ML-For-Beginners的翻译活动&#xff0c;欢迎有兴趣的朋友加入&#xff08;https://github.com/microsoft/ML-For-Beginners/issues/71&#xff09;机器学习的历史作者Tomomi Imura[1]课前测验[2]在本课中&#xff0c;我们将走过机器学…

android布局中画圆角矩形,Android 自定义View之圆角矩形轨迹图

一、原理说明主要是通过计算轨迹的坐标点加入到集合中&#xff0c;然后对集合进行相应截取&#xff0c;传入canvas中。二、具体代码实现/*** 原理是先通过尺寸把各个轨迹的坐标计算出来&#xff0c;然后再截取相应坐标&#xff0c;进行重绘。** author lz* Time 2019-3-27*/pub…

类QQ右下角弹出框(Qt)

2019独角兽企业重金招聘Python工程师标准>>> 使用Qt写的类QQ右下角弹出框 /***main.cpp */ #include <QtGui/QApplication> #include "dialog.h"int main(int argc, char *argv[]) {QApplication a(argc, argv);Dialog w;w.show();return a.exec()…

实现贝叶斯分类器_机器学习实战项目-朴素贝叶斯

朴素贝叶斯 概述贝叶斯分类是一类分类算法的总称&#xff0c;这类算法均以贝叶斯定理为基础&#xff0c;故统称为贝叶斯分类。本章首先介绍贝叶斯分类算法的基础——贝叶斯定理。最后&#xff0c;我们通过实例来讨论贝叶斯分类的中最简单的一种: 朴素贝叶斯分类。贝叶斯理论 &a…

设计模式(1)

一、 C# 面向对象程序设计复习 点击http://files.cnblogs.com/zhenyulu/CSharp.rar下载&#xff0c;内容包括&#xff1a; 字段与属性.cs 属性、方法作用范围.cs 一加到一百.cs 使用接口排序(2).cs 使用接口排序(1).cs 求质数.cs 冒泡法排序.cs 九九表.cs 静态与非静态…