zoukankan      html  css  js  c++  java
  • 使用 servlet 连接数据库

    1.项目工程 web.xml 配置

     1 <servlet>
    2 <description>This is the description of my J2EE component</description>
    3 <display-name>This is the display name of my J2EE component</display-name>
    4 <servlet-name>DBServlet</servlet-name>
    5 <servlet-class>org.olive.DBServlet</servlet-class>
    6 <init-param>
    7 <param-name>driverName</param-name>
    8 <param-value>com.microsoft.jdbc.sqlserver.SQLServerDriver</param-value>
    9 </init-param>
    10 <init-param>
    11 <param-name>username</param-name>
    12 <param-value>sa</param-value>
    13 </init-param>
    14 <init-param>
    15 <param-name>password</param-name>
    16 <param-value></param-value>
    17 </init-param>
    18 <init-param>
    19 <param-name>dbName</param-name>
    20 <param-value>pubs</param-value>
    21 </init-param>
    22
    23 </servlet>
    1 <servlet-mapping>
    2 <servlet-name>DBServlet</servlet-name>
    3 <url-pattern>/servlet/DBServlet</url-pattern>
    4 </servlet-mapping>

    2.servlet  java文件

    DBServlet.java
     1 package org.olive;
    2
    3 import java.io.*; //导入java.io包
    4 import java.util.*;
    5 import java.sql.*;
    6 import javax.servlet.*;
    7 import javax.servlet.http.*;
    8 public class DBServlet extends HttpServlet{ //定义一个继承HttpServlet的公有类
    9 ServletConfig config=null; //定义一个ServletConfig对象
    10 private String driverName=""; //定义私有字符串常量并初始化
    11 private String username=""; //定义的数据库用户名
    12 private String password=""; //定义的数据库连接密码
    13 private String dbName=""; //定义的数据库名
    14 private Connection conn; //初始化连接
    15 private Statement stmt; //初始化数据库操作
    16 ResultSet rs=null; //初始化结果集
    17 public void init(ServletConfig config)throws ServletException{
    18 super.init(config); //继承父类的init()方法
    19 this.config=config; //获取配置信息
    20 driverName=config.getInitParameter("driverName");//从配置文件中获取JDBC驱动名
    21 username=config.getInitParameter("username"); //获取数据库用户名
    22 password=config.getInitParameter("password"); //获取数据库连接密码
    23 dbName=config.getInitParameter("dbName"); //获取要连接的数据库
    24 }
    25 public void doGet(HttpServletRequest req,HttpServletResponse resp)throws IOException,ServletException{
    26
    27 resp.setContentType("text/html;charset=GBK"); //设置字符编码格式
    28 PrintWriter out=resp.getWriter(); //实例化对象,用于页面输出
    29 out.println("<html>"); //实现生成静态Html
    30 out.println("<head>");
    31 out.println("<meta http-equiv=\"Content-Type\"content=\"text/html;charset=GBK\">");
    32 out.println("<title>DataBase Connection</title>");
    33 out.println("</head>");
    34 out.println("<body bgcolor=\"white\">");
    35 out.println("<center>");
    36 String url="jdbc:microsoft:sqlserver://localhost:1433; DatabaseName=pubs";
    37 try{
    38 Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
    39 conn=DriverManager.getConnection(url,username,password);
    40 stmt=conn.createStatement();
    41 String sql="use pubs select * from publishers";
    42 rs=stmt.executeQuery(sql);
    43 out.println("Servlet访问数据库成功");
    44 out.println("<table border=1 bordercolorlight=#000000>");
    45 out.println("<tr><td width=40>序号</td>");
    46 out.println("<td>书名</td>");
    47 out.println("<td>城市</td>");
    48 out.println("<td>州</td>");
    49 out.println("<td>国</td></tr>");
    50 while(rs.next()){
    51 out.println("<tr><td>"+rs.getString(1)+"</td>");
    52 out.println("<td>"+rs.getString(2)+"</td>");
    53 out.println("<td>"+rs.getString(3)+"</td>");
    54 out.println("<td>"+rs.getString(4)+"</td>");
    55 out.println("<td>"+rs.getString(5)+"</td>");
    56 out.println("<tr>");
    57 }
    58 out.println("</table>");
    59 rs.close();
    60 stmt.close();
    61 conn.close();
    62
    63 }catch(Exception e){
    64 e.printStackTrace();
    65 out.println(e.toString());
    66 }
    67 out.println("</center>");
    68 out.println("</body>");
    69 out.println("</html>");
    70 }
    71 public void doPost(HttpServletRequest req,HttpServletResponse resp)throws IOException,ServletException{
    72 this.doGet(req,resp);
    73 }
    74 public void destory(){
    75 config=null;
    76 driverName=null;
    77 username=null;
    78 password=null;
    79 dbName=null;
    80 conn=null;
    81 stmt=null;
    82 rs=null;
    83 }
    84 }




  • 相关阅读:
    02:AWT介绍
    01:GUI编程简介
    业余草 SpringCloud教程 | 第六篇: 分布式配置中心(Spring Cloud Config)(Finchley版本)
    业余草 SpringCloud教程 | 第五篇: 路由网关(zuul)(Finchley版本)
    业余草 SpringCloud教程 | 第四篇:断路器(Hystrix)(Finchley版本)
    业余草 SpringCloud教程 | 第三篇: 服务消费者(Feign)(Finchley版本)
    业余草 SpringCloud教程 | 第二篇: 服务消费者(rest+ribbon)(Finchley版本)
    业余草 SpringCloud 教程 | 第一篇: 服务的注册与发现Eureka(Finchley版本)
    业余草分享2018最新面试题总结
    业余草分享面试题,JVM结构、GC工作机制详解
  • 原文地址:https://www.cnblogs.com/lihuiyy/p/2351787.html
Copyright © 2011-2022 走看看