<%@ page import="com.sessionloading.*" %>
<%@ page import="com.function.*" %>
<%@page import="com.news.form.TongziForm"%>
<%@page import="com.news.bean.TongziBean"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title><%=session.getAttribute("govtitle")%>
</title> <meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
--></head>
<body>
<%//session 的二次赋值,解决session 丢失
String number1 = StrdesUnit.decrypt(request.getParameter("u1"))//用户编号、用户编码
String type = StrdesUnit.decrypt(request.getParameter("u2"))//登陆用户类型代理机构、管理处
String username = StrdesUnit.decrypt(request.getParameter("u3"))//登陆用户名称代理机构、管理处
session.setAttribute(SessionFactory.username,username)
session.setAttribute(SessionFactory.userid,number1)
session.setAttribute(SessionFactory.usertype,type)
//String avc="001"
//System.out.println(Counter.urlencoder(avc))
// number1=number1.toLowerCase()
TongziForm tForm=new TongziForm()
tForm.setZu_id(number1)
tForm.setZu_type(session.getAttribute("usertype").toString())
TongziBean tBean=new TongziBean()
tBean.listShowTz(tForm,request,"")
//加密参数
//new MainManager().getnumber()
//Counter.urldecoder(Counter.urlencoder(avc))//解密参数
//new MainManager().getnumber()
if(type.equals("002") ||type.equals("001")){ out.write("<script>var i=screen.availWidth-1000if(i>0){i=i/2}else{i=0} var y=screen.availHeight-700if(y>10){y=y/2-5}else{y=0}var nav=navigator.appVersionwindow.opener=nullwindow.open('govstart.jsp','fourBase','width=1000px,height=700px,left='+i+',top='+y+',toolbar=no,menubar=no,scrollbars=yes,resizable=no,location=no,status=yes,hotkeys=no')window.open('','_parent','')window.close()</script>")
//left=0px,top=0px,width=1024px,height=700px,toolbar=no,menubar=no,Resizable=yes,scrollbars=yes, status=no
}else{
out.write("<script>alert('提示:请从正常途径登录本系统!')top.close()</script>")
}%>
</body>
</html>
jsp也是Java的一种,login.jsp是服务器通过servlet解析后输出给用户看的动态页面,login.java就是普通的java文件。当然也可以输出hmtl代码展示给用户看。第一步:创建一个查询过程,因为在登录时要根据用户名查询用户密码此步要用到pl/sql编程知识,代码如下:
create or replace procedure sel_user(uname in varchar2,pass out varchar2) is
begin
select users.password into pass from users where users.username=uname and rownum = 1
end
第二步:编写登录页面(login.java)(采用纯java+servlet编写)
//login.java如下
package cn.hnu
import java.io.IOException
import java.io.PrintWriter
import javax.servlet.ServletException
import javax.servlet.http.HttpServlet
import javax.servlet.http.HttpServletRequest
import javax.servlet.http.HttpServletResponse
public class testhtml extends HttpServlet {
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
resp.setContentType("text/htmlcharset=gbk")
try {
PrintWriter pw = resp.getWriter()
pw.println("<html>")
pw.println("<head>")
pw.println("<title>")
pw.println("用户登录")
pw.println("</title>")
pw.println("</head>")
pw.println("<body>")
pw.println("<h1>用户登录</h1>")
pw.println("<hr>")
pw.println("<form method=post action=loginCl>")
pw.println("用户名:<input type=text name=userName><br>")
pw.println("密&nbsp&nbsp码:<input type=password name=password><br>")
pw.println("<input type=submit value=登录>")
pw.println("<input type=reset value=重置>")
pw.println("</form>")
pw.println("</body>")
pw.println("</html>")
} catch (Exception e) {
e.printStackTrace()
// TODO: handle exception
}
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
// TODO Auto-generated method stub
this.doGet(req, resp)
}
}
第三步:编程成功登录页面(wel.java) //wel.java如下,它主要用于用户正常登录后显示信息给用户
package cn.hnu
import java.io.IOException
import java.io.PrintWriter
import javax.servlet.ServletException
import javax.servlet.http.HttpServlet
import javax.servlet.http.HttpServletRequest
import javax.servlet.http.HttpServletResponse
import javax.servlet.http.HttpSession
public class Wel extends HttpServlet {
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
// TODO Auto-generated method stub
//防止用户非法登录
HttpSession hs = req.getSession()
String s = (String)hs.getAttribute("pass")
if(s == null){
resp.sendRedirect("login")
}
PrintWriter pw = resp.getWriter()
pw.write("welcome,hello")
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
// TODO Auto-generated method stub
this.doGet(req, resp)
}
}
第四步:编写login处理页面(loginCl.java)
package cn.hnu
import java.io.IOException
import java.sql.*
import javax.servlet.ServletException
import javax.servlet.http.HttpServlet
import javax.servlet.http.HttpServletRequest
import javax.servlet.http.HttpServletResponse
import javax.servlet.http.HttpSession
public class loginCl extends HttpServlet {
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
// TODO Auto-generated method stub
String u = req.getParameter("userName")
String p = req.getParameter("password")
//查询数据库
String pa=null
Connection ct = null
CallableStatement cs = null
try {
Class.forName("oracle.jdbc.driver.OracleDriver")
ct = DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:oracle",
"scott", "tiger")
cs = ct.prepareCall("{call sel_user(?,?)}")
cs.setString(1, u)
cs.registerOutParameter(2, oracle.jdbc.OracleTypes.VARCHAR)
cs.execute()
pa = cs.getString(2)
System.out.println("u=" + u + " p=" + pa)
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace()
} finally {
try {
if (cs != null) {
cs.close()
}
if (ct != null) {
ct.close()
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace()
}
}
//验证用户信息是否合法
if (p.equals(pa)) {
HttpSession hs = req.getSession(true)//防止用户非法登录
hs.setAttribute("pass", "OK")
resp.sendRedirect("wel")
} else {
resp.sendRedirect("login")
}
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
// TODO Auto-generated method stub
this.doGet(req, resp)
}
}
亲,sql可以换成MySQL
这个没关系的,别的都可以照搬来用