⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 spell_check.jsp

📁 Ajax经典实例大全,关于ajax非常多的实例,适合下载学习
💻 JSP
字号:
<%@ page contentType="text/plain; charset=UTF-8"%>
<%@ page language="java"%>
<%@ page import="java.sql.*,ajax.db.DBUtils"%>
<%!
    //检查单词在数据库中是否存在
    boolean checkWord(String word) {
        boolean result = false;                 //存放检查结果

        String sql = "select id from words where word = ?";   //定义查询数据库的SQL语句
        Connection conn = null;                 //声明Connection对象
        PreparedStatement pstmt = null;         //声明PreparedStatement对象
        ResultSet rs = null;                    //声明ResultSet对象
        try {
            conn = DBUtils.getConnection();     //获取数据库连接
            pstmt = conn.prepareStatement(sql); //根据sql创建PreparedStatement
            pstmt.setString(1, word);           //设置参数
            rs = pstmt.executeQuery();          //执行查询,返回结果集
            if (rs.next()) {
                result = true;
            }
        } catch (SQLException e) {
            System.out.println(e.toString());
        } finally {
            DBUtils.close(rs);                  //关闭结果集
            DBUtils.close(pstmt);               //关闭PreparedStatement
            DBUtils.close(conn);                //关闭连接
        }
        return result;
    }

    //解析单词,去除常见标点
    String parseWord (String srcWord) {
        String lastChar = srcWord.substring(srcWord.length()-1);    //获取单词最后的字符

        //如果最后的字符是常见标点,则去掉后返回,否则直接返回原字符
        if (".".equals(lastChar) || ",".equals(lastChar) ||
            "!".equals(lastChar) || "?".equals(lastChar)) {
            return srcWord.substring(0,srcWord.length()-1);
        } else {
            return srcWord;
        }
    }
%>
<%
    out.clear();                                        //清空当前的输出内容(空格和换行符)

    String text = request.getParameter("text");         //获取用户输入的文本

    StringBuffer result = new StringBuffer();           //用于保存结果的StringBuffer
    String[] words = text.split(" ");                   //将字符用空格分隔为字符串数组

    String srcWord = null;                              //保存原始字符
    String word = null;                                 //保存去除标点后的字符

    //遍历每个单词,在数据库中查找是否存在
    for (int i=0; i<words.length; i++) {
        srcWord = words[i];

        //当切分的字符不包含内容时跳过本次循环
        if ("".equals(srcWord)) {
            continue;
        }
        word = parseWord(srcWord);                      //去除标点

        //检查单词是否存在,不存在时将单词放在span标签内返回
        if (checkWord(word)) {
            result.append(srcWord);
        } else {
            result.append("<span class='warn'>");
            result.append(srcWord);
            result.append("</span>");
        }
        result.append(" ");                             //每个单词后增加一个空格
    }

    out.print(result.toString());                       //将检查结果写入响应体
%>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -