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 }




  • 相关阅读:
    WPF之感触
    C# WinForm 给DataTable中指定位置添加列
    MyEclipse 8.6 download 官方下载地址
    将博客搬至CSDN
    Building Microservices with Spring Cloud
    Building Microservices with Spring Cloud
    Building Microservices with Spring Cloud
    Building Microservices with Spring Cloud
    Building Microservices with Spring Cloud
    Building Microservices with Spring Cloud
  • 原文地址:https://www.cnblogs.com/lihuiyy/p/2351787.html
Copyright © 2011-2022 走看看