目录
一·登录注册代码以及效果
doregister.jsp:注册信息弹框
login.jsp:登录
dologin.jsp:与数据库相连、存放登陆的用户
index.jsp:主界面
update.jsp:修改
doup.jsp:修改页面(帮助)
info.jsp:详情
dodel.jsp:删除界面
二·页面跳转的方式以及他们的区别
1、跳转路径并传递数据
2、页面跳转的两种方式和区别
三·其他
1、jdbc连接Oracle
2、乱码
3、添加数据时,获取最新编号
以上就是今天的分享,谢谢大家的观赏!!
register.jsp:注册
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>注册
<%@page import="java.sql.ResultSet"%> <%@page import="java.sql.PreparedStatement"%> <%@page import="java.sql.Connection"%> <%@page import="java.sql.DriverManager"%> <%@page import="oracle.jdbc.driver.OracleDriver"%> <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <% //设置编码-设置请求对象的编号 request.setCharacterEncoding("utf-8"); //接收注册页面传递的数据 String uname = request.getParameter("uname"); String upwd = request.getParameter("upwd"); String uinfo = request.getParameter("uinfo"); //连接数据库 Class.forName("oracle.jdbc.driver.OracleDriver"); String url = "jdbc:oracle:thin:@localhost:1521:orcl"; Connection con = DriverManager.getConnection(url, "scott", "tiger"); /* 查询到用户的最大编号 最大编号+1,做为新添加的用户的编号 */ //这里的代码是用来 得到最新编号的 int nextId=1;//做为新用户的编号 PreparedStatement ps = con.prepareStatement("select max(uuid) from T277"); //执行sql语句 ResultSet rs= ps.executeQuery(); if(rs.next()){ //查询到最大的编号,加1,就是新数据的编号 nextId = rs.getInt(1)+1; } //这里的代码 开始执行添加用户操作 ps = con.prepareStatement("insert into T277 values(?,?,?,?)"); ps.setInt(1, nextId); ps.setString(2, uname); ps.setString(3, upwd); ps.setString(4, uinfo); //执行sql语句 int i = ps.executeUpdate(); if(i>0){ out.print(""); }else{ out.print(""); } %>
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>登录
<%@page import="java.sql.ResultSet"%> <%@page import="java.sql.PreparedStatement"%> <%@page import="java.sql.DriverManager"%> <%@page import="java.sql.Connection"%> <%@page import="oracle.jdbc.driver.OracleDriver"%> <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <% //接收login页面传递的数据 String uname = request.getParameter("uname"); String upwd = request.getParameter("upwd"); //连接数据库 //注册驱动类 //OracleDriver Class.forName("oracle.jdbc.driver.OracleDriver"); //连接数据库 String url = "jdbc:oracle:thin:@localhost:1521:orcl"; Connection con = DriverManager.getConnection(url, "scott", "tiger"); //创建对象 PreparedStatement ps = con.prepareStatement("select * from T277 where uname=? and upwd=?"); //给占位符赋值 ps.setString(1, uname); ps.setString(2, upwd); //执行sql语句 ResultSet rs = ps.executeQuery(); //处理结果 if(rs.next()){ //转发 request.getRequestDispatcher("index.jsp").forward(request, response); }else{ //失败 out.print(""); } //关闭连接 %>
<%@page import="java.sql.ResultSet"%> <%@page import="java.sql.PreparedStatement"%> <%@page import="java.sql.DriverManager"%> <%@page import="java.sql.Connection"%> <%@page import="oracle.jdbc.driver.OracleDriver"%> <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>主页面
编号 | 用户名 | 密码 | 备注 | 操作 |
<%=rs.getInt(1) %> | <%=rs.getString("uname") %> | <%=rs.getString("upwd") %> | <%=rs.getString(4) %> | ">修改 ">详情 ">删除 |
<%@page import="java.sql.PreparedStatement"%> <%@page import="java.sql.DriverManager"%> <%@page import="java.sql.Connection"%> <%@page import="oracle.jdbc.driver.OracleDriver"%> <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <% //设置编码-设置请求对象的编号 request.setCharacterEncoding("utf-8"); //接收修改页面传递的数据 String uname = request.getParameter("uname"); String upwd = request.getParameter("upwd"); String uinfo = request.getParameter("uinfo"); //获取要修改的用户编号 String id = request.getParameter("uuid"); //把字符串转换为整数编号 int uuid = Integer.valueOf(id); //JDBC 删除 Class.forName("oracle.jdbc.driver.OracleDriver"); String url = "jdbc:oracle:thin:@localhost:1521:orcl"; Connection con = DriverManager.getConnection(url, "scott", "tiger"); PreparedStatement ps = con.prepareStatement("update T277 set uname=?,upwd=?, uinfo=? where uuid="+uuid); ps.setString(1, uname); ps.setString(2, upwd); ps.setString(3, uinfo); int i = ps.executeUpdate(); if(i>0){ out.print(""); }else{ out.print(""); } %>
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>Insert title here <% //获取要修改的用户编号 String id = request.getParameter("uuid"); //把字符串转换为整数编号 int uuid = Integer.valueOf(id); %>
<%@page import="java.sql.ResultSet"%> <%@page import="java.sql.PreparedStatement"%> <%@page import="java.sql.DriverManager"%> <%@page import="java.sql.Connection"%> <%@page import="oracle.jdbc.driver.OracleDriver"%> <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <% //获取要修改的用户编号 String id = request.getParameter("uuid"); //把字符串转换为整数编号 int uuid = Integer.valueOf(id); //JDBC 删除 Class.forName("oracle.jdbc.driver.OracleDriver"); String url = "jdbc:oracle:thin:@localhost:1521:orcl"; Connection con = DriverManager.getConnection(url, "scott", "tiger"); PreparedStatement ps = con.prepareStatement("select * from T277 where uuid="+uuid); ResultSet rs= ps.executeQuery(); if(rs.next()){ %><%} %>
<%@page import="java.sql.PreparedStatement"%> <%@page import="java.sql.DriverManager"%> <%@page import="java.sql.Connection"%> <%@page import="oracle.jdbc.driver.OracleDriver"%> <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <% //获取要删除的用户编号 String id = request.getParameter("uuid"); //把字符串转换为整数编号 int uuid = Integer.valueOf(id); //JDBC 删除 Class.forName("oracle.jdbc.driver.OracleDriver"); String url = "jdbc:oracle:thin:@localhost:1521:orcl"; Connection con = DriverManager.getConnection(url, "scott", "tiger"); PreparedStatement ps = con.prepareStatement("delete T277 where uuid="+uuid); int i = ps.executeUpdate(); if(i>0){ out.print(""); }else{ out.print(""); } %>
//假设法:假设我的用户名为admin 密码为123 if("admin".equals(name)&&"123".equals(pwd)){ //说明登录成功 跳转到success.jsp //1.重定向 将页面跳转 地址栏发生了改变 //不能将值传递到下一个界面 可以跳转到任意资源 在客户端发挥作用 response.sendRedirect("http://www.baidu.com"); //2.转发 将页面跳转 可以将值传递到下一个界面 //但是地址栏不发生改变 而是停留在了之前的页面 只能转发到当前项目内资源 在服务器端发挥作用 //request.getRequestDispatcher("http://www.baidu.com").forward(request, response); } else{ //说明登录失败 提示用户并返回登录界面login.jsp js的跳转属于重定向 地址栏发生了改变 login-->dologin-->login out.print(""); }
重定向:地址栏发生改变 不能传值 可以跳转到任意资源 在客户端发挥作用
转发:地址栏不发生改变 能传值 只能跳转到当前项目内资源 在服务器端发挥作用
语法:
重定向:response.sendR()
转发:request.getreq .for(request,response)
URL:jdbc:oracle:thin:@localhost:1521:orcl
request.setCharacterEncoding("utf-8");
//这里的代码是用来 得到最新编号的 int nextId=1;//做为新用户的编号 PreparedStatement ps = con.prepareStatement("select max(uuid) from T277"); //执行sql语句 ResultSet rs= ps.executeQuery(); if(rs.next()){ //查询到最大的编号,加1,就是新数据的编号 nextId = rs.getInt(1)+1; }