连接oracle数据库,新建用户登录界面
一.下載jar包
下載oracle驅動包:ojdbc6.jar,放于如下位置:
測試代碼:
運行成功就算連接成功了,之后就可以操作數據庫了。
參考地址:https://blog.csdn.net/he__xu/article/details/83410966
jar包下載鏈接:https://pan.baidu.com/s/1j2lV7uJWsgmW0yym9j8jHw 提取碼:0mqk
二、使用spring框架:
1.需要下載:
commons-dbcp jar包:
下載地址:http://commons.apache.org/proper/commons-dbcp/download_dbcp.cgi
鏈接:https://pan.baidu.com/s/1BsbXz1FG4FQi4-ZSIWnYhQ 提取碼:d3uo
commons-pool jar包:
下載地址:http://commons.apache.org/proper/commons-pool/download_pool.cgi
鏈接:https://pan.baidu.com/s/1LTK2WQ1CIsIglYqVZBr6ig 提取碼:38v8
鏈接:https://pan.baidu.com/s/1O6cI7FOtlMYyzzYDX4phcQ 提取碼:b3sn
2.web.xml配置:
<!--配置數據源 --><bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"><property name="driverClassName" value="oracle.jdbc.driver.OracleDriver"/><property name="url" value="jdbc:oracle:thin:@localhost:1521:orcl"/><property name="username" value="test123"/><property name="password" value="qwer1234"/><!-- 連接池啟動時的初始值 --><property name="initialSize" value="3" /><!-- 連接池的最大值 --><property name="maxActive" value="300" /><!-- 最大空閑值.當經過一個高峰時間后,連接池可以慢慢將已經用不到的連接慢慢釋放一部分,一直減少到maxIdle為止 --><property name="maxIdle" value="2" /><!-- 最小空閑值.當空閑的連接數少于閥值時,連接池就會預申請去一些連接,以免洪峰來時來不及申請 --><property name="minIdle" value="1" /><!-- end --> </bean>3.測試代碼:
@Testpublic void test() {ApplicationContext ctx = new ClassPathXmlApplicationContext("resource/applicationContext.xml");}備注:如果有以下報錯:
警告: Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dataSource': Failed to introspect bean class [org.apache.commons.dbcp.BasicDataSource] for lookup method metadata: could not find class that it depends on; nested exception is java.lang.NoClassDefFoundError: org/apache/commons/pool/ObjectPool
可以把commons-pool2-2.4.3.jar需要換成commons-pool-1.6.jar
三、調用測試:
代碼:
public void test() {ApplicationContext ctx = new ClassPathXmlApplicationContext("resource/applicationContext.xml");BasicDataSource dataSource = (BasicDataSource) ctx.getBean("dataSource"); }
解決:在aop后面添加一個屬性:proxy-target-class="true"
測試通過后直接試著調用一下
代碼:
其中用戶表:
結果:
四、使用配置文件
1.jdbc.properties:
jdbc.driver=oracle.jdbc.driver.OracleDriver jdbc.url=jdbc:oracle:thin:@localhost:1521:orcl jdbc.username=test123 jdbc.password=qwer12342.web.xml改為:
<bean id="propertyConfigurer" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"> <property name="locations"> <list> <value>classpath:resource/jdbc.properties</value> </list> </property> </bean> <!--配置數據源 --><bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close"><property name="driverClassName" value="${jdbc.driver}"/><property name="url" value="${jdbc.url}"/><property name="username" value="${jdbc.username}"/><property name="password" value="${jdbc.password}"/><!-- 連接池啟動時的初始值 --><property name="initialSize" value="3" /><!-- 連接池的最大值 --><property name="maxActive" value="300" /><!-- 最大空閑值.當經過一個高峰時間后,連接池可以慢慢將已經用不到的連接慢慢釋放一部分,一直減少到maxIdle為止 --><property name="maxIdle" value="2" /><!-- 最小空閑值.當空閑的連接數少于閥值時,連接池就會預申請去一些連接,以免洪峰來時來不及申請 --><property name="minIdle" value="1" /><!-- end --> </bean>這樣就可以了。
五、簡單的用戶登錄
1.登錄界面login.jsp:
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%><!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>一二零叁的網站</title> <script type="text/javascript"> function zhuce(){alert("跳轉到注冊界面......"); } </script> </head> <body><center><h1 style="color:#7D26CD">登錄</h1><hr style="width:85%"><form id="indexform" name="indexForm" action="logincheck.jsp"method="post"><table border="0"><tr><td>賬號:</td><td colspan="2"><input type="text" name="username"></td></tr><tr><td>密碼:</td><td colspan="2"><input type="password" name="password"></td></tr><tr><td colspan="3" align="center"><br> <input type="submit" value="登錄" style="color:#BC8F8F"> <input type="button" onclick="zhuce()" value="注冊" style="color:#BC8F8F"></td></tr></table></form></center> </body> </html>2.登錄驗證:logincheck.jsp:
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%> <%@ page import="java.lang.*"%> <%@ page import="com.service.Login"%> <%@ page import="net.sf.json.JSONObject"%><%try {request.setCharacterEncoding("UTF-8");String username = (String) request.getParameter("username");String password = (String) request.getParameter("password");//取出login.jsp的值Login login = new Login();JSONObject loginResult = login.checkLogin(username, password);if (1 == loginResult.getInt("status")) {response.sendRedirect("../IndexServlet");} else {out.print("<script language='javaScript'> alert('"+ loginResult.getString("msg") + "');</script>");response.setHeader("refresh", "0;url=login.jsp");}} catch (Exception e) {e.printStackTrace();} %>3.用戶驗證Login.java:
package com.service;import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException;import net.sf.json.JSONObject;import org.apache.commons.dbcp.BasicDataSource; import org.springframework.context.ApplicationContext; import org.springframework.context.support.ClassPathXmlApplicationContext;public class Login {public JSONObject checkLogin(String username,String password){JSONObject result = new JSONObject();ApplicationContext ctx = new ClassPathXmlApplicationContext("resource/applicationContext.xml");BasicDataSource dataSource = (BasicDataSource) ctx.getBean("dataSource");PreparedStatement ps =null;try {// 1、獲取連接對象Connection conn = dataSource.getConnection();// 2、創建statement類對象,用來執行SQL語句!!ps = conn.prepareStatement("select password,enabled from sys_user where user_name = ? ");// 3、創建sql查詢語句ps.setString(1, username);// 4、執行sql語句并且換回一個查詢的結果集ResultSet rs = ps.executeQuery();if (rs.next()) { // 有查詢結果if(!password.equals(rs.getString("password"))){result.put("status", "3");result.put("msg", "密碼錯誤");} else if(1!=rs.getInt("enabled")){result.put("status", "4");result.put("msg", "改賬號不允許登錄");} else {result.put("status", "1");result.put("msg", "允許登錄");}} else {result.put("status", "2");result.put("msg", "不存在該賬號");}} catch (SQLException e) {e.printStackTrace();}return result;}}4.結果:
登錄界面:
登錄失敗:
登錄成功:
轉載于:https://www.cnblogs.com/GodSince/p/11242662.html
總結
以上是生活随笔為你收集整理的连接oracle数据库,新建用户登录界面的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: cisco firewall (ASA
- 下一篇: linux cmake编译源码,linu