首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > Web前端 >

JavaWeb快速入门8(后附源码)

2012-10-13 
JavaWeb快速入门八(后附源码)优化package util?import java.sql.Connectionimport java.sql.DriverManag

JavaWeb快速入门八(后附源码)
优化

package util;

?

import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.ResultSet;

import java.sql.SQLException;

import java.sql.Statement;

?

public class JdbcUtils {

?

??? //mysql数据库连接协议;mytest为数据库名称

??? private static String url = "jdbc:mysql://localhost:3306/mytest";

??? private static String user = "root";//mysql数据库用户名

??? private static String password = "root";//mysql的密码

?

??? private JdbcUtils() {

??? }

?

??? // 加载驱动类

??? static {

?????? try {

?????????? Class.forName("com.mysql.jdbc.Driver");

?????? } catch (ClassNotFoundException e) {

?????????? throw new ExceptionInInitializerError(e);

?????? }

??? }

?

??? // 得到连接

??? public static? ConnectiongetConnection() throws SQLException {

?????? return DriverManager.getConnection(url, user, password);

??? }

?

??? // 释放资源

??? public static void free(ResultSet rs, Statement st, Connection conn) {

?????? try {

?????????? if (rs != null) {

????????????? rs.close();

?????????? }

?????? } catch (SQLException e) {

?????????? e.printStackTrace();

?????? } finally {

?????????? try {

????????????? if (st != null) {

????????????????? st.close();

????????????? }

?????????? } catch (SQLException e) {

????????????? e.printStackTrace();

?????????? } finally {

????????????? try {

????????????????? if (conn != null) {

???????????????????? conn.close();

????????????????? }

????????????? } catch (SQLException e) {

????????????????? e.printStackTrace();

????????????? }

?????????? }

?????? }

??? }

}

?

package servlet;

?

import java.io.IOException;

import java.sql.Connection;

import java.sql.PreparedStatement;

import java.sql.ResultSet;

import java.sql.SQLException;

?

import javax.servlet.ServletException;

import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

?

import util.JdbcUtils;

?

public class LoginServlet extends HttpServlet {

?

??? public void doGet(HttpServletRequest request, HttpServletResponseresponse)

?????????? throws ServletException, IOException {

?????? doPost(request,response);

??? }

?

??? public void doPost(HttpServletRequest request, HttpServletResponseresponse)

?????????? throws ServletException, IOException {

?????? String registerName = request.getParameter("name");

?????? String registerPassword = request.getParameter("password");

??????

?????? Connection conn = null;

?????? PreparedStatement ps = null;

?????? ResultSet rs = null;

?????? try {

?????????? conn = JdbcUtils.getConnection();

?????????? String sql = "selectname,password from user where name=? and password=?";

?????????? ps = conn.prepareStatement(sql);

?????????? ps.setString(1, registerName);

?????????? ps.setString(2, registerPassword);

?????????? rs = ps.executeQuery();

?????????? if(rs.next()){

????????????? String name = rs.getString(1);

????????????? String password = rs.getString(2);

????????????? System.out.println(name+password);

??? ?????????? request.setAttribute("name", name);// 将从数据库获得名字和密码set到request对象里

????????????? request.setAttribute("password", password);

????????????? request.getRequestDispatcher("/login_success.jsp").forward(request,response);

?????????? }else{

????????????? request.getRequestDispatcher("/login_fail.jsp").forward(request,response);

?????????? }

??????????

?????? } catch (SQLException e) {

?????????? e.printStackTrace();

?????? }finally{

?????????? JdbcUtils.free(rs, ps, conn);

?????? }

??? }

?

}

<%@ page language="java"import="java.util.*" pageEncoding="UTF-8"%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTDHTML 4.01 Transitional//EN">

<html>

? <head>

? </head>

? <body>

??? <form action="servlet/LoginServlet"method="post">

??? Plasewrite your name and password!<br/>

??? name:<input type="text" name="name"/><br/>

??? password:<input type="password" name="password"/>

??? <input type="submit" value="login"/>

??? </form>

? </body>

<%@ page language="java"import="java.util.*" pageEncoding="UTF-8"%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTDHTML 4.01 Transitional//EN">

<html>

? <body>

??? <font color="red">login success!</font><br/>

??? <font color="blue">Your name is :</font><%=request.getAttribute("name") %><br/>

??? <font color="blue">Your password is :</font><%=request.getAttribute("password") %>

? </body>

</html>

<%@ page language="java"import="java.util.*" pageEncoding="UTF-8"%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTDHTML 4.01 Transitional//EN">

<html>

? <body>

??? <font color="red">login fail!</font><br/>

? </body>

</html>

?

测试地址:http://localhost:8080/test2/login.jsp

?

热点排行