diff --git "a/41 \347\224\230\345\260\217\345\274\272/2023-05-23_223122.png" "b/41 \347\224\230\345\260\217\345\274\272/2023-05-23_223122.png" new file mode 100644 index 0000000000000000000000000000000000000000..488481cb0a9d943ba4f97dabf1c6dc2523132258 Binary files /dev/null and "b/41 \347\224\230\345\260\217\345\274\272/2023-05-23_223122.png" differ diff --git "a/41 \347\224\230\345\260\217\345\274\272/20230522.md" "b/41 \347\224\230\345\260\217\345\274\272/20230522.md" new file mode 100644 index 0000000000000000000000000000000000000000..db8fb83f8620177415be9203acabe57726b4c4df --- /dev/null +++ "b/41 \347\224\230\345\260\217\345\274\272/20230522.md" @@ -0,0 +1,102 @@ +```java +import java.sql.*; + +public class DBUtil { + // 先创建一个数据库的工具类,可以将注册驱动,连接对象,等等都封装成对应的方法 + private static final String url="jdbc:mysql://localhost:3306/student?useSSL=false&useUnicode=true&characterEncoding=utf8"; + private static final String username="root"; + private static final String pwd="123456789"; + + //用静态代码块注册驱动 + static { + try { + Class.forName("com.mysql.jdbc.Driver"); + } catch (ClassNotFoundException e) { + throw new RuntimeException(e); + } + } + //获取连接对象 + private static Connection getConn() throws SQLException { + Connection conn = DriverManager.getConnection(url, username, pwd); + return conn; + } + + /** + * 通用的查询方法 + * @param sql 接收的SQL语句 + * @return 将查询的结果集返回给调用者 + * String ...keys :...表示可变的参数,0个或是任意个数的参数都可以 + */ + public static ResultSet query(String sql,String ...keys) throws SQLException { + Connection conn = getConn(); + PreparedStatement pst = conn.prepareStatement(sql); + // 设置?的值 + // pst.setString(1,userid); + // pst.setString(2,username); + for (int i = 0; i < keys.length; i++) { + pst.setString((i+1),keys[i]); + } + ResultSet rst = pst.executeQuery(); + return rst; + + } + //通用的update + public static int update(String sql,String ...keys) throws SQLException { + Connection conn = getConn(); + PreparedStatement pst = conn.prepareStatement(sql); + for (int i = 0; i < keys.length; i++) { + pst.setString((i+1),keys[i]); + } + int i= pst.executeUpdate(); + return i; + + } + //通用的释放资源的方法 + private static void close(Connection conn,PreparedStatement pst,ResultSet rst) throws SQLException { + if (rst!=null){ + rst.close(); + } + if (pst!=null){ + pst.close(); + } + if (conn!=null){ + conn.close(); + } + + } +} +``` + +```java +import java.sql.ResultSet; +import java.sql.SQLException; +import java.util.ArrayList; +import java.util.List; + +public class Test { + public static void main(String[] args) throws SQLException { + String sql = "select * from stu"; + ResultSet rs = DBUtil.query(sql); +// while (rs.next()) { +// // 获取结果集里的内容的方法有两种:1,通过内容的位置,即(字段的个数的位置,从1开始) ,2 ,直接通过字段名获取 +// int id1 = rs.getInt("id"); +// String name1 = rs.getString("name"); +// String sex1 = rs.getString("sex"); +// System.out.println("编号:" + id1 + "," + name1 + "," + sex1); +// } + List resultList = new ArrayList<>(); +// 遍历结果集并将数据存入集合 + while (rs.next()) { + int id = rs.getInt("id"); + String name = rs.getString("name"); + String sex = rs.getString("sex"); + resultList.add(id+name+sex); + } // +// 遍历集合 + for (String result : resultList) { + System.out.println(result); + } + } +} +``` + diff --git "a/41 \347\224\230\345\260\217\345\274\272/20230523.md" "b/41 \347\224\230\345\260\217\345\274\272/20230523.md" new file mode 100644 index 0000000000000000000000000000000000000000..692f03759af032eaf504eb7bea8ac14ee445874d --- /dev/null +++ "b/41 \347\224\230\345\260\217\345\274\272/20230523.md" @@ -0,0 +1,53 @@ +```java +package com.mxdx.servlet; + + +import javax.servlet.ServletException; +import javax.servlet.http.HttpServlet; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import java.io.IOException; +import java.sql.*; + +public class Student02 extends HttpServlet { + @Override + protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { + System.out.println("DoGet is running ......."); + + + try { + Class.forName("com.mysql.jdbc.Driver"); + Connection conn = DriverManager.getConnection("jdbc:mysql:///student?useSSl=false&useUnicode=true&characterEncoding=utf8", "root", "123456789"); + String sql="select * from stu"; + PreparedStatement pst = conn.prepareStatement(sql); + ResultSet rst = pst.executeQuery(); + while (rst.next()){ + int id = rst.getInt("id"); + String name = rst.getString("name"); + String sex = rst.getString("sex"); + System.out.println(id+name+sex); + + } + } catch (ClassNotFoundException e) { + e.printStackTrace(); + } catch (SQLException e) { + e.printStackTrace(); + } + + } + + @Override + protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { + super.doPost(req, resp); + } +} + +``` + +![](D:\JSP+Sverlet网站开发\jsp_servlet\41 甘小强\2023-05-23_223122.png) + +### 数据库都连不上我还怎么做,:sob::sob::sob::sob::sob::sob::sob::sob::sob:::sob:, + +尽力了 + +# ! \ No newline at end of file