**
servlet编写图形界面,并链接mysql数据库**
以下代码存在一个问题,就是后端代码无法获取html中的输入框值,可能跟web.xml有关。
package Servlet;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.PrintWriter;
import java.sql.*;
import java.util.ArrayList;
@WebServlet(name = “WelcomeServlet”,urlPatterns={"/Servlet"})
public class WelcomeServlet extends HttpServlet {
ArrayList bookList = new ArrayList();
Connection dbconn = null;
ResultSet result = null;
PreparedStatement pstmt = null;
public void init() {
String url = “jdbc:mysql://localhost:3306/db_cms?useSSL=false”;
String username =“root”;
String password = “ronghui123@”;
try{
Class.forName(“com.mysql.jdbc.Driver”);
dbconn = DriverManager.getConnection(url,username,password);
System.out.println(“数据库连接成功!”);
}catch (ClassNotFoundException e1){
System.out.println(e1+“驱动程序找不到”);
}catch(SQLException e2){
System.out.println(e2);
}
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
//界面布局
response.setContentType("text/html;charset=UTF-8");
response.setHeader("content-type","text/html;charset=utf-8");
PrintWriter out = response.getWriter();
out.print("
");
out.print("
");
out.print("输入您要查询的书籍信息
");
out.print(""); out.print("
"); out.print("
"); out.print("
"); //返回符合条件的商品 try{ String sql = "select * from T_BOOK where bookname like CONCAt('%','史','%')";//查询语句决定了是否是模糊查询 pstmt = dbconn.prepareStatement(sql); result = pstmt.executeQuery(); while(result.next()){ Book product = new Book(); product.setBookid(result.getInt("bookid")); product.setBookname(result.getString("bookname")); product.setBookprice(result.getFloat("bookprice")); bookList.add(product); } if(bookList==null){ System.out.print("数据库列表为空!"); } }catch (SQLException e){ e.printStackTrace(); } //遍历输出查找到的符合条件的商品 for (int i=0;i
}



