亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

按老師的做,最后還是查不到

package com.test.servlet;

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

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 com.test.bean.Message;
import com.test.conn.ConnectionFactory;

/**
?* 列表頁面初始化控制
?* Servlet implementation class ListServlet
?*/
@WebServlet("/ListServlet")
public class ListServlet extends HttpServlet {
?? ?private static final long serialVersionUID = 1L;
????? ?
??? /**
???? * @see HttpServlet#HttpServlet()
???? */
??? public ListServlet() {
??????? super();
??????? // TODO Auto-generated constructor stub
??? }

?? ?/**
?? ? * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
?? ? */
?? ?protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
?? ??? ?// TODO Auto-generated method stub
?? ??? ?
?? ??? ?try {
?? ??? ??? ?
?? ??? ??? ?request.setCharacterEncoding("UTF-8");
?? ??? ??? ?String command = request.getParameter("command");
?? ??? ??? ?String description = request.getParameter("description");

?? ??? ??? ?Connection conn = ConnectionFactory.getConnection();
?? ??? ??? ?StringBuilder sql=new StringBuilder("SELECT ID,COMMAND,DESCRIPTION,CONTENT FROM MESSAGE WHERE 1=1");
?? ??? ??? ?
?? ??? ??? ?List<String> paramList=new ArrayList<String>();
?? ??? ??? ?if(command !=null && !"".equals(command.trim())){
?? ??? ??? ??? ?sql.append(" and COMMAND=?");
?? ??? ??? ??? ?paramList.add(command);
?? ??? ??? ?}
?? ??? ??? ?if(description !=null && !"".equals(description.trim())){
?? ??? ??? ??? ?sql.append(" and DESCRIPTION like '%'?'%'");
?? ??? ??? ??? ?paramList.add(description);
?? ??? ??? ?}
?? ??? ??? ?PreparedStatement ps = conn.prepareStatement(sql.toString());
?? ??? ??? ?for (int i=0;i<paramList.size();i++){
?? ??? ??? ??? ?ps.setString(i+1, paramList.get(i));
?? ??? ??? ?}
?? ??? ??? ?ResultSet rs = ps.executeQuery();
?? ??? ??? ?List<Message> messageList = new ArrayList<Message>();
?? ??? ??? ?while(rs.next()){
?? ??? ??? ??? ?Message message = new Message();
?? ??? ??? ??? ?messageList.add(message);
?? ??? ??? ??? ?message.setCommand(rs.getString("COMMAND"));
?? ??? ??? ??? ?message.setId(rs.getString("ID"));
?? ??? ??? ??? ?message.setDescription(rs.getString("DESCRIPTION"));
?? ??? ??? ??? ?message.setContent(rs.getString("CONTENT"));
?? ??? ??? ?}
?? ??? ??? ?request.setAttribute("messageList", messageList);
?? ??? ?} catch (SQLException e) {
?? ??? ??? ?// TODO Auto-generated catch block
?? ??? ??? ?e.printStackTrace();
?? ??? ?}
?? ??? ?request.getRequestDispatcher("/WEB-INF/jsp/back/list.jsp").forward(request,response);
?? ?}

?? ?/**
?? ? * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
?? ? */
?? ?protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
?? ??? ?// TODO Auto-generated method stub
?? ??? ?this.doGet(request, response);
?? ?}

}

結果和老師第一次沒有設置編碼格式一樣


正在回答

3 回答

把報錯內容傳上看

0 回復 有任何疑惑可以回復我~

我的sql模糊匹配老是報錯。。寫的和老師一樣。。查不出。。

0 回復 有任何疑惑可以回復我~

啥錯誤啊

0 回復 有任何疑惑可以回復我~
#1

qq_FunctionP_0 提問者

不報錯,現在發現是sql問題
2016-12-17 回復 有任何疑惑可以回復我~
#2

連宏偉HW 回復 qq_FunctionP_0 提問者

怎么解決
2016-12-20 回復 有任何疑惑可以回復我~
#3

qq_FunctionP_0 提問者 回復 連宏偉HW

sql 的模糊匹配語句 " and DESCRIPTION like '%' ? '%'"
2016-12-21 回復 有任何疑惑可以回復我~
#4

qq_FunctionP_0 提問者 回復 qq_FunctionP_0 提問者

%和?中有個空格
2016-12-21 回復 有任何疑惑可以回復我~
查看1條回復

舉報

0/150
提交
取消

按老師的做,最后還是查不到

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號