登录 注册 servlet基础

工具类 页面与数据库的交换

package org.lizhenhua.util;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;

public class DBHelper {
	static {
		try {
			Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
		} catch (ClassNotFoundException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}

	}

	public static Connection getconn() {
		Connection conn = null;

		try {
			conn = DriverManager.getConnection(
					"jdbc:sqlserver://localhost:1433;databaseName=school",
					"sa", "1");
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}

		return conn;

	}
  public static void close(Connection conn, PreparedStatement ps ,ResultSet rs){
	  try {
		  if(conn!=null)
		conn.close();
	} catch (SQLException e) {
		// TODO Auto-generated catch block
		e.printStackTrace();
	}
	 try {
		  if(ps!=null)
		ps.close();
	} catch (SQLException e) {
		// TODO Auto-generated catch block
		e.printStackTrace();
	}
	 try {
		  if(conn!=null)
		ps.close();
	} catch (SQLException e) {
		// TODO Auto-generated catch block
		e.printStackTrace();
	}
  }
}

注册页面

package org.lizhenhua.service;

import java.io.IOException;
import java.io.PrintWriter;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.SQLException;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.lizhenhua.util.DBHelper;

public class TestServlet extends HttpServlet {

	public void doGet(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {
		request.setCharacterEncoding("utf-8");
		response.setCharacterEncoding("utf-8");

		Connection conn = null;
		conn = DBHelper.getconn();
		PreparedStatement ps = null;

		Boolean isTure = false;

		String userName = request.getParameter("username");
		String pwd = request.getParameter("pwd");
		Integer age = Integer.parseInt(request.getParameter("age"));

		String sql = "insert into Student  values (?,?,?)";
		try {
			ps = conn.prepareStatement(sql);

			ps.setString(1, userName);
			ps.setString(2, pwd);
			ps.setInt(3, age);

			int count = ps.executeUpdate();

			if (count > 0) {
				isTure = true;
			} else {
				isTure = false;
			}
			DBHelper.close(conn, ps, null);
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}

		response.setContentType("text/html");
		PrintWriter out = response.getWriter();
		out
				.println("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\">");
		out.println("<HTML>");
		out.println("  <HEAD><TITLE>A Servlet</TITLE></HEAD>");
		out.println("  <BODY>");
		if (isTure) {
			out.println("插入成功");
		
		}else{
			out.println("插入失败");
		}
		out.println("  </BODY>");
		out.println("</HTML>");
		out.flush();
		out.close();
	}

	/**
	 * The doPost method of the servlet. <br>
	 * 
	 * This method is called when a form has its tag value method equals to
	 * post.
	 * 
	 * @param request
	 *            the request send by the client to the server
	 * @param response
	 *            the response send by the server to the client
	 * @throws ServletException
	 *             if an error occurred
	 * @throws IOException
	 *             if an error occurred
	 */
	public  void doPost(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {
		Operate op = new Operate();

		request.setCharacterEncoding("utf-8");
		response.setCharacterEncoding("utf-8");

		Connection conn = null;
		conn = DBHelper.getconn();
		PreparedStatement ps = null;

		Boolean isTure = false;

		String userName = request.getParameter("username");
		String pwd = request.getParameter("pwd");
		Integer age = Integer.parseInt(request.getParameter("age"));

		String sql = "insert into Student  values (?,?,?)";
		try {
			ps = conn.prepareStatement(sql);

			ps.setString(1, userName);
			ps.setString(2, pwd);
			ps.setInt(3, age);

			int count = ps.executeUpdate();

			if (count > 0) {
				isTure = true;
			} else {
				isTure = false;
			}
			DBHelper.close(conn, ps, null);
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}

		response.setContentType("text/html");
		PrintWriter out = response.getWriter();
		out
				.println("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\">");
		out.println("<HTML>");
		out.println("  <HEAD><TITLE>A Servlet</TITLE></HEAD>");
		out.println("  <BODY>");
		if (isTure) {
			out.println("插入成功");
			
		}else{
			out.println("插入失败");
		}
		out.println("  </BODY>");
		out.println("</HTML>");
		out.flush();
		out.close();
	}

	/**
	 * Initialization of the servlet. <br>
	 * 
	 * @throws ServletException
	 *             if an error occurs
	 */

}

登录页面

package org.lizhenhua.service;

import java.io.IOException;
import java.io.PrintWriter;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.lizhenhua.model.Student;
import org.lizhenhua.util.DBHelper;

public class LoginTest extends HttpServlet {

	/**
	 * The doGet method of the servlet. <br>
	 * 
	 * This method is called when a form has its tag value method equals to get.
	 * 
	 * @param request
	 *            the request send by the client to the server
	 * @param response
	 *            the response send by the server to the client
	 * @throws ServletException
	 *             if an error occurred
	 * @throws IOException
	 *             if an error occurred
	 */
	public void doGet(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {
		// 中文编码
		request.setCharacterEncoding("utf-8");
		response.setCharacterEncoding("utf-8");
     
		Connection conn = null;
		conn = DBHelper.getconn();
		PreparedStatement ps = null;

		Boolean isTure = false;
   //  获取页面值
		String userName = request.getParameter("username");
		String pwd = request.getParameter("pwd");

		String sql = "select * from Student where user_name=?  and pwd=?  ";

		response.setContentType("text/html");
		PrintWriter out = response.getWriter();
		out
				.println("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\">");
		out.println("<HTML>");
		out.println("  <HEAD><TITLE>A Servlet</TITLE></HEAD>");
		out.println("  <BODY>");
		try {
			ps = conn.prepareStatement(sql);
			ps.setString(1, userName);
			ps.setString(2, pwd);
			ResultSet rs = ps.executeQuery();
			//设置一个数组
			ArrayList<Student> stuList = new ArrayList<Student>();
			while (rs.next()) {
				//  把页面信息储存道model里面
				Student stu = new Student();
				stu.setId(rs.getInt("id"));
				stu.setUserName(rs.getString("user_name"));
				stu.setPwd(rs.getString("pwd"));
				stu.setAge(rs.getInt("age"));
				// 把信息打包带走
				stuList.add(stu);
			}
			
			//  循环输出
			for(Student stu : stuList){
				out.println(stu.toString());
				out.println("\n");
			}
			
			DBHelper.close(conn, ps, rs);
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}

		out.println("  </BODY>");
		out.println("</HTML>");
		out.flush();
		out.close();
	}

	/**
	 * The doPost method of the servlet. <br>
	 * 
	 * This method is called when a form has its tag value method equals to
	 * post.
	 * 
	 * @param request
	 *            the request send by the client to the server
	 * @param response
	 *            the response send by the server to the client
	 * @throws ServletException
	 *             if an error occurred
	 * @throws IOException
	 *             if an error occurred
	 */
	public void doPost(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {
		// 中文编码
		request.setCharacterEncoding("utf-8");
		response.setCharacterEncoding("utf-8");
     
		Connection conn = null;
		conn = DBHelper.getconn();
		PreparedStatement ps = null;

		Boolean isTure = false;
   //  获取页面值
		String userName = request.getParameter("username");
		String pwd = request.getParameter("pwd");

		String sql = "select * from Student  ";

		response.setContentType("text/html");
		PrintWriter out = response.getWriter();
		out
				.println("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\">");
		out.println("<HTML>");
		out.println("  <HEAD><TITLE>A Servlet</TITLE></HEAD>");
		out.println("  <BODY>");
		try {
			ps = conn.prepareStatement(sql);
			ResultSet rs = ps.executeQuery();
			//设置一个数组
			ArrayList<Student> stuList = new ArrayList<Student>();
			while (rs.next()) {
				//  把页面信息储存道model里面
				Student stu = new Student();
				stu.setId(rs.getInt("id"));
				stu.setUserName(rs.getString("user_name"));
				stu.setPwd(rs.getString("pwd"));
				stu.setAge(rs.getInt("age"));
				// 把信息打包带走
				stuList.add(stu);
			}
			if(isTrue){
			//  循环输出
			for(Student stu : stuList){
				out.println(stu.toString());
				out.println("\n");
			}
			
			DBHelper.close(conn, ps, rs);
		}else{
		out.println("插入失败");
}} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}

		out.println("  </BODY>");
		out.println("</HTML>");
		out.flush();
		out.close();
	}

}

web.xml代码

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5" 
	xmlns="http://java.sun.com/xml/ns/javaee" 
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
	xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 
	http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
  <servlet>
    <description>This is the description of my J2EE component</description>
    <display-name>This is the display name of my J2EE component</display-name>
    <servlet-name>testServlet</servlet-name>
    <servlet-class>org.lizhenhua.service.TestServlet</servlet-class>
  </servlet>
  <servlet>
    <description>This is the description of my J2EE component</description>
    <display-name>This is the display name of my J2EE component</display-name>
    <servlet-name>Login</servlet-name>
    <servlet-class>org.lizhenhua.service.LoginTest</servlet-class>
  </servlet>


  <servlet-mapping>
    <servlet-name>testServlet</servlet-name>
    <url-pattern>/testServlet</url-pattern>
  </servlet-mapping>
  <servlet-mapping>
    <servlet-name>Login</servlet-name>
    <url-pattern>/Login</url-pattern>
  </servlet-mapping>
  <welcome-file-list>
    <welcome-file>index.jsp</welcome-file>
  </welcome-file-list>
</web-app>

index.jsp代码

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%
	String path = request.getContextPath();
	String basePath = request.getScheme() + "://"
			+ request.getServerName() + ":" + request.getServerPort()
			+ path + "/";
%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
	<head>
		<base href="<%=basePath%>">

		<title>My JSP 'index.jsp' starting page</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>
		<form action="testServlet" method="post">
			用户名:
			<input type="text" name="username" /><br/>
			密码:
			<input type="password" name="pwd" /><br/>
			年龄:
			<input type="text" name="age" /><br/>
			<input type="submit" value="注册" />
		</form>
		
		<form action="Login" method="post">
			用户名:
			<input type="text" name="username" /><br/>
			密码:
			<input type="password" name="pwd" /><br/>
			
			<input type="submit" value="登录" />
		</form>
	</body>
</html>


关于页面的跳转

//jsp文件里面添加
<a href="">还没有账号注册<a>  --"里面填写你的jsp文件  例如  index.jsp"
//java代码里面添加
在body里面
response.sendRedirect("");"里面填写你的jsp文件  例如  index.jsp"

关于jsp文件

加载src下面的包
import=“org.lizhenhua.util."
加载sql可以直接使用 Connection 等 s
import="java.sql.

<body>
		<!-- 这是注释   客户端通过f12可以查到 -->
		<%-- 这也是注释客户端通过f12看不到注释 --%>
		<table border="1px solid red">
		<tr><th>编号</th><th>用户名</th> <th>密码</th></tr>
			<%
				

				Connection conn = null;
				PreparedStatement ps = null;
				conn = DBHelper.getconn();
				String sql = "select * from Student";
				ps = conn.prepareStatement(sql);
				ResultSet rs = null;
				rs = ps.executeQuery();
				try {
					while (rs.next()) {
			%>

			<tr>
				<td>
				<!-- 表达式输出  java 的值    以表格的形式输出 数据库列名下面的值-->
				<%=rs.getInt("id")%></td>
				<%=rs.getString("user_name")%></td>
				<%=rs.getString("pwd")%></td>
				</td>
			</tr>

			<%
				}
				} catch (SQLException e) {

				}
			%>
		</table>
		
	

	</body>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值