Servlet + mysql
package com.hust; import java.io.IOException; import java.io.PrintWriter; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.annotation.WebInitParam; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; //@WebServlet("/register1") @WebServlet(description = "show the using of different nethod", urlPatterns = { "/register1" }, initParams = { @WebInitParam(name = "ProjectName", value = "Levice"), @WebInitParam(name = "ServletName", value = "MethodServlet") }) public class TestServlet extends HttpServlet { private static final long serialVersionUID = 1L; private final String DB_URL = "jdbc:mysql://localhost:3306/hoyita?&useSSL=true"; private final String USER = "root"; private final String PASS = "root"; public TestServlet() { super(); } @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { Connection conn = null; Statement stmt = null; String u = req.getParameter("username"); String p = req.getParameter("passwd"); System.out.println("--username:" + u); System.out.println("--passwd:" + p); try { // 注册 JDBC 驱动器 Class.forName("com.mysql.jdbc.Driver"); // 打开一个连接 conn = DriverManager.getConnection(DB_URL, USER, PASS); // 执行 SQL 查询 stmt = conn.createStatement(); String sql = "SELECT * FROM users"; ResultSet rs = stmt.executeQuery(sql); while (rs.next()) { String username = rs.getString("username"); String password = rs.getString("password"); String email = rs.getString("email"); if (u.equals(username) && p.equals(password)) { System.out.println("user:" + username + ", email:" + email); break; } } } catch (Exception e) { e.printStackTrace(); System.err.println(e.getMessage()); } finally { try { if (stmt != null) { stmt.close(); } } catch (SQLException e) { System.out.println(e.getMessage()); } try { if (conn != null) { conn.close(); } } catch (SQLException e) { System.out.println(e.getMessage()); } } PrintWriter out = resp.getWriter(); out.println("<HTML><BODY>Hello abc!</BODY></HTML>"); } @Override protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { super.doPost(req, resp); } @Override public void destroy() { System.out.println("destroy()"); super.destroy(); } @Override public void init() throws ServletException { System.out.println("init()"); super.init(); } }
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Insert title here</title> </head> <body> <form action="register1" method="get"> <table width="60%" border="1"> <tr> <td>用户名</td> <td><input type="text" name="username"></td> </tr> <tr> <td>密码</td> <td><input type="password" name="passwd"></td> </tr> <tr> <td>确认密码</td> <td><input type="password" name="confirmPwd"></td> </tr> <tr> <td><input type="reset" value="清空"></td> <td><input type="submit" value="注册"></td> </tr> </table> </form> </body> </html>
配置mysql数据库:
安装mysql后启动mysql服务
设置path 环境变量C:\Program Files\MySQL\MySQL Server 5.5\bin
如果mysql连不上则可能是服务没启动,需要启动该服务
打开控制面板->管理工具->服务 找到mysql服务并启动
C:\Users\c0>mysql -u root -p
mysql> create database hoyita;
mysql> use hoyita;
Database changed
mysql> show tables;
Empty set (0.00 sec)
mysql> CREATE TABLE users (
username varchar(20) NOT NULL,
password varchar(20) NOT NULL,
email varchar(20) NOT NULL,
PRIMARY KEY (username)
);
mysql> show tables;
+------------------+
| Tables_in_hoyita |
+------------------+
| users |
+------------------+
row in set (0.00 sec)
mysql> drop users;
mysql> insert into users(username, password, email) values ("muhe221", "123456", "muhe221@126.com");
Query OK, 1 row affected (0.05 sec)
mysql> select * from users;
+----------+----------+-----------------+
| username | password | email |
+----------+----------+-----------------+
| muhe221 | 123456 | muhe221@126.com |
+----------+----------+-----------------+
row in set (0.00 sec)
java.lang.ClassNotFoundException: com.mysql.jdbc.Driver 解决方法
必须把mysql-connector-java-5.1.7-bin.jar导入到tomcat的lib目录下面!
在java项目中,只需要引入mysql-connector-java-5.1.7-bin.jar就可以运行java项目。
在web项目中,当Class.forName("om.mysql.jdbc.Driver");时myeclipse是不会去查找字符串,不会去查找驱动的。所以只需要把mysql-connector-java-5.1.7-bin.jar拷贝到tomcat下lib目录
驱动下载路径: https://dev.mysql.com/downloads/connector/j/
Java使用mysql-jdbc连接MySQL出现如下警告: Establishing SSL connection without server's identity verification is not recommended. 在mysql连接字符串url中加入ssl=true或者false即可,如下所示。 private final String DB_URL = "jdbc:mysql://localhost:3306/hoyita?&useSSL=true";
http://blog.csdn.net/jabony/article/details/39338613
==================================================================================
如果不使用@WebServlet 则可以使用web.xml进行servlet映射
web.xml
<?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" version="3.1"> <display-name>FirstBlood</display-name> <welcome-file-list> <welcome-file>index.html</welcome-file> </welcome-file-list> <servlet> <display-name>register_test</display-name> <servlet-name>register</servlet-name> <servlet-class>com.hust.TestServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>register</servlet-name> <url-pattern>/register1</url-pattern> </servlet-mapping> </web-app>
https://www.cnblogs.com/dige1993/p/5384957.html

浙公网安备 33010602011771号