Servlet简易验证实例

利用Jdbc获取oracle数据库里面数据与用户在网页提交的数据进行匹配


一个超级简单的登陆页面 html写的

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <title>login.html</title>
	
    <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
    <meta http-equiv="description" content="this is my page">
    <meta http-equiv="content-type" content="text/html; charset=UTF-8">
    
    <!--<link rel="stylesheet" type="text/css" href="./styles.css">-->

  </head>
  
  <body>
   <form action="helloworld" name="form" method="get">
    用户名:<input type="text" name="username"/> <br>
    密码啊:<input type="password" name="psd"/> <br>
    <input type="submit" value="login"/>
    
  </form>
  </body>
</html>

java代码主要分两部分

part1连接数据库部分(oracle)

package com.wenming.dao;

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


public class dbcon {
	private static String driver="oracle.jdbc.driver.OracleDriver";
	private static String url="jdbc:oracle:thin:@127.0.0.1:1521:orcl";
	private static String name="sys as sysdba";
	private static String psd="wenming";
	private static PreparedStatement ps=null;
	private static Connection con=null;
	/**
	 * 获得连接对象
	 * @return
	 * @throws ClassNotFoundException
	 * @throws SQLException
	 */
	public static Connection getcon() throws ClassNotFoundException, SQLException{
		Class.forName(driver);
		
		con=DriverManager.getConnection(url, name, psd);
	
		return con;
		
	}
	/**
	 * 关闭数据库连接
	 * @throws SQLException
	 */
	void close() throws SQLException{
		if (con!=null) {
			con.close();
			con=null;
		}
	}
	
}

part2处理部分,该类需要继承httpservlet类

package com.wenming.test;

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 javax.servlet.ServletException;
import javax.servlet.ServletResponse;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import com.wenming.dao.dbcon;

public class helloworld extends HttpServlet {
	PreparedStatement ps=null;
	Connection connection=null;
	dbcon dbcon=null;
	ResultSet rs=null;
	String name=null;
	String psd=null;
	/**
	 * 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 {
		dbcon=new dbcon();
		PrintWriter out=response.getWriter();
		try {
			connection=dbcon.getcon();
			ps=connection.prepareStatement("select * from users");
			rs=ps.executeQuery();
			rs.next();
			name=rs.getString(2);
			psd=rs.getString(3);
			System.out.println(name);
			System.out.println(psd);
			rs.close();
		} catch (ClassNotFoundException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		String username=request.getParameter("username");
		String password=request.getParameter("psd");
		System.out.println(username);
		System.out.println(password);
		if (username.equals(name)&&psd.equals(password)) {
			out.println("success");
		}else {
			out.println("fail");
		}
		
	
	}

}



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Go语言(也称为Golang)是由Google开发的一种静态强类型、编译型的编程语言。它旨在成为一门简单、高效、安全和并发的编程语言,特别适用于构建高性能的服务器和分布式系统。以下是Go语言的一些主要特点和优势: 简洁性:Go语言的语法简单直观,易于学习和使用。它避免了复杂的语法特性,如继承、重载等,转而采用组合和接口来实现代码的复用和扩展。 高性能:Go语言具有出色的性能,可以媲美C和C++。它使用静态类型系统和编译型语言的优势,能够生成高效的机器码。 并发性:Go语言内置了对并发的支持,通过轻量级的goroutine和channel机制,可以轻松实现并发编程。这使得Go语言在构建高性能的服务器和分布式系统时具有天然的优势。 安全性:Go语言具有强大的类型系统和内存管理机制,能够减少运行时错误和内存泄漏等问题。它还支持编译时检查,可以在编译阶段就发现潜在的问题。 标准库:Go语言的标准库非常丰富,包含了大量的实用功能和工具,如网络编程、文件操作、加密解密等。这使得开发者可以更加专注于业务逻辑的实现,而无需花费太多时间在底层功能的实现上。 跨平台:Go语言支持多种操作系统和平台,包括Windows、Linux、macOS等。它使用统一的构建系统(如Go Modules),可以轻松地跨平台编译和运行代码。 开源和社区支持:Go语言是开源的,具有庞大的社区支持和丰富的资源。开发者可以通过社区获取帮助、分享经验和学习资料。 总之,Go语言是一种简单、高效、安全、并发的编程语言,特别适用于构建高性能的服务器和分布式系统。如果你正在寻找一种易于学习和使用的编程语言,并且需要处理大量的并发请求和数据,那么Go语言可能是一个不错的选择。
Go语言(也称为Golang)是由Google开发的一种静态强类型、编译型的编程语言。它旨在成为一门简单、高效、安全和并发的编程语言,特别适用于构建高性能的服务器和分布式系统。以下是Go语言的一些主要特点和优势: 简洁性:Go语言的语法简单直观,易于学习和使用。它避免了复杂的语法特性,如继承、重载等,转而采用组合和接口来实现代码的复用和扩展。 高性能:Go语言具有出色的性能,可以媲美C和C++。它使用静态类型系统和编译型语言的优势,能够生成高效的机器码。 并发性:Go语言内置了对并发的支持,通过轻量级的goroutine和channel机制,可以轻松实现并发编程。这使得Go语言在构建高性能的服务器和分布式系统时具有天然的优势。 安全性:Go语言具有强大的类型系统和内存管理机制,能够减少运行时错误和内存泄漏等问题。它还支持编译时检查,可以在编译阶段就发现潜在的问题。 标准库:Go语言的标准库非常丰富,包含了大量的实用功能和工具,如网络编程、文件操作、加密解密等。这使得开发者可以更加专注于业务逻辑的实现,而无需花费太多时间在底层功能的实现上。 跨平台:Go语言支持多种操作系统和平台,包括Windows、Linux、macOS等。它使用统一的构建系统(如Go Modules),可以轻松地跨平台编译和运行代码。 开源和社区支持:Go语言是开源的,具有庞大的社区支持和丰富的资源。开发者可以通过社区获取帮助、分享经验和学习资料。 总之,Go语言是一种简单、高效、安全、并发的编程语言,特别适用于构建高性能的服务器和分布式系统。如果你正在寻找一种易于学习和使用的编程语言,并且需要处理大量的并发请求和数据,那么Go语言可能是一个不错的选择。
好的,下面我给您提供一个简单的 Servlet 和 ECharts 词云实例,供您参考: 1. 首先,在 Java Web 项目中引入 ECharts 的相关 JavaScript 和 CSS 文件,可以在 JSP 页面中引入,例如: ```html <head> <meta charset="UTF-8"> <title>Servlet ECharts Word Cloud</title> <script src="https://cdn.bootcdn.net/ajax/libs/echarts/5.2.1/echarts.min.js"></script> </head> <body> <div id="wordcloud" style="width: 100%; height: 500px;"></div> <script src="wordcloud.js"></script> </body> ``` 这里使用了 ECharts 的 CDN 引入了 echarts.min.js 文件,同时在页面中定义了一个 div 容器,用于显示词云图表。另外,还引入了一个名为 wordcloud.js 的 JavaScript 文件,用于生成词云图表。 2. 接着,在 Servlet 中处理数据,可以使用以下代码从数据库中获取数据,并将其存储到 request 对象中: ```java protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // 从数据库中获取数据,这里仅作示例,实际情况可能需要根据具体需求进行调整 List<String> words = new ArrayList<>(); words.add("Java"); words.add("Python"); words.add("JavaScript"); words.add("HTML"); words.add("CSS"); words.add("Servlet"); words.add("JSP"); words.add("ECharts"); // 将数据存储到 request 对象中 request.setAttribute("words", words); // 转发到 JSP 页面 request.getRequestDispatcher("wordcloud.jsp").forward(request, response); } ``` 这里使用了 doGet() 方法获取数据,并将数据存储到名为 "words" 的属性中,然后将请求转发到 wordcloud.jsp 页面。 3. 最后,在 wordcloud.js 文件中使用 ECharts 生成词云,可以使用以下代码: ```javascript var chart = echarts.init(document.getElementById('wordcloud')); // 从 request 对象中获取数据 var words = '${requestScope.words}'; // 构造词云数据 var data = []; for (var i = 0; i < words.length; i++) { data.push({ name: words[i], value: Math.random() * 100 }); } // 定义词云配置项 var option = { series: [{ type: 'wordCloud', shape: 'circle', gridSize: 20, sizeRange: [12, 50], rotationRange: [-90, 90], textStyle: { normal: { color: function() { return 'rgb(' + [ Math.round(Math.random() * 160), Math.round(Math.random() * 160), Math.round(Math.random() * 160) ].join(',') + ')'; } } }, data: data }] }; // 使用配置项生成词云图表 chart.setOption(option); ``` 这里使用了 echarts.init() 方法初始化了 ECharts 实例,并从 request 对象中获取了数据。然后根据数据构造了词云数据,并定义了词云的配置项。最后,使用 setOption() 方法生成了词云图表。 希望以上实例能够对您有所帮助。如果您有其他问题或需要进一步的帮助,可以随时向我提问。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值