我刚开始学习网页制作,觉得jsp很好,决定开始学,可刚开始想要大干一番,缺被一个问题绊住无法继续前进,求求哪位高手指点一下,在下感激不尽啊~
我只是想简单的用Jsp访问sql server,可就是连不上,也没有错误,网上的资粮我几乎看了个便,所有方法都试过了,仍然不见效~
我想先做一个用户登陆界面,用Jsp进行连接并验证数据库中用户信息,这时就出问题了饿~
后来只用Jsp测试连接数据库,好像也没连接上;
下面是我的Jsp代码:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<%@ page contentType="text/html;charset=GB2312"%>
<%@page import="java.sql.*" %>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>JSP Page</title>
</head>
<body>
<%
String suserID,spassword,susername; /* 用来保存在session中*/
suserID="123";
spassword=null; /*在数据库pubs中建立了Users表,
其中有一个用户名是123,密码456。都是Varchar类型*/
session.setAttribute("suserID", suserID);
out.print(session.getAttribute("suserID"));
String sql="select * from Users where userID='"+suserID+"'";
Connection con=null;
Statement stmt=null;
ResultSet rs=null;
try
{
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance();
String url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=pubs";
Connection conn= DriverManager.getConnection(url);
stmt=con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
rs=stmt.executeQuery(sql);
while(rs.next()){
if(suserID.equals(rs.getString("userID")))
session.setAttribute("spassword", rs.getString("password"));
}
}catch(Exception sqlex1)
{System.out.println("数据库连接失败");}finally{
if(con!=null){
try{
con.close();
}catch(SQLException sqlex2){
sqlex2.printStackTrace();
}
}
}
%>
<h1>WELCOME TO VISIT MY WORLD!</h1>
<%
out.print(session.getAttribute("suserID"));
out.print(session.getAttribute("spassword"));
%>
</body>
</html>
</head>
<body>
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
我先启动数据库,然后启动NetBeans和tomcat,最后运行Jsp~tomcat应该没问题 环境变量为D:\apache-tomcat-6.0.24
我的CLASSPATH为.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;D:\Program Files\Microsoft SQL Server JDBC Driver 2.0\sqljdbc_2.0\chs\sqljdbc.jar 网上说要jdbk驱动我下了 其中有两个主要jar文件:
sqljdbc4.jar和sqljdbc.jar
我把他们都复制到java_Home里的bin和tomcat的bin文件夹里了。
我只是想简单的用Jsp访问sql server,可就是连不上,也没有错误,网上的资粮我几乎看了个便,所有方法都试过了,仍然不见效~
我想先做一个用户登陆界面,用Jsp进行连接并验证数据库中用户信息,这时就出问题了饿~
后来只用Jsp测试连接数据库,好像也没连接上;
下面是我的Jsp代码:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<%@ page contentType="text/html;charset=GB2312"%>
<%@page import="java.sql.*" %>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>JSP Page</title>
</head>
<body>
<%
String suserID,spassword,susername; /* 用来保存在session中*/
suserID="123";
spassword=null; /*在数据库pubs中建立了Users表,
其中有一个用户名是123,密码456。都是Varchar类型*/
session.setAttribute("suserID", suserID);
out.print(session.getAttribute("suserID"));
String sql="select * from Users where userID='"+suserID+"'";
Connection con=null;
Statement stmt=null;
ResultSet rs=null;
try
{
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance();
String url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=pubs";
Connection conn= DriverManager.getConnection(url);
stmt=con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
rs=stmt.executeQuery(sql);
while(rs.next()){
if(suserID.equals(rs.getString("userID")))
session.setAttribute("spassword", rs.getString("password"));
}
}catch(Exception sqlex1)
{System.out.println("数据库连接失败");}finally{
if(con!=null){
try{
con.close();
}catch(SQLException sqlex2){
sqlex2.printStackTrace();
}
}
}
%>
<h1>WELCOME TO VISIT MY WORLD!</h1>
<%
out.print(session.getAttribute("suserID"));
out.print(session.getAttribute("spassword"));
%>
</body>
</html>
</head>
<body>
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
我先启动数据库,然后启动NetBeans和tomcat,最后运行Jsp~tomcat应该没问题 环境变量为D:\apache-tomcat-6.0.24
我的CLASSPATH为.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;D:\Program Files\Microsoft SQL Server JDBC Driver 2.0\sqljdbc_2.0\chs\sqljdbc.jar 网上说要jdbk驱动我下了 其中有两个主要jar文件:
sqljdbc4.jar和sqljdbc.jar
我把他们都复制到java_Home里的bin和tomcat的bin文件夹里了。
Connection conn= DriverManager.getConnection(url);
stmt=con.createStatement();
rs=stmt.executeQuery(sql);
一楼说的对:业务逻辑要封装,写在DAO里
什么是业务逻辑:就是客户要处理的请求,就叫业务逻辑
我以前连接不上
老师说要添加进去
结果添加进去就好了
是添加到当前项目里面
我的目录是
D:\workspace\denglu\WebContent\WEB-INF\lib
你添加到相应里面试试~
1,jdbc连接数据库需要的3个jar包在不在lib里面;
2,sql2000sp4补丁打了没?
3,确定sql2000的端口是不1433?
对了,你的链接数据库的登录账户和密码没写