精华内容
下载资源
问答
  • jsp链接数据库

    2012-03-25 00:25:54
    jsp 链接 数据库 一个例子链接数据库 弄个ORCAL的JDBC包即可运行
  • jsp链接数据库验证示例,jsp连接数据库的两种方法
  • ylbtech-JSP-Runoob:JSP 链接数据库 1.返回顶部 1、 JSP连接数据库 本教程假定您已经了解了 JDBC 应用程序的工作方式。在您开始学习 JSP 数据库访问之前,请访问Java MySQL 连接来...
    ylbtech-JSP-Runoob:JSP 链接数据库

     

    1.返回顶部
    1、

    JSP 连接数据库

    本教程假定您已经了解了 JDBC 应用程序的工作方式。在您开始学习 JSP 数据库访问之前,请访问 Java MySQL 连接 来设置相关驱动及配置。

    注意:

    你可以下载本站提供的 jar 包:mysql-connector-java-5.1.39-bin.jar

    下载后把 mysql-connector-java-5.1.39-bin.jar 拷贝到 tomcat 下 lib 目录。

    从基本概念下手,让我们来创建一个简单的表,并在表中创建几条记录。


    创建测试数据

    接下来我们在 MySQL 中创建 RUNOOB 数据库,并创建 websites 数据表,表结构如下:

    CREATE TABLE `websites` (
      `id` int(11) NOT NULL AUTO_INCREMENT,
      `name` char(20) NOT NULL DEFAULT '' COMMENT '站点名称',
      `url` varchar(255) NOT NULL DEFAULT '',
      `alexa` int(11) NOT NULL DEFAULT '0' COMMENT 'Alexa 排名',
      `country` char(10) NOT NULL DEFAULT '' COMMENT '国家',
      PRIMARY KEY (`id`)
    ) ENGINE=InnoDB AUTO_INCREMENT=10 DEFAULT CHARSET=utf8;

    插入一些数据:

    INSERT INTO `websites` VALUES ('1', 'Google', 'https://www.google.cm/', '1', 'USA'), ('2', '淘宝', 'https://www.taobao.com/', '13', 'CN'), ('3', '菜鸟教程', 'http://www.runoob.com', '5892', ''), ('4', '微博', 'http://weibo.com/', '20', 'CN'), ('5', 'Facebook', 'https://www.facebook.com/', '3', 'USA');

    数据表显示如下:




    SELECT操作

    接下来的这个例子告诉我们如何使用JSTL SQL标签来运行SQL SELECT语句:

    <%@ page language="java" contentType="text/html; charset=UTF-8"
        pageEncoding="UTF-8"%>
    <%@ page import="java.io.*,java.util.*,java.sql.*"%>
    <%@ page import="javax.servlet.http.*,javax.servlet.*" %>
    <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
    <%@ taglib uri="http://java.sun.com/jsp/jstl/sql" prefix="sql"%>
     
    <html>
    <head>
    <title>SELECT 操作</title>
    </head>
    <body>
    <!--
    JDBC 驱动名及数据库 URL 
    数据库的用户名与密码,需要根据自己的设置
    useUnicode=true&characterEncoding=utf-8 防止中文乱码
     -->
    <sql:setDataSource var="snapshot" driver="com.mysql.jdbc.Driver"
         url="jdbc:mysql://localhost:3306/RUNOOB?useUnicode=true&characterEncoding=utf-8"
         user="root"  password="123456"/>
     
    <sql:query dataSource="${snapshot}" var="result">
    SELECT * from websites;
    </sql:query>
    <h1>JSP 数据库实例 - 菜鸟教程</h1>
    <table border="1" width="100%">
    <tr>
       <th>ID</th>
       <th>站点名</th>
       <th>站点地址</th>
    </tr>
    <c:forEach var="row" items="${result.rows}">
    <tr>
       <td><c:out value="${row.id}"/></td>
       <td><c:out value="${row.name}"/></td>
       <td><c:out value="${row.url}"/></td>
    </tr>
    </c:forEach>
    </table>
     
    </body>
    </html>

    访问这个JSP例子,运行结果如下:


    INSERT操作

    这个例子告诉我们如何使用JSTL SQL标签来运行SQL INSERT语句:

    <%@ page language="java" contentType="text/html; charset=UTF-8"
        pageEncoding="UTF-8"%>
    <%@ page import="java.io.*,java.util.*,java.sql.*"%>
    <%@ page import="javax.servlet.http.*,javax.servlet.*" %>
    <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
    <%@ taglib uri="http://java.sun.com/jsp/jstl/sql" prefix="sql"%>
     
    <html>
    <head>
    <title>SELECT 操作</title>
    </head>
    <body>
    <!--
    JDBC 驱动名及数据库 URL 
    数据库的用户名与密码,需要根据自己的设置
    useUnicode=true&characterEncoding=utf-8 防止中文乱码
     -->
    <sql:setDataSource var="snapshot" driver="com.mysql.jdbc.Driver"
         url="jdbc:mysql://localhost:3306/RUNOOB?useUnicode=true&characterEncoding=utf-8"
         user="root"  password="123456"/>
    <!--
    插入数据
     -->
    <sql:update dataSource="${snapshot}" var="result">
    INSERT INTO websites (name,url,alexa,country) VALUES ('菜鸟教程移动站', 'http://m.runoob.com', 5093, 'CN');
    </sql:update>
    <sql:query dataSource="${snapshot}" var="result">
    SELECT * from websites;
    </sql:query>
    <h1>JSP 数据库实例 - 菜鸟教程</h1>
    <table border="1" width="100%">
    <tr>
       <th>ID</th>
       <th>站点名</th>
       <th>站点地址</th>
    </tr>
    <c:forEach var="row" items="${result.rows}">
    <tr>
       <td><c:out value="${row.id}"/></td>
       <td><c:out value="${row.name}"/></td>
       <td><c:out value="${row.url}"/></td>
    </tr>
    </c:forEach>
    </table>
     
    </body>
    </html>

    访问这个JSP例子,运行结果如下:


    DELETE操作

    这个例子告诉我们如何使用JSTL SQL标签来运行SQL DELETE语句:

    <%@ page language="java" contentType="text/html; charset=UTF-8"
        pageEncoding="UTF-8"%>
    <%@ page import="java.io.*,java.util.*,java.sql.*"%>
    <%@ page import="javax.servlet.http.*,javax.servlet.*" %>
    <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
    <%@ taglib uri="http://java.sun.com/jsp/jstl/sql" prefix="sql"%>
     
    <html>
    <head>
    <title>SELECT 操作</title>
    </head>
    <body>
    <!--
    JDBC 驱动名及数据库 URL 
    数据库的用户名与密码,需要根据自己的设置
    useUnicode=true&characterEncoding=utf-8 防止中文乱码
     -->
    <sql:setDataSource var="snapshot" driver="com.mysql.jdbc.Driver"
         url="jdbc:mysql://localhost:3306/RUNOOB?useUnicode=true&characterEncoding=utf-8"
         user="root"  password="123456"/>
    
    <!--
    删除 ID 为 11 的数据
     -->
    <sql:update dataSource="${snapshot}" var="count">
      DELETE FROM websites WHERE Id = ?
      <sql:param value="${11}" />
    </sql:update>
    
    <sql:query dataSource="${snapshot}" var="result">
    SELECT * from websites;
    </sql:query>
    <h1>JSP 数据库实例 - 菜鸟教程</h1>
    <table border="1" width="100%">
    <tr>
       <th>ID</th>
       <th>站点名</th>
       <th>站点地址</th>
    </tr>
    <c:forEach var="row" items="${result.rows}">
    <tr>
       <td><c:out value="${row.id}"/></td>
       <td><c:out value="${row.name}"/></td>
       <td><c:out value="${row.url}"/></td>
    </tr>
    </c:forEach>
    </table>
     
    </body>
    </html>

    访问这个JSP例子,运行结果如下:


    UPDATE操作

    这个例子告诉我们如何使用JSTL SQL标签来运行SQL UPDATE语句:

    <%@ page language="java" contentType="text/html; charset=UTF-8"
        pageEncoding="UTF-8"%>
    <%@ page import="java.io.*,java.util.*,java.sql.*"%>
    <%@ page import="javax.servlet.http.*,javax.servlet.*" %>
    <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
    <%@ taglib uri="http://java.sun.com/jsp/jstl/sql" prefix="sql"%>
     
    <html>
    <head>
    <title>SELECT 操作</title>
    </head>
    <body>
    <!--
    JDBC 驱动名及数据库 URL 
    数据库的用户名与密码,需要根据自己的设置
    useUnicode=true&characterEncoding=utf-8 防止中文乱码
     -->
    <sql:setDataSource var="snapshot" driver="com.mysql.jdbc.Driver"
         url="jdbc:mysql://localhost:3306/RUNOOB?useUnicode=true&characterEncoding=utf-8"
         user="root"  password="123456"/>
    
    <!--
    修改 ID 为 3 的名字:菜鸟教程改为 RUNOOB
     -->
    <c:set var="SiteId" value="3"/>
     
    <sql:update dataSource="${snapshot}" var="count">
      UPDATE websites SET name = 'RUNOOB' WHERE Id = ?
      <sql:param value="${SiteId}" />
    </sql:update>
    
    <sql:query dataSource="${snapshot}" var="result">
    SELECT * from websites;
    </sql:query>
    <h1>JSP 数据库实例 - 菜鸟教程</h1>
    <table border="1" width="100%">
    <tr>
       <th>ID</th>
       <th>站点名</th>
       <th>站点地址</th>
    </tr>
    <c:forEach var="row" items="${result.rows}">
    <tr>
       <td><c:out value="${row.id}"/></td>
       <td><c:out value="${row.name}"/></td>
       <td><c:out value="${row.url}"/></td>
    </tr>
    </c:forEach>
    </table>
     
    </body>
    </html>

     

    访问这个JSP例子,运行结果如下:

    2、
    2.返回顶部
     
    3.返回顶部
     
    4.返回顶部
     
    5.返回顶部
    0、
    1、
     
    6.返回顶部
     
    warn 作者:ylbtech
    出处:http://ylbtech.cnblogs.com/
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

    转载于:https://www.cnblogs.com/storebook/p/9596984.html

    展开全文
  • jsp 链接数据库操作源码 详细说明详细说明详细说明详细说明
  • JSP链接数据库(代码优化及JavaBean初尝) 对之前的那个测试代码进行改进,JSP本身是在JS中嵌套Java代码,但是如果项目比较庞大,代码一多,放在一起就看着很繁杂,并且出错修改的话也很麻烦,那么我们就把Java代码...

    JSP链接数据库(代码优化及JavaBean初尝)

    对之前的那个测试代码进行改进,JSP本身是在JS中嵌套Java代码,但是如果项目比较庞大,代码一多,放在一起就看着很繁杂,并且出错修改的话也很麻烦,那么我们就把Java代码放到.java文件中;
    上代码:
    首先是jsp文件:
    Index.jsp:

    <%@ page language="java" contentType="text/html; charset=UTF-8"
        pageEncoding="UTF-8"%>
    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="UTF-8">
    <title>Insert title here</title>
    </head>
    <body>
    		<form action="check.jsp" method="post">
    		<input type="text" name="uname"><br>
    		<input type="submit" name="提交"><br>
    		</form>
    </body>
    </html>
    

    其次是check.jsp文件:

    <%@ page language="java" contentType="text/html; charset=UTF-8"
        pageEncoding="UTF-8"%>
    
        <%@ page import="SQLweb.*" %><!-- 导包 -->
        <%@ page import="Entity.*" %>
    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="UTF-8">
    <title>Insert title here</title>
    </head>
    <body>
    		<%
    			String names=request.getParameter("uname");
    		//	Person person=new Person(names);//实例化一个Person对象
    			findDao ch=new findDao();
    			int num=1;
    		//	num=ch.checks(person);//获取到返回的结果值;
    			num=ch.checks(names);
    			if(num>0)
    			{
    				out.print("查询成功!");
    			}else if(num==0)
    			{
    				out.print("对不起,查无此人!");
    			}else if(num<0)
    			{
    				out.print("系统异常!");
    			}
    			out.print(num);//用作查看返回的行号
    		%>
    </body>
    </html>
    

    最后在项目目录下的Java Resources下的src下创建java项目
    在这里插入图片描述
    注:对于本次实验,由于是实现查询功能,是对数据库进行动作,那么建议在创建java的时候,对数据库动作的文件名称命名为XxxDao.java;
    findDao.java:

    package SQLweb;
    
    import java.sql.*;
    import Entity.*;
    
    public class findDao {
    //	public int checks(Person person)
    //	{
    	public int checks(String name)
    	{
    		String driver = "com.mysql.cj.jdbc.Driver";
    	       String url = "jdbc:mysql://localhost:3306/zxy?&useSSL=false&serverTimezone=UTF-8&useSSL=false&serverTimezone = GMT";
    	       String username = "root";
    	       String password = "zxy170518.";
    	       Connection connection = null;//链接数据库
    	       PreparedStatement pstmt=null;//执行sql语句 
    	      // Statement stmt=null;
    	       ResultSet rs=null;//存放结果集(查询使用)
    	        try {
    				Class.forName(driver);//建立连接mysql
    				connection=DriverManager.getConnection(url,username,password);
    				if(!connection.isClosed())
    		        {System.out.print("数据库连接成功!");}//验证是否连接成功
    				String sql="select * from tb1 where name = ?";
    				pstmt=connection.prepareStatement(sql);//对sql语句进行预编译		
    		//		String names=request.getParameter("uname");//获取到index中的uname,传递方法是post
    				pstmt.setString(1, name);//对sql语句中的“?”进行定义
    		//		pstmt.setString(1, person.getName());	
    				rs=pstmt.executeQuery();//接收所查询到的结果集
    				int count=0;//判断是否查询成功的变量
    				if(rs.next())
    				{
    					count=rs.getInt(1);//这里要注意一下,这里只是将count获取到rs结果集里面的下标为1的属性的属性值,这个下标为1的对应我的数据库里面是id,所以并不是统计rs里面有多少个结果
    				}
    				return count;
    			} catch (ClassNotFoundException e) {
    				// TODO Auto-generated catch block
    				e.printStackTrace();
    				return -1;//因为有返回值,但是功能代码在try中,所以如果异常,就返回-1即可;
    				
    			}catch(SQLException e)
    	        {
    				e.printStackTrace();
    				return -1;
    	        }finally {
    				try {
    					if(rs!=null)
    					{
    						rs.close();
    					}
    					if(pstmt!=null)
    					{
    						pstmt.close();
    					}
    					if(connection!=null)
    					{
    						connection.close();
    					}
    				}catch(SQLException e)
    				{
    					e.printStackTrace();
    					return -1;
    				}
    			}
    	}
    }
    
    

    这样一来,代码的复杂程度就稍微减小了,并且把jsp和java分开,各司其职,也方便自己查看和修改,需要注意的是,在整个过程中,需要注意导包。
    同时我自己在做的时候,也重新认识到了ResultSet的定义,之前一直认为在做查询功能的时候,ResultSet实例化的对象存放的结果集,在后面我进行判断的时候是直接对结果集的个数进行判断,就直接导致我第一次做的时候进行故意输入错误用户名的时候,一直返回的是-1,一直以为程序有问题,后来才明白虽然是存放的结果,但是不是直接进行对结果集的个数的操作,而是对每一行结果进行操作,比如存放了三个结果,那么本身的光标从最开始的第一行的上面开始往下移动,每指一行就是对应改行的数据。
    但是如果在结果集为空的情况下,我自己做了几次测试,返回值我都不能拿到,按理说应该是为0的,我不知道为什么每次我都拿到的是空的,应该是0。这里就先留一个小问题。

    结果:
    首先看mysql:
    在这里插入图片描述
    接着看第一次和第二次查询:
    1.
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    2.

    再看一下查询失败的:
    在这里插入图片描述
    这里会发现,后面输出了0,但是这个0不是结果集返回到的0,而是我findDao里面返回的count的值,因为count的值本事初始化的时候就是0,由于结果集里面没有东西,返回又为空(但应该是个0,因为i本身getInt返回值就是Int类型),所以在check中的num拿到的实际是count的初始化的值;
    //-----------------------------------------------------------------------------------------------------------------------------------------

    JavaBean:

    JavaBean是一种可重用的Java组件,其本身满足两点:1.public 修饰的类;2.所有的属性都是private 并提供get/set方法;所以JavaBean可以理解为一个Java类;
    JavaBean有两大类:
    i.封装业务逻辑的JavaBean,诸如例子中的findDao这个类,封装查找逻辑;(处理逻辑)
    ii.封装数据的JavaBean,现在进行对数据的封装;(处理数据)
    上代码:
    同样的,现在项目中新建一个包,分开放;
    在这里插入图片描述
    Person.java:

    package Entity;
    
    public class Person //跟数据库的属性一一对应
    {
    	private int id;
    	private String name;
    	public Person()
    	{
    		
    	}
    	public Person(String name)
    	{
    		this.name=name;
    	}
    	public int getId() {
    		return id;
    	}
    	public void setId(int id) {
    		this.id = id;
    	}
    	public String getName() {
    		return name;
    	}
    	public void setName(String name) {
    		this.name = name;
    	}
    }
    

    相比之下索要改动的地方:
    check:
    在这里插入图片描述
    对于findDao:
    把类方法的参数改成Person对象,下面对sql语句的定义改成Person对象.getname()即可;
    结果:
    在这里插入图片描述
    在这里插入图片描述
    同样能够实现;

    总结:

    只是对之前测试代码的一个小优化而已,通过JavaBean实现对代码的分类存储,各司其职,让代码的复用率更高,如Person类后面如果想使用增删改功能也只需实例对象,然后.方法就行。本次的学习过程中也遇到一些小问题,但都不是大问题,最主要的还是ResultSet的定义,在之后的学习过程中,自己会加深对其的理解和学习。
    //----------------------------------------------------------------------------------------------------------------------------------------------
    2019.11.2更新:
    对于之前这个ResultSet,我这个代码在测试的时候,我自己有个误区,结果集的处理上,有一些欠妥,我的逻辑层在处理返回值的时候,我的判断条件为rs.next(),可想而知,如果rs本身就没有数据,那么这个rs.next()的返回值就是false,那肯定进不去啊,但是我的返回值count又是放在这个判断语句块里面的,所以导致我最后实现查不到某项信息的时候,count的值一直没拿到rs返回来的0,导致我以为为空的时候是返回的空而不是0,总的来说还是对ResultSet对象的定义不够清晰导致的。

    展开全文
  • jsp链接数据库方法

    2014-10-29 19:35:41
    JSP连接数据库方法:  一、jsp连接Oracle8/8i/9i数据库(用thin模式) testoracle.jsp如下: String url="jdbc:oracle:thin:@localhost:1521:orcl"; //orcl为你的数据库的SID String user="scott...
    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()) %>
    <%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()) %>
    <%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()) %>
    <%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()) %>
    <%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()) %>
    <%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()) %>
    <%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()) %>
    <%out.print("数据库操作成功,恭喜你\");%>
    <%rs.close();
    stmt.close();
    conn.close();
    %>
    </body>
    </html>    
    展开全文
  • jsp链接数据库代码

    2019-09-15 17:32:28
    链接数据库代码: *" pageEncoding="utf-8"%> String path = request.getContextPath(); String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; %> *"%> ...
    `<br data-filtered="filtered">
    <%@ page language="java" import="java.util.*" pageEncoding="ISO-8859-1"%>
    <%
    String path = request.getContextPath();
    String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
    %>
    
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
      <head>
        <base href="<%=basePath%>">
        
        <title>My JSP 'index.jsp' starting page</title>
    	<meta http-equiv="pragma" content="no-cache">
    	<meta http-equiv="cache-control" content="no-cache">
    	<meta http-equiv="expires" content="0">    
    	<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
    	<meta http-equiv="description" content="This is my page">
    	<!--
    	<link rel="stylesheet" type="text/css" href="styles.css">
    	-->
      </head>
      
      <body>
        This is my JSP page. <br>
      </body>
    </html>
    

    注册页面代码:

    <%@ page language="java" import="java.util.*,java.sql.*" pageEncoding="utf-8"%>
    <%
    String path = request.getContextPath();
    String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
    %>
    <%@ page import="java.sql.*"%>
    <%!
     public static final String DBDRIVER = "com.mysql.jdbc.Driver" ;
     public static final String userName = "root";   //登录的用户名
     public static final String userPasswd = "taizhen";  //登录mysql密码
     public static final String dbName = "test";  //数据库名
     public static final String tableName="user"; //表名
     public static final String DBURL = "jdbc:mysql://localhost:3306/"+dbName+"?user="+userName+"&password="+userPasswd;
    %>
    
    <%
      Connection conn = null ;
      PreparedStatement pstmt = null ;
      ResultSet rs = null ;
      boolean flag = false ; // 表示登陆成功或失败的标记
    %>
    
    <%
    
     String action = request.getParameter("action");
    if(null==action){
    	
    }else{
    	%>
    	 
    	  <%out.println(action); %>
    	 <% 
    	 String name = request.getParameter("username") ; // 接收表单参数
    	 String password = request.getParameter("password") ; // 接收表单参数
    	try{
    		   Class.forName(DBDRIVER) ;
    		   conn = DriverManager.getConnection(DBURL) ;
    		   String sql = "SELECT name,password FROM user WHERE name=? AND password=?" ;
    		   pstmt = conn.prepareStatement(sql) ;
    		   pstmt.setString(1,name) ;
    		   pstmt.setString(2,password) ;
    		   rs = pstmt.executeQuery() ;
    		   while(rs.next()){
    		    // 如果有内容,则此处执行,表示查询出来,合法用户
    		        flag = true ;
    		  }
    		 }catch(Exception e){
    		 }finally{
    		  try{
    		   conn.close() ; // 连接一关闭,所有的操作都将关闭
    		  }catch(Exception e){}
    		 }
    		%>
    		<%out.println(flag); %>
    		 <%out.println(action); %>
    		<%
    
    		 if(flag){
    		 request.getSession().setAttribute("success", "登录");
    		%>
    		  <jsp:forward page="success.jsp"/>
    		<%
    		 }else{  // 登陆失败,跳转到failure.jsp
    			 request.getSession().setAttribute("error", "登录");
    			
    		%> 
    		 <jsp:forward page="error.jsp"/>  
    		<%
    		 }
    }
     
    %>
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
      <head>
        <base href="<%=basePath%>">
        
        <title>My JSP 'login.jsp' starting page</title>
        
    
      </head>
      
      <body>
       <form action="login.jsp" method="post">
    			<input type="hidden" name="action" />
    			用户名:
    			<input type="text" name="username" value="username"/>
    			<br>
    			密码:
    			<input type="password" name="password" value="password"/>
    			<br>
    			<input type="submit" value="login" />
    		</form>
    
      </body>
    </html>
    
    

    链接数据库代码:

    <%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
    <%
    String path = request.getContextPath();
    String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
    %>
    <%@ page import="java.sql.*"%>
    <%!
     public static final String DBDRIVER = "com.mysql.jdbc.Driver" ;
     public static final String userName = "root";   //登录的用户名
     public static final String userPasswd = "taizhen";  //登录mysql密码
     public static final String dbName = "test";  //数据库名
     public static final String tableName="user"; //表名
     public static final String DBURL = "jdbc:mysql://localhost:3306/"+dbName+"?user="+userName+"&password="+userPasswd;
    %>
    
    <%
      Connection conn = null ;
      PreparedStatement pstmt = null ;
      ResultSet rs = null ;
      boolean flag = false ; // 表示登陆成功或失败的标记
    %>
    
    <%
    
         String action = request.getParameter("username");
         if(action!=null){
    
        	 %>
        	 
        	  <%out.println(request.getParameter("password")); %>
        	 <% 
    	 String name = request.getParameter("username") ; // 接收表单参数
    	 String password = request.getParameter("password") ; // 接收表单参数
    	 String linkman=request.getParameter("linkman");
    	 String qq=request.getParameter("qq");
    	
    	try{
    		   Class.forName(DBDRIVER) ;
    		   conn = DriverManager.getConnection(DBURL) ;
    		   String sql = "INSERT INTO user (name, password) VALUES (?,?)";
    		   
    		   pstmt = conn.prepareStatement(sql) ;
    		   pstmt.setString(1,name) ;
    		   pstmt.setString(2,password) ;
    		  
    		   int sql_update = pstmt.executeUpdate();
    		  if(sql_update>0){
    			  flag=true;
    		  }
    		 }catch(Exception e){
    		 }finally{
    		  try{
    		   conn.close() ; // 连接一关闭,所有的操作都将关闭
    		  }catch(Exception e){}
    		 }
    		%>
    		
    	
    		<%
    
    		 if(flag){
    		 request.getSession().setAttribute("success", "注册");
    		%>
    		  <jsp:forward page="success.jsp"/>
    		<%
    		 }else{  // 登陆失败,跳转到failure.jsp
    			 request.getSession().setAttribute("error", "注册");
    			
    		%> 
    		 <jsp:forward page="error.jsp"/>  
    		<%
    		 }
    
         
         }else{}
    %>
    
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
      <head>
     
        
        <title>My JSP 'register.jsp' starting page</title>
        
      </head>
      
      <body>
     
    	<div class="loginbox registbox">
    		
    		<div class="login-content reg-content">
    			<div class="loginbox-title">
    				<h3>注册</h3>
    			</div>
    			<form id="signupForm" action="register.jsp" method="post">
    			
    			<div class="row">
    				<label class="field" for="email">用户名</label>
    				<input type="text"  class="input-text-user noPic input-click" name="username" id="email">
    			</div>
    			<div class="row">
    				<label class="field" for="password">密码</label>
    				<input type="password" value="" class="input-text-password noPic input-click" name="password" id="password">
    			</div>
    			
    			<div class="row">
    				<label class="field" for="contact">联系人</label>
    				<input type="text" value="" class="input-text-user noPic input-click" name="linkman" id="contact">
    			</div>
    			<div class="row">
    				<label class="field" for="company">公司名</label>
    				<input type="text" value="" class="input-text-user noPic input-click" name="company" id="company">
    			</div>
    			<div class="row">
    				<label class="field" for="tel">公司电话</label>
    				<input type="text" value="" class="input-text-user noPic input-click" name="companytel" id="tel">
    			</div>
    			<div class="row">
    				<label class="field" for="qq">QQ</label>
    				<input type="text" value="" class="input-text-user noPic input-click" name="qq" id="qq">
    			</div>
    			
    			<div class="row btnArea">
    				<button class="login-btn" id="submit">注册</button>
    			</div>
    			</form>
    		</div>
    		<div class="go-regist">
    			已有帐号,请<a href="/Demo/login.jsp" class="link">登录</a>
    		</div>
    	</div>
      </body>
    </html>
    

    登录失败代码:

    <%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
    <%
    String path = request.getContextPath();
    String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
    %>
    
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
      <head>
        <base href="<%=basePath%>">
        
        <title>My JSP 'error.jsp' starting page</title>
        
    	
    
      </head>
      
      <body>
        ${sessionScope.error }失败 <br>
      </body>
    </html>
    

    登陆成功代码:

    <%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
    <%
    String path = request.getContextPath();
    String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
    %>
    
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
      <head>
        <base href="<%=basePath%>">
        
        <title>My JSP 'success.jsp' starting page</title>
        
    	
      </head>
      
      <body>
       ${sessionScope.success }成功! <br>
      </body>
    </html>
    
    数据库表:
    Source Server         : localhost_3306
    Source Server Version : 50528
    Source Host           : localhost:3306
    Source Database       : bbs
    
    Target Server Type    : MYSQL
    Target Server Version : 50528
    File Encoding         : 65001
    
    Date: 2016-06-04 09:25:01
    */
    
    SET FOREIGN_KEY_CHECKS=0;
    
    -- ----------------------------
    -- Table structure for tb_user
    -- ----------------------------
    DROP TABLE IF EXISTS `tb_user`;
    CREATE TABLE `tb_user` (
      `id` int(11) NOT NULL AUTO_INCREMENT,
      `username` varchar(255) NOT NULL,
      `password` varchar(255) NOT NULL,
      `linkman` varchar(255) DEFAULT NULL,
      `company` varchar(255) DEFAULT NULL,
      `companytel` varchar(255) DEFAULT NULL,
      `qq` varchar(255) DEFAULT NULL,
      PRIMARY KEY (`id`)
    ) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8;
    
    -- ----------------------------
    -- Records of tb_user
    -- ----------------------------
    INSERT INTO `tb_user` VALUES ('1', 'admin', 'admin', null, null, null, null);
    INSERT INTO `tb_user` VALUES ('2', 'user', 'user', null, null, null, null);`
    

    转载于:https://my.oschina.net/CarrieLiu/blog/1554512

    展开全文
  • jsp链接数据库实现查询功能,通过选择查询条件,将数据库中符合条件的数据显示在表格中
  • jsp页面当中对各种数据库链接的操作配置!
  • <head><title>通过JSP读取数据库中的表</title></head> try { Class.forName("com.mysql.jdbc.Driver"); ////加载数据库驱动 String url = "jdbc:mysql://localhost:3306/csf?serverTimezone=UTC&...
  • jsp链接数据库问题

    2013-12-29 10:20:57
    out.println("数据库连接成功!"); %> </body> </html> 出现的问题为: HTTP Status 500 - type Exception report message description The server encountered an internal ...
  • 连接数据库的时候怎么会老出现500错误,是代码的有错误还是架包的原因
  • public static boolean login(User u){ Boolean a = false; String sql = "select * from user where username=? and userpassword=?"; PreparedStatement pre=null; try { pre = (Tool.getCon())....
  • 里面包含JSP和比较大型的数据库连接的方法,以及注册登陆范例……
  • jsp链接数据库源代码

    2016-06-04 21:35:35
    链接数据库代码: *" pageEncoding="utf-8"%> String path = request.getContextPath(); String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; %> *"%> ! ...
  • 一、jsp连接Oracle8/8i/9i数据库(用thin模式) testOracle.jsp如下: @ page contentType="text/html;charset=gb2312"%> @ page import="java.sql.*"%>  String result = ""; // 查询结果字符串...
  • ![图片说明](https://img-ask.csdn.net/upload/202006/22/1592796801_286476.jpg) 请问各位大佬该怎么解决
  • JSP 链接数据库大全

    2008-06-22 01:38:06
    一、jsp连接Oracle8/8i/9i数据库(用thin模式)    [code="java"] testoracle.jsp如下:            您的第一个字段内容为:  您的第二个字段内容为:          [/code]  ...
  • charset=UTF-8" pageEncoding="UTF-8"%> *"%> <%@ page import="com.mysql.jdbc.Driver" %> <html> <head> 通过JSP读出数据表</title> </head> <body> ("com.mysql.jdbc.Driver"); //驱动程序名 String url = "jdbc...
  • charset=utf-8" pageEncoding="utf-8"%> *" %> <!... 查看页面 ... public static final String DBDRIVER ="org.gjt.mm.mysql.Driver";... public static final String DBPASS="123654789";... public static final ...
  • 一、jsp连接Oracle8/8i/9i数据库(用thin模式) testoracle.jsp如下: String url="jdbc:oracle:thin:@localhost:1521:orcl"; //orcl为你的数据库的SID String user="scott"; String password="tiger...
  • :在你的项目下新建一个测试类:(目的是看数据库是否连上。) 代码如下:   此处的 url 是你数据库放的位置。编码格式为 utf-8 。 user 和密码默认为 root 然后在 mian 函数先调用测试方法,运行程序 ...
  • 关于JSP链接数据库的问题

    千次阅读 2005-04-15 17:29:00
    于是想试试手链接数据库//1.jsp(放在tomcat 5.0的root目录下) String url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=pubs"; //pubs为你的数据库的 String user="sa"; String passwor

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,314
精华内容 525
关键字:

jsp链接数据库