java中的jsp访问并读取mysql或者mssqlserver数据库中的数据(随笔)

本文介绍如何在Java的JSP中连接并读取MySQL或MSSQL Server数据库。首先确保安装了MySQL数据库和Tomcat,然后配置Tomcat路径,创建classes文件夹存放servlet。接着建立数据库javaweb,编写JSP代码进行连接。若要访问MSSQL Server,需安装SQL Server 2005以上版本,设置数据库studentdb并启用混合模式,设定sa密码。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

首先准备工作是要安装好数据库mysql,mysql的安装较为简单,此处就介绍了,并登陆,默认密码一般为空,当然你也可以在安装过程中更改密码!

然后要安装tomcat,并再建立工程的路径中修改路径为tomcat安装的默认路径C:\Program Files (x86)\Apache Software Foundation\Tomcat 6.0\webapps\ROOT

可以在root文件夹的web-info下再建立一个classes文件夹,以此存放一些servlet文件,并在默认指向文件中选择到web-info文件夹下的clases文件夹

--大体可以参考下图:



然后建立数据库javaweb

create database javaweb;

--使用javaweb为当前数据库
use javaweb;

--创建表
create table user
(userid int  ,
 username varchar(20),
 password varchar(20)
 )

--插入数据(数据随意举例)

insert into user
select 1,'Sam','abc123' union all
select 2,'Tom','abc456'

然后在eclipse或者myeclipse中建立web工程时,并添加jar包,连接mysql只要添加mysql的jar包,如果要连接sqlserver的话也要添加sqlserver的jar包


上述工作做好后,可以新建jsp文件

代码如下:

<%@ page language="java" contentType="text/html;charset=gb2312"%>   //指定页面属性 
<%@ page import="java.sql.*" %>  //导入sql语言包
<html>
     <head><title>查询所有用户</title></head>
     <body>
          <%
              String url= "jdbc:mysql://localhost:3306/javaweb";   //连接mysql中的javaweb数据库  3306是默认端口号
              String user="root";   //数据库用户名是数据库中的一个内置账户
              String password="root";   //此处mysql的密码我设置也为root
              Connection conn=null;
              try{
                   Class.forName("com.mysql.jdbc.Driver");   //注册JDBC驱动程序
                   conn=DriverManager.getConnection(url,user,password); //连接mysql数据库
                 }
              catch(ClassNotFoundException e)
              {
                  out.println("找不到驱动类");
              }
              catch(SQLException e)
              {
                  out.println("连接MySql数据库失败");
              }
             
             try
             {
                Statement stmt=conn.createStatement();               //创建语句对象Statement
                String queryAll="select * from user where userid>6 ;"    ;  //查询user表中满足条件的所有记录
                ResultSet rs=stmt.executeQuery(queryAll)  ;  
                ResultSetMetaData rsmd=rs.getMetaData();         //创建ResultSetMetaData获得列属性
                for(int i=1;i<=rsmd.getColumnCount();i++)       //getColumnCount()用于获取列数
                {
                   out.print(rsmd.getColumnName(i)+"\t");       //getColumnName()用于获取列名
                }
               
                out.print("<br>");
                while(rs.next())   
                {
                   int userid=rs.getInt(1);              //获取第一个字段userid值
                   String username=rs.getString(2);      //获取第二个字段
                   String userpassword=rs.getString(3);  //获得第三个字段
                   
                   out.println(userid+"\t");             //输出用户id信息
                   out.println(username+"\t");           //输出用户名信息
                   out.println(userpassword+"<br>");     //输出用户密码
               }
           }
                 catch(SQLException e)
                 {
                     out.println("查询所有用户失败!");
                 }
             
          %>
     </body>
</html>
然后可以在浏览器中去调试http://localhost:3306/jsp文件名    --这个根据情况变化如果建立一个文件夹 可以是: 文件夹名/jsp文件名


如果要在java中访问mssqlserver的话,再上述设置好的基础上,稍作变化


此不前提要有 安装好sqlserver2005及以上版本,并设置好的数据库studentdb,并开启了混合登陆模式,设置好内置系统管理员sa的密码为123456

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

import com.mysql.jdbc.ResultSet;
import com.mysql.jdbc.Statement;

public class DBConnection {
	public static void main(String[] args) throws SQLException  {
		String url="jdbc:sqlserver://localhost:1433;DatabaseName=stuinfo";
		String user="sa";            //sa是mssqlserver内置管理员
		String password="123456";   //sa的密码
		Connection conn=null;      //连接接口初始化
		try{
			
			Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");  //注册sqlserver驱动程序
			conn=DriverManager.getConnection(url,user,password);      //获取连接接口
			String str="select * from student where ssex='男'";   //定义查询语句
			java.sql.Statement stmt=conn.createStatement();   //创建语句对象
			
			java.sql.ResultSet rs=stmt.executeQuery(str);  //获取查询结果集
			
			java.sql.ResultSetMetaData rsmd=rs.getMetaData();  //定义元数据属性对象
			
			for(int i=1;i<=rsmd.getColumnCount();i++)  
			{
				System.out.print(rsmd.getColumnName(i)+"\t");  //循环获取列名称
			}
			
			System.out.println();  //换行
			
			while(rs.next())   //循环往下读取
			{
				for(int i=1;i<=rsmd.getColumnCount();i++)  
				{
					System.out.print(rs.getString(i)+"\t");  //循环获取每一行的数据
				}
				System.out.println();
			}
		}
		catch(ClassNotFoundException c){
			System.out.print(c.getMessage());
		}
		

	}

}






评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值