1.环境

1)服务器是Apache的Tomcat
2)数据库是SQL Server
3)数据库驱动程序在微软官网下载的jar包

2.引入jar包

  在Microsoft官网下载数据库驱动程序Microsoft SQL Server ××××(年份)JDBC Driver ,解压后获得sqljdbc42.jar文件(我解压后是42)。把该文件放到该Web工程的/WEB-INF/lib目录下。

  jsp文件放这里的话:

java sqlserver 实例下载 javaweb sqlserver_学习


  jar包就放这里:

java sqlserver 实例下载 javaweb sqlserver_学习_02

3.配置数据库

   如果你的驱动器配置成功了,但是没连接上数据库的话,可能错误(也不算是错误吧,也就是没配置好)出在数据库中哦(气死我了气死我了,找了半天语言错误,差点连环境变量都改了)。

java sqlserver 实例下载 javaweb sqlserver_数据库_03


   首先要明确,JSP技术是通过“用户名”和“密码”来登录数据库的,无法通过“Windows身份验证”的方式登录,下面的配置就是为了允许“用户名”和“密码”登录,这次配置还是要用“Windows身份验证”的方式登录的,如下图。

java sqlserver 实例下载 javaweb sqlserver_java sqlserver 实例下载_04

1)建立数据库,创建表,插入几条数据
2)更改超级用户sa的属性

①安全性->登录名->sa->属性->常规:更改密码为“123456”,选择“强制实施密码策略”,点击“确定”

java sqlserver 实例下载 javaweb sqlserver_服务器_05


②安全性->登录名->sa->属性->状态:授予,启用,点击“确定”

java sqlserver 实例下载 javaweb sqlserver_sql_06

3)更改服务器的属性

java sqlserver 实例下载 javaweb sqlserver_数据库_07


   安全性这里选择第二个“SQL SERVER和WINDOWS身份验证模式”,点击“确定”:

java sqlserver 实例下载 javaweb sqlserver_服务器_08

4)重新启动服务器

   这步一定要有哦,不是重新连接,是重新启动!启动!启动!!!

java sqlserver 实例下载 javaweb sqlserver_服务器_09

4.连接数据库

   用到了JSP的内置对象request,去接收表单提交的表名、列名。下面只进行了某表,某列的查询操作:

<%@ page language="java" contentType="text/html; charset=utf-8"   pageEncoding="utf-8"%>
<%@ page  import="java.sql.*" %>

<html>

	<head>
		<title> </title>

	</head>
	<body>
		<form action="" method="get" name="form"  >
			<fieldset >
				<legend>高校信息管理系统-查询操作</legend>
				<br>
			<label>请输入基本表、视图的名称:
				<input type="text" name="table" />
			</label><br /><br>
			<label>
				请输入列名:
				<input type="text" name="column" />
			</label><br />
			<br /><br />
			<input type="submit" value="提交" name="submit"/>   
			</fieldset>
		</form><br><br>
		<%
		String table=request.getParameter("table");
		String column=request.getParameter("column");
		if(table==null)
		//防止接收到的为空串
		   { table="";   }
		if(column==null)
		   { column="";   }
		%>
		<%
		PreparedStatement ps = null;
		    Connection ct = null;
		    ResultSet rs = null;
		    String url = "jdbc:sqlserver://localhost:1433;DatabaseName=DBTest";//我的数据库名
		    String user="sa";  //超级管理员sa
		       String password="123456";  //密码
		    try {
		        //1.加载驱动
		        Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
		        out.println("加载驱动成功!"+"<br>");
		    }catch(Exception e) {
		        e.printStackTrace();
		        out.println("加载驱动失败!");
		    }
		    try {  
		        //2.连接
		        ct=DriverManager.getConnection( url,user,password);
		       out.println("连接数据库成功!"+"<br>");
		    }catch(Exception e) {
		        e.printStackTrace();
		       out.println("连接数据库失败!");
		    }
		    	    
		    //out.println("select * from TB_Student_Info"+"<br>");    
		    /*尝试查询数据库*/
		    try{
		    	Statement stmt = ct.createStatement();
		    	String sql = "select * from "+table;
		    	// 执行数据库查询语句
		        rs = stmt.executeQuery(sql);
		        while (rs.next()) {
		            String id = rs.getString(column);		            
		            out.println("rusult:" + id +"<br>");
		        }
		        if (rs != null) {
					//关闭数据库释放资源
		            rs.close();
		            rs = null;
		        }
		        if (stmt != null) {
		            stmt.close();
		            stmt = null;
		        }
		        if (ct != null) {
		            ct.close();
		            ct = null;
		        }
		    }
		    catch (SQLException e) {
		        e.printStackTrace();
		        System.out.println("数据库连接失败");
		    }
		%>		
	</body>
</html>

  结果呢,就是这个样子的(当然还要连接服务器tomcat,我就不写了),表单提交给本页面了,所以数据都在一个页面展示:

java sqlserver 实例下载 javaweb sqlserver_学习_10