Derby 数据库

<%@ page language="java" pageEncoding="GB18030"%>
<jsp:directive.page import="org.apache.derby.jdbc.EmbeddedDriver"/>
<jsp:directive.page import="java.sql.DriverManager"/>
<jsp:directive.page import="java.sql.Connection"/>
<jsp:directive.page import="java.sql.Statement"/>
<jsp:directive.page import="java.sql.ResultSet"/>
<jsp:directive.page import="java.sql.SQLException"/>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <title>My JSP 'derby.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">
 <style type="text/css">td, div{font-size:12px; } div{line-height:22px; }</style>
  </head>
 
  <body>
<%
 // 注册 Derby 数据库驱动
 DriverManager.deregisterDriver(new EmbeddedDriver());

 // 获取数据库连接
 Connection conn = DriverManager.getConnection("jdbc:derby:C:\\database_derby;create=true");
 
 // 创建 Statement
 Statement stmt = conn.createStatement();
 
 try{
  // 使用 Statement 对象创建表格
  String sql = (" create table TB_TEST "
     + " ( id integer GENERATED ALWAYS AS IDENTITY (START WITH 1, INCREMENT BY 1), "
     + "   ip varchar(100), "
     + "   host varchar(100), "
     + "   date timestamp, "
     + "   primary key(id) )");

  System.out.println(sql);

  stmt.executeUpdate(sql);   
     
  out.println("<div>表 tb_test 不存在. 创建表 tb_test 成功. </div>");
  System.out.println("<div>表 tb_test 不存在. 创建表 tb_test 成功. </div>");
  
 }catch(Exception e){
  out.println("<div>表 tb_test 存在. </div>");
  System.out.println("<div>" + e.getMessage() + "</div>");
 }
 
 try{
  // 插入一条数据
  int rows = stmt.executeUpdate(" insert into tb_test ( ip, host, date ) "
     + " values ('" + request.getRemoteAddr() + "', '" + request.getServerName() + "', current_timestamp ) ");
     
  out.println("<div>新插入 " + rows + " 行数据. </div>");
  System.out.println("<div>新插入 " + rows + " 行数据. </div>");
 }catch(Exception e){
  out.println("<div>插入数据失败。原因:" + e.getMessage() + ". </div>");
  System.out.println("<div>插入数据失败。原因:" + e.getMessage() + ". </div>");
 }
 
 // 获取所有记录
 ResultSet rs = null;
 
 try{
  rs = stmt.executeQuery(" select * from tb_test ");
 }catch(Exception e){
  out.println("<div>数据失败。原因:" + e.getMessage() + ". </div>");
 }
 
 out.println("<table border=1>");
 out.println(" <tr>");
 out.println("  <td width=100 align=center>访问次序</td>");
 out.println("  <td width=200 align=center>访问者 IP 地址</td>");
 out.println("  <td width=200 align=center>使用的域名</td>");
 out.println("  <td width=200 align=center>访问日期</td>");
 out.println(" </tr>");
 // 循环遍历完所有的数据集
 while(rs != null && rs.next()){
  out.println(" <tr>");
  out.println("  <td align=center>" + rs.getInt("id") + "</td>");
  out.println("  <td align=center>" + rs.getString("ip") + "</td>");
  out.println("  <td align=center>" + rs.getString("host") + "</td>");
  out.println("  <td align=center>" + rs.getTimestamp("date") + "</td>");
  out.println(" </tr>");
 }
 out.println("</table>");
 
 if(rs != null)
  rs.close();
 if(stmt != null)
  stmt.close();
 if(conn != null)
  conn.close();
 
%>
  </body>
</html>




import org.apache.derby.jdbc.EmbeddedDriver;
import java.sql.DriverManager;
import java.sql.Connection;
import java.sql.Statement;
import java.sql.ResultSet;
import java.sql.SQLException;

public class Test {
 public static void main(String args[]) throws SQLException{
  // 注册 Derby 数据库驱动
  DriverManager.deregisterDriver(new EmbeddedDriver());

  // 获取数据库连接
  Connection conn = DriverManager.getConnection("jdbc:derby:C:\\database_derby;create=true");
  
  // 创建 Statement
  Statement stmt = conn.createStatement();
  
  try{
   // 使用 Statement 对象创建表格
   String sql = (" create table TB_TEST "
      + " ( id integer GENERATED ALWAYS AS IDENTITY (START WITH 1, INCREMENT BY 1), "
      + "   ip varchar(100), "
      + "   host varchar(100), "
      + "   date timestamp, "
      + "   primary key(id) )");

   System.out.println(sql);

   stmt.executeUpdate(sql);   
      
   //out.println("<div>表 tb_test 不存在. 创建表 tb_test 成功. </div>");
   System.out.println("\n表 tb_test 不存在. 创建表 tb_test 成功.\n");
   
  }catch(Exception e){
   //out.println("<div>表 tb_test 存在. </div>");
   System.out.println("\n" + e.getMessage() + "\n");
  }
  
  try{
   // 插入一条数据
   int rows = stmt.executeUpdate(" insert into tb_test ( ip, host, date ) "
      + " values ('" + "request.getRemoteAddr" + "', '" + "request.getServerName" + "', current_timestamp ) ");
      
   //out.println("<div>新插入 " + rows + " 行数据. </div>");
   System.out.println("<div>新插入 " + rows + " 行数据. </div>");
  }catch(Exception e){
   //out.println("<div>插入数据失败。原因:" + e.getMessage() + ". </div>");
   System.out.println("<div>插入数据失败。原因:" + e.getMessage() + ". </div>");
  }
  
  // 获取所有记录
  ResultSet rs = null;
  
  try{
   rs = stmt.executeQuery(" select * from tb_test ");
  }catch(Exception e){
   System.out.println("<div>数据失败。原因:" + e.getMessage() + ". </div>");
  }
  
  //out.println("<table border=1>");
  //out.println(" <tr>");
  //out.println("  <td width=100 align=center>访问次序</td>");
  System.out.println("\t访问次序\t");
  System.out.println("\t访问者 IP 地址\t");
  System.out.println("\t使用的域名\t");
  System.out.println("\t访问日期\t");
  System.out.println("\n");
  // 循环遍历完所有的数据集
  while(rs != null && rs.next()){
   System.out.println("\n");
   System.out.println("\t" + rs.getInt("id") + "\t");
   System.out.println("\t" + rs.getString("ip") + "\t");
   System.out.println("\t" + rs.getString("host") + "\t");
   System.out.println("\t" + rs.getTimestamp("date") + "\t");
   System.out.println("\n");
  }
  //out.println("</table>");
  
  if(rs != null)
   rs.close();
  if(stmt != null)
   stmt.close();
  if(conn != null)
   conn.close();
  
 }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值