国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JSP > 正文

JSP網站開發基礎總結《七》

2019-11-14 23:21:51
字體:
來源:轉載
供稿:網友
jsp網站開發基礎總結《七》

  按照計劃本篇將為大家總結搜索功能的兩種實現:確定搜索與模糊搜索。所謂精確搜索便是指,根據用戶的輸入的搜索內容,在數據庫中尋找具有一一對應的關系的數據,一般都是用戶在數據庫中的主鍵值。而模糊搜索,是一種根據用戶輸入的信息,進行匹配,將具有相似信息的數據對象返回給用戶。這兩者在代碼上的區別僅僅在于sql語句不同。下面就具體為大家介紹一下。

  搜索輸入框的設計,在上一篇中已經為大家介紹過,這里就不再贅述。下面直接開始我們本篇的內容。

 1、精確搜索: 

  用于搜索的java方法:

public Student getName(String name) {        Student student = new Student();        Connection conn = null;        Statement st = null;        ResultSet rs = null;        conn = DBO.getConnection();        String sql = "select * from students where username='"+name+"'";        try {            st = conn.createStatement();            rs = st.executeQuery(sql);            while(rs.next()){                student.setId(rs.getInt("id"));                student.setName(name);                student.setSex(rs.getInt("sex"));                student.setYear(rs.getInt("age"));                student.setFrom(rs.getString("form"));                student.setSchool(rs.getString("school"));            }        } catch (SQLException e) {            e.PRintStackTrace();        }        return student;    }

 2、模糊搜索:

  用于進行模糊搜索的java方法:

public List<Student> getByName(String name) {        List<Student> list = new ArrayList<Student>();        Connection conn = null;        PreparedStatement pst = null;        ResultSet rs = null;        conn = DBO.getConnection();        String sql = "select * from students where username like ?";                try {            pst = conn.prepareStatement(sql);            pst.setString(1, "%"+name+"%");            rs = pst.executeQuery();            while(rs.next()){                Student student = new Student();                student.setId(rs.getInt("id"));                student.setName(rs.getString("username"));                student.setSex(rs.getInt("sex"));                student.setYear(rs.getInt("age"));                student.setFrom(rs.getString("form"));                student.setSchool(rs.getString("school"));                list.add(student);            }        } catch (SQLException e) {            e.printStackTrace();        }        return list;    }

 3、select代碼:

  這里的我將精確搜索和模糊搜索的select放在了一起。

public class get extends HttpServlet {    public void doGet(HttpServletRequest request, HttpServletResponse response)            throws ServletException, IOException {        doPost(request, response);    }    public void doPost(HttpServletRequest request, HttpServletResponse response)            throws ServletException, IOException {        request.setCharacterEncoding("utf-8");        response.setCharacterEncoding("utf-8");        StudentMaImp smi = new StudentMaImp();        Student student = new Student();        List<Student> list = new ArrayList<Student>();        if(request.getParameter("queding")!= null&&request.getParameter("queding").length()!=0){            String queding = request.getParameter("queding");            student = smi.getName(queding);            if(student.getName()!=null&&student.getName().length()!=0){                request.setAttribute("student", student);                request.getRequestDispatcher("Get.jsp").forward(request, response);            }else{                list = smi.getAll();                request.setAttribute("list", list);                request.setAttribute("new1", queding+"同學不存在");                request.getRequestDispatcher("All.jsp").forward(request, response);            }        }else{            String mohu = request.getParameter("mohu");            list = smi.getByName(mohu);            if(list.size()!=0){                request.setAttribute("list", list);                request.getRequestDispatcher("GetAll.jsp").forward(request, response);            }else{                list = smi.getAll();                request.setAttribute("list", list);                request.setAttribute("new2", "關鍵字:"+mohu+"不存在");                request.getRequestDispatcher("All.jsp").forward(request, response);            }        }    }}

 4、記住用戶名和密碼:

  我們在很多需要進行登錄的網站經常可以看到,當我們第一次登錄成功后,以后我們再次打開這個頁面時,我們的用戶名和密碼已經填寫好了,這個就是一個記住密碼功能,下面我就開始為大家介紹一下它的使用。這里需要使用一個關鍵字Cookie,通過這個關鍵字我們可以通過select后臺將我們的賬戶信息保存的本地,當我們需要使用時通過調用Cookie的一個方法便可以了。

  保存數據到本地方法:

       Cookie cookie_name = new Cookie("name",name);//設置保存數據的名字            cookie_name.setMaxAge(60*60*24*7);//保存數據的期限這里設置的為一周            response.addCookie(cookie_name);                        Cookie cookie_pwd = new Cookie("pwd",passWord);            cookie_pwd.setMaxAge(60*60*24*7);            response.addCookie(cookie_pwd);

  獲取Cookie中的值:

         <tr>                    <td>姓名:</td><td><input type="text" name="name" value="${cookie.name.value }" /></td>                </tr>                <tr>                    <td>密碼:</td><td><input type="password" name="pwd" value="${cookie.pwd.value }" /></td>                </tr>

  到這里本篇的總結就寫完了,內容不多,大家有什么疑問可以留言討論。下一篇:類似百度分頁的效果實現


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 绵竹市| 平果县| 惠安县| 米林县| 太白县| 汉源县| 平湖市| 合川市| 文成县| 平陆县| 福安市| 吴桥县| 伊宁县| 大连市| 武邑县| 中阳县| 岢岚县| 滨州市| 阳曲县| 黑河市| 永平县| 富锦市| 双牌县| 平远县| 宁蒗| 福州市| 淮阳县| 大竹县| 乳山市| 四川省| 封丘县| 宁波市| 怀来县| 北安市| 永顺县| 韩城市| 女性| 兴国县| 舒城县| 新密市| 云林县|