通用数据库操作类及员工信息查询实例

通用数据库操作类及员工信息查询实例

package com.common;
import java.sql.*;
public class DataBaseConn {
public  Connection conn = null;
public void createConn(){
  String url = "jdbc:mysql://localhost:3306/employeeDb"; 
  String username = "root";// 数据库用户名
String password = "root";// 数据库密码
  if(conn == null){
   try{ Class.forName("com.mysql.jdbc.Driver");
     conn = DriverManager.getConnection(url,username,password);
    }catch(Exception e){e.toString();}
  }
} 
public  Connection getConn(){
  	if(conn == null){  createConn();}
  	return conn;
 } 

 public  void closeConn(){
     if(conn != null){
   	try {
    		conn.close();
   	 	conn = null;
   	} catch (Exception e) {   	 e.printStackTrace();   }
     }
 }
 public ResultSet executeQuery(String sql) {
  	ResultSet rs = null;
 	 if (conn == null) {createConn();}
  	try {
 		 Statement stmt = conn.createStatement();
  		 rs = stmt.executeQuery(sql);
  	} catch (Exception e) {   e.printStackTrace();  }
   return rs;
 } 
public void executeUpdate(String sql) {
  if (conn == null) {createConn(); }
       try {  Statement stmt =    conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY);
      stmt.executeUpdate(sql);
     } catch (Exception e) {   e.printStackTrace();  }
 }
}

 

<jsp:useBean id="con" class="com.common.DataBaseConn" scope="page"/>
<%    con.getConn();
     String  sql="select * from  employee_info";
     ResultSet rs= con.executeQuery(sql); 
 %>
<table border='1' width='100%'>
 <tr> <th>雇员号</th> <th>姓名</th> <th>出生日期</th><th >薪水</th></tr>
     <% 
while( rs.next() ) {  out.print("<tr>");
             out.print("<td >"+rs.getString(1)+"</td>"); 
             out.print("<td >"+rs.getString(2)+"</td>");
             out.print("<td >"+rs.getDate("birthday")+"</td>"); 
             out.print("<td >"+rs.getInt("salary")+"</td>");
              out.print("</tr>") ;   }
        out.print("</table>");
        con.closeConn();
    %>

125jz网原创文章。发布者:江山如画,转载请注明出处:http://www.125jz.com/4265.html

(0)
江山如画的头像江山如画管理团队
上一篇 2019年11月26日 下午8:04
下一篇 2019年11月27日 上午8:32

99%的人还看了以下文章

  • 第三课:第一个maven项目Hello Maven

    一、Maven的简单使用 1.1、Maven项目的目录约定 MavenProjectRoot(项目根目录)|—-src|     |—-main|     |         |—-java ——存放项目的.java文件|     |         |—-resources ——存放项目资源文件,如sprin…

    2023年1月27日 编程开发
    8.6K0
  • 跟永哥学MVC:Jsp+Servlet+JavaBean开发后台登录程序

    跟永哥学MVC:Jsp+Servlet+JavaBean开发后台登录程序,125建站网原创,转载请务必注明出版。 Jsp+Servlet+JavaBean开发后台登录程序-实现一 login.html(视图) <form action=”loginServlet” method=”post”> 用户名: <input type=”text”…

    2018年2月22日
    14.7K0
  • 新闻管理系统数据库设计

    新闻管理系统数据库,包含用户表、新闻评论表、管理员表、栏目表、新闻表、评论表、关键字表 每个表的数据字段,数据类型,是否为空,描述,见下表:

    2020年4月11日
    9.7K0
  • 单元测试步骤、单元测试策略,单元测试快速入门教程三

    工作性质不同决定了工作侧重点也不同,因此程序开发人员在单元测试过程中关注更多的是程序代码本身和已经实现的功能。因此,站在他们的角度看,单元测试的过程就是在编写测试方法之前: 首先考虑如何对方法进行测试; 然后编写测试代码; 下一步就是运行某个测试,或者同时运行该单元的所有测试,确保所有测试都通过。 下图从宏观的角度概括了单元测试的工作过程图。 1.单元测试进…

    2018年4月18日
    7.0K0
  • AdaGrad算法—随机梯度下降算法

    AdaGrad算法,它可以根据自变量在每个维度的梯度值的大小来调整各个维度上的学习率,从而避免统一的学习率难以适应所有维度的问题。

    2023年10月9日
    3.5K0
  • String、StringBuffer、StringBuilder的区别?

    String在实例化之后,其内存空间的内容大小是不能够被修改的;而StringBuffer是一个线程安全的可变字符序列,在实例化之后可以动态的修改堆内存中的内容,所以内存长度和大小是可变的;StringBuilder实例化之后内存大小长度也是可变的,不同之处在于StringBuilder不是线程同步,因此操作起来必然比StringBuffer更加高效。

    2018年10月24日
    2.7K0

发表回复

登录后才能评论