本文共 5706 字,大约阅读时间需要 19 分钟。
如何在Docker中测验Jsp连接数据库mysql的操作(制作成一个镜像)
-- 删除表DROP TABLE person ;-- 建立person表CREATE TABLE person( -- 生成一个流水号,观察显示的记录数 id int AUTO_INCREMENT NOT NULL PRIMARY KEY , -- 用户的登陆ID uid varchar(32) , -- 用户的真实姓名 name varchar(32) , -- 用户的登陆密码 password varchar(20)) ;-- 插入测试数据INSERT INTO person(uid,name,password) VALUES ('Avaya01','Jeremy01','pwd01') ;INSERT INTO person(uid,name,password) VALUES ('Avaya02','Jeremy02','pwd02') ;INSERT INTO person(uid,name,password) VALUES ('Avaya03','Jeremy03','pwd03') ;INSERT INTO person(uid,name,password) VALUES ('Avaya04','Jeremy04','pwd04') ;INSERT INTO person(uid,name,password) VALUES ('Avaya05','Jeremy05','pwd05') ;INSERT INTO person(uid,name,password) VALUES ('Avaya06','Jeremy06','pwd06') ;INSERT INTO person(uid,name,password) VALUES ('Avaya07','Jeremy07','pwd07') ;INSERT INTO person(uid,name,password) VALUES ('Avaya08','Jeremy08','pwd08') ;INSERT INTO person(uid,name,password) VALUES ('Avaya09','Jeremy09','pwd09') ;INSERT INTO person(uid,name,password) VALUES ('Avaya10','Jeremy10','pwd10') ;INSERT INTO person(uid,name,password) VALUES ('Avaya11','Jeremy11','pwd11') ;INSERT INTO person(uid,name,password) VALUES ('Avaya12','Jeremy12','pwd12') ;INSERT INTO person(uid,name,password) VALUES ('Avaya13','Jeremy13','pwd13') ;INSERT INTO person(uid,name,password) VALUES ('Avaya14','Jeremy14','pwd14') ;INSERT INTO person(uid,name,password) VALUES ('Avaya15','Jeremy15','pwd15') ;INSERT INTO person(uid,name,password) VALUES ('Avaya16','Jeremy16','pwd16') ;INSERT INTO person(uid,name,password) VALUES ('Avaya17','Jeremy17','pwd17') ;INSERT INTO person(uid,name,password) VALUES ('Avaya18','Jeremy18','pwd18') ;INSERT INTO person(uid,name,password) VALUES ('Avaya19','Jeremy19','pwd19') ;INSERT INTO person(uid,name,password) VALUES ('Avaya20','Jeremy20','pwd20') ;INSERT INTO person(uid,name,password) VALUES ('Avaya21','Jeremy21','pwd21') ;INSERT INTO person(uid,name,password) VALUES ('Avaya22','Jeremy22','pwd22') ;INSERT INTO person(uid,name,password) VALUES ('Avaya23','Jeremy23','pwd23') ;
<%@ page contentType="text/html;charset=gb2312"%><%@ page import="java.sql.*"%>分页显示 人员列表
<%! final String jspUrl = "list_person_false_05.jsp" ; %> <% // 定义如下分页变量 // 1、定义没页要显示的记录数 int lineSize = 10 ; // 2、定义一个当前是第几页 int currentPage = 1 ; // 计算出总页数 int pageSize = 0 ; // 总记录数 / 每页显示的记录数 int allRecorders = 30 ; %> <% // 接收传过来的当前页 try { currentPage = Integer.parseInt(request.getParameter("cp")) ; } catch(Exception e) {} %> <% final String DBDRIVER = "com.mysql.jdbc.Driver" ; final String DBURL = "jdbc:mysql://127.0.0.1:3306/mydb" ; final String DBUSER = "root" ; final String DBPASSWORD = "123456" ; Connection conn = null ; %> <% try { Class.forName(DBDRIVER) ; conn = DriverManager.getConnection(DBURL,DBUSER,DBPASSWORD) ; if(!conn.isClosed()) {System.out.println("Succeeded connecting to the Database!");} else{ System.out.println("not Succeeded connecting to the Database!"); } PreparedStatement pstmt = null ; String sql = "SELECT COUNT(id) from person" ; pstmt = conn.prepareStatement(sql) ; ResultSet rs = pstmt.executeQuery() ; if(rs.next()) { allRecorders = rs.getInt(1) ; } rs.close() ; pstmt.close() ; // 计算总页数 pageSize = (allRecorders+lineSize-1)/lineSize ; sql = "SELECT id,uid,name,password FROM person" ; pstmt = conn.prepareStatement(sql) ; rs = pstmt.executeQuery() ; %><% } catch(Exception e) { %>
<% int i = 0 ; for(int x=0;x<(currentPage-1)*lineSize;x++) { rs.next(); } // 对于输出代码之前要求按显示的页数空出 for(int x=0;x 编号 登陆名称 姓名 密码 操作 <% } } rs.close() ; pstmt.close() ; if(i==0) { %> <%=id%> <%=userid%> <%=name%> <%=password%> 更新 删除 <% } %> 没有任何数据!! 系统出错!!!
<% } finally { conn.close() ; } %>
将此Jsp文件放置在
/usr/local/apache-tomcat-8.5.30/webapps/my
然后在
在可以和host通信的机器上,进行测试