OpenLayers学习笔记7——使用javaBean实现用户登录

来源:互联网 发布:教练技术 知乎 编辑:程序博客网 时间:2024/05/17 21:37

之前的开发是采用phpStorm,前端:html+css+javascript+jquery,服务器端:php;但是这个前后台交互要通过ajax来实现数据交互,中间遇到了跨域的问题,卡了两天虽然解决了但是后面部署的话会比较麻烦。正好最近老板让我接手之前另一个项目开发的软件,是用jsp写的,一开始我是拒绝的,后来借了一本jsp的书,用一天的时间快速读了下,觉得这个开发部署要方便很多,于是就把之前的代码全部改成了jsp的。开发环境网上搜一搜都有的,我采用的是myEclipse+Tomcat;废话不多说,这里就记录下使用JavaBean实现用户登录。

UserBean代码:

/** *  */package edu.whu.vge.util;public class UserBean {private String username;private String password;private boolean logined = false;/** * @return the username */public String getUsername() {return username;}/** * @param username *            the username to set */public void setUsername(String username) {this.username = username;}/** * @return the password */public String getPassword() {return password;}/** * @param password *            the password to set */public void setPassword(String password) {this.password = password;}/** * @return the logined */public boolean isLogined() {return logined;}/** * @param logined *            the logined to set */public void setLogined(boolean logined) {this.logined = logined;}}
DBBean代码:

/** *  */package edu.whu.vge.util;import java.sql.Connection;import java.sql.DriverManager;import java.sql.ResultSet;import java.sql.SQLException;import java.sql.PreparedStatement;public class DBBean {private Connection connection;private PreparedStatement pstat;private ResultSet reSet;public DBBean() {// TODO Auto-generated constructor stub}// 获取数据库连接public Connection getConnection() throws ClassNotFoundException {try {Class.forName("com.mysql.jdbc.Driver");String url = "jdbc:mysql://localhost:3306/userinfo?user=root&password=root";connection = DriverManager.getConnection(url);} catch (SQLException e) {// TODO Auto-generated catch blocke.printStackTrace();}return connection;}// 执行数据库查询并返回表public ResultSet query(String sql) throws SQLException,ClassNotFoundException {connection = getConnection();pstat = connection.prepareStatement(sql);reSet = pstat.executeQuery();return reSet;}// 关闭数据库连接public void close() throws SQLException {if (reSet != null) {reSet.close();}if (pstat != null) {pstat.close();}if (connection != null) {connection.close();}}}

chkUser.jsp

<%@ page language="java" import="java.util.*"contentType="text/html; charset=gb2312" pageEncoding="gb2312"%><%@ page import="java.sql.*"%><%@ page import="edu.whu.vge.util.DBBean"%><%@ page import="edu.whu.vge.util.UserBean"%><%--使用javaBean连接数据库实现用户登录 --%><jsp:useBean id="user" scope="session" class="edu.whu.vge.util.UserBean"></jsp:useBean><jsp:useBean id="mysqlDB" class="edu.whu.vge.util.DBBean"></jsp:useBean><jsp:setProperty property="*" name="user" /><%String username = new String(user.getUsername().getBytes("ISO-8859-1"), "GB2312");String password = user.getPassword();String sql = "select * from users where name='" + username+ "' and password='" + password + "'";ResultSet resultSet = mysqlDB.query(sql);if (resultSet.next()) {%><script type="text/javascript">window.location.href = "index.jsp";</script><%} else {%><<script type="text/javascript">alert("用户名或密码错误,请核实!!!");window.location.href = "login.jsp";</script><%}%>
这里的登录验证是与mysql中存储的用户信息,验证成功的话则采用javascript跳转的主界面,否则提示停留在登录界面。jsp的跳转方式参见博客:JSP页面跳转的几种实现方法   。这里还有一个需要注意的问题就是,当用户名为中文时,会出现乱码导致验证不成功,需要进行转码:

String username = new String(user.getUsername().getBytes("ISO-8859-1"), "GB2312");

login.jsp代码:

<body><div class="login_bj"><div class="login_mian"><form id="form1" name="form1" action="chkUser.jsp" method="post"><table cellpadding="0" cellspacing="0" border="0"class="login_table"><tr><th>用户名</th><td><input type="text" class="login_int" id="username"name="username" value="" /></td></tr><tr><th>密码</th><td><input type="password" class="login_int" id="password"name="password" value="" /></td></tr><tr><th></th><td><input type="button" class="btn_login"onclick="doSubmit();" /></td></tr></table></form><div class="footer" align="left"><span>Copyright @ 2015 武汉大学</span></div></div></div><div id="dialog-username"><p class="alert-message">请输入用户名!</p></div><div id="dialog-password"><p class="alert-message">请输入密码!</p></div></body>
mysql数据库:

登录界面:


成功登录后界面:


初学jsp很多方面都还不懂,以练带学是很有效的方法,实现了简单的用户登录之后,下一步就是从数据库查询poi进行标注显示了,先设计一个好的用户交互方式,在使用JavaBean封装业务逻辑


1 0
原创粉丝点击