java servlet jdbc 连接sqlserver数据库查询和修改

效果图:

java servlet jdbc 连接sqlserver数据库查询和修改_第1张图片

2、Java类

package shop.hh;

public class Book {
	// 编号
	private int id;
	// 图书名称
	private String name;
	// 价格
	private double price;
	// 数量
	private int bookCount;
	// 作者
	private String author;
	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;
	}
	public double getPrice() {
		return price;
	}
	public void setPrice(double price) {
		this.price = price;
	}
	public int getBookCount() {
		return bookCount;
	}
	public void setBookCount(int bookCount) {
		this.bookCount = bookCount;
	}
	public String getAuthor() {
		return author;
	}
	public void setAuthor(String author) {
		this.author = author;
	}
}
package shop.hh;

import java.io.IOException;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.List;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class FindServlet extends HttpServlet {
	private static final long serialVersionUID = 1L;

	protected void doGet(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {
		try {
			// 加载数据库驱动,注册到驱动管理器
			Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
			// 数据库连接字符串
			String url = "jdbc:sqlserver://DESKTOP-EO1BDL6;DatabaseName=hh";
			// 数据库用户名
			String username = "sa";
			// 数据库密码
			String password = "sa@12345";
			// 创建Connection连接
			Connection conn = DriverManager.getConnection(url, username, password);
			// 获取Statement
			Statement stmt = conn.createStatement();
			// 添加图书信息的SQL语句
			String sql = "select * from tb_books";
			// 执行查询
			ResultSet rs = stmt.executeQuery(sql);
			// 实例化List对象
			List list = new ArrayList();
			// 判断光标向后移动,并判断是否有效
			while (rs.next()) {
				// 实例化Book对象
				Book book = new Book();
				// 对id属性赋值
				book.setId(rs.getInt("id"));
				// 对name属性赋值
				book.setName(rs.getString("name"));
				// 对price属性赋值
				book.setPrice(rs.getDouble("price"));
				// 对bookCount属性赋值
				book.setBookCount(rs.getInt("bookCount"));
				// 对author属性赋值
				book.setAuthor(rs.getString("author"));
				// 将图书对象添加到集合中
				list.add(book);
			}
			// 将图书集合放置到request之中
			request.setAttribute("list", list);
			rs.close(); // 关闭ResultSet
			stmt.close(); // 关闭Statement
			conn.close(); // 关闭Connection
		} catch (ClassNotFoundException e) {
			e.printStackTrace();
		} catch (SQLException e) {
			e.printStackTrace();
		}
		// 请求转发到book_list.jsp
		request.getRequestDispatcher("book_list.jsp").forward(request, response);
	}

	protected void doPost(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {
		int id = Integer.valueOf(request.getParameter("id"));
		int bookCount=Integer.valueOf(request.getParameter("bookCount"));
		try {
			// 加载数据库驱动,注册到驱动管理器
			Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
			// 数据库连接字符串
			String url = "jdbc:sqlserver://DESKTOP-EO1BDL6;DatabaseName=hh";
			// 数据库用户名
			String username = "sa";
			// 数据库密码
			String password = "sa@12345";
			Connection conn = DriverManager.getConnection(url, username, password);
			String sql="update tb_book set bookcount=? where id=?";
			PreparedStatement ps=conn.prepareStatement(sql);
			ps.setInt(1, bookCount);
			ps.setInt(2, id);
			ps.executeUpdate();
			ps.close();
			conn.close();
		} catch (Exception e) {
			e.printStackTrace();
		}
		response.sendRedirect("FindServlet");
	}
}

package shop.hh;

import java.io.IOException;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.List;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class UpdateServlet extends HttpServlet {
	private static final long serialVersionUID = 1L;

	protected void doGet(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {
		try {
			// 加载数据库驱动,注册到驱动管理器
			Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
			// 数据库连接字符串
			String url = "jdbc:sqlserver://DESKTOP-EO1BDL6;DatabaseName=hh";
			// 数据库用户名
			String username = "sa";
			// 数据库密码
			String password = "sa@12345";
			// 创建Connection连接
			Connection conn = DriverManager.getConnection(url, username, password);
			// 获取Statement
			Statement stmt = conn.createStatement();
			// 添加图书信息的SQL语句
			String sql = "select * from tb_books";
			// 执行查询
			ResultSet rs = stmt.executeQuery(sql);
			// 实例化List对象
			List list = new ArrayList();
			// 判断光标向后移动,并判断是否有效
			while (rs.next()) {
				// 实例化Book对象
				Book book = new Book();
				// 对id属性赋值
				book.setId(rs.getInt("id"));
				// 对name属性赋值
				book.setName(rs.getString("name"));
				// 对price属性赋值
				book.setPrice(rs.getDouble("price"));
				// 对bookCount属性赋值
				book.setBookCount(rs.getInt("bookCount"));
				// 对author属性赋值
				book.setAuthor(rs.getString("author"));
				// 将图书对象添加到集合中
				list.add(book);
			}
			// 将图书集合放置到request之中
			request.setAttribute("list", list);
			rs.close(); // 关闭ResultSet
			stmt.close(); // 关闭Statement
			conn.close(); // 关闭Connection
		} catch (ClassNotFoundException e) {
			e.printStackTrace();
		} catch (SQLException e) {
			e.printStackTrace();
		}
		// 请求转发到book_list.jsp
		request.getRequestDispatcher("book_list.jsp").forward(request, response);
	}

	protected void doPost(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {
		int id = Integer.valueOf(request.getParameter("id"));
		int bookCount=Integer.valueOf(request.getParameter("bookCount"));
		try {
			// 加载数据库驱动,注册到驱动管理器
			Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
			// 数据库连接字符串
			String url = "jdbc:sqlserver://DESKTOP-EO1BDL6;DatabaseName=hh";
			// 数据库用户名
			String username = "sa";
			// 数据库密码
			String password = "sa@12345";
			Connection conn = DriverManager.getConnection(url, username, password);
			String sql="update tb_books set bookcount=? where id=?";
			PreparedStatement ps=conn.prepareStatement(sql);
			ps.setInt(1, bookCount);
			ps.setInt(2, id);
			ps.executeUpdate();
			ps.close();
			conn.close();
		} catch (Exception e) {
			e.printStackTrace();
		}
		response.sendRedirect("FindServlet");
	}
}


3、 jsp页面

<%@ page language="java" contentType="text/html; charset=utf-8"
    pageEncoding="utf-8"%>
<%@page import="java.util.List"%>
<%@page import="shop.hh.Book"%>





Insert title here


	
		<%
			// 获取图书信息集合
			List list=(List)request.getAttribute("list");
			if(list==null || list.size()<1){
				out.print("没有 数据!");
			}
			else{
				for(Book book:list){
					%>
					
					<%
				}
			}
		%>
	

所有图书信息

ID 图书名称 价格 数量 作者
<%=book.getId() %> <%=book.getName() %> <%=book.getPrice() %> <%=book.getBookCount() %> <%=book.getAuthor() %>
>



<%@ page language="java" contentType="text/html; charset=utf-8"
    pageEncoding="utf-8"%>




Insert title here


	查看所有图书


4、xml文件



  11.3
  
    index.html
    index.htm
    index.jsp
    default.html
    default.htm
    default.jsp
  
  
    
    FindServlet
    FindServlet
    shop.hh.FindServlet  
    UpdateServlet
    UpdateServlet
    shop.hh.UpdateServlet
  
  
    FindServlet
    /FindServlet
    UpdateServlet
    /UpdateServlet
  

5、需要引用servlet包和sqljdbc包

java servlet jdbc 连接sqlserver数据库查询和修改_第2张图片

你可能感兴趣的:(Sql,Server,java)