JAVA LOGIN 语法

Python066

JAVA LOGIN 语法,第1张

<%@ page language="java" pageEncoding="GBK"%>

<%@ 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

这个没关系的,别的都可以照搬来用