目录
一·登录注册代码以及效果
二·页面跳转的方式以及他们的区别
三·其他
一·登录注册代码以及效果
三·其他
一·登录注册代码以及效果
register.jsp:注册
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
注册
doregister.jsp:注册信息弹框
<%@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");
//这里的代码是用来 得到最新编号的
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("");
}
%>
login.jsp:登录
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
登录
dologin.jsp:与数据库相连、存放登陆的用户
<%@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("");
}
//关闭连接
%>
index.jsp:主界面
<%@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("");
}
%>
doup.jsp:修改页面(帮助)
<%@ 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);
%>
info.jsp:详情
<%@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()){
%>
<%} %>
dodel.jsp:删除界面
<%@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("");
}
%>
二·页面跳转的方式以及他们的区别
1.1、页面跳转方式1.2、跳转路径并传递数据
//假设法:假设我的用户名为admin 密码为123
一、页面跳转的两种方式和区别 重定向:地址栏发生改变 不能传值 可以跳转到任意资源 在客户端发挥作用
转发:地址栏不发生改变 能传值 只能跳转到当前项目内资源 在服务器端发挥作用 语法:
重定向:response.sendR() 转发:request.getreq .for(request,response)
三·其他 1、jdbc连接Oracle
URL:jdbc:oracle:thin:@localhost:1521:orcl 2、乱码
request.setCharacterEncoding("utf-8"); 3、添加数据时,获取最新编号 //这里的代码是用来 得到最新编号的
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;
}



