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

来源:互联网 发布:淘宝信用卡支付限额 编辑:程序博客网 时间:2024/06/07 08:18

首先准备工作是要安装好数据库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 userselect 1,'Sam','abc123' union allselect 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());}}}






0 0